So I am a NOOB to RT, and it has been a few years since I compiled a kernel
I am trying to compile PREEMPT RT for NanoPi NEO 2 (H5) or NanoPi NEO AIR (H3).
Do I need to
(1) rename 30-real-time143-full-plus-rt-fixes.patch.disabled
AND
(2) extract patches-4.14.52-rt34.tar.gz into userpatches ?
Using just option (1) I don't get a modified kernel .config file, so cannot select Fully Preemptive.
I have modified config-default.conf. KERNEL_ONLY, KERNEL_CONFIGURE and KERNEL_KEEP_CONFIG are all "yes"
config-default.conf:
# Read build script documentation http://www.armbian.com/using-armbian-tools/
# for detailed explanation of these options and for additional options not listed here
KERNEL_ONLY="yes" # leave empty to select each time, set to "yes" or "no" to skip dialog prompt
KERNEL_CONFIGURE="yes" # leave empty to select each time, set to "yes" or "no" to skip dialog prompt
CLEAN_LEVEL="make,debs,oldcache" # comma-separated list of clean targets: "make" = make clean for selected kernel and u-boot,
# "debs" = delete packages in "./output/debs" for current branch and family,
# "alldebs" = delete all packages in "./output/debs", "images" = delete "./output/images",
# "cache" = delete "./output/cache", "sources" = delete "./sources"
# "oldcache" = remove old cached rootfs except for the newest 6 files
DEST_LANG="en_US.UTF-8" # sl_SI.UTF-8, en_US.UTF-8
BOARD=""
# advanced
KERNEL_KEEP_CONFIG="yes" # do not overwrite kernel config before compilation
EXTERNAL="yes" # build and install extra applications and drivers
EXTERNAL_NEW="prebuilt" # compile and install or install prebuilt additional packages
CREATE_PATCHES="no" # wait that you make changes to uboot and kernel source and creates patches
BUILD_ALL="no" # cycle through available boards and make images or kernel/u-boot packages.
# set KERNEL_ONLY to "yes" or "no" to build all packages/all images
BSPFREEZE="" # freeze armbian packages (u-boot, kernel, dtb)
INSTALL_HEADERS="" # install kernel headers package
LIB_TAG="master" # change to "branchname" to use any branch currently available.
After compiling (admittedly on Ubuntu 16.04.4 x64, not Ubuntu Bionic 18.04 x64) I scp the resulting .deb's to the board (NanoPi NEO 2 shown), then
pi@nanopineo2:~$ sudo dpkg -i *.deb
(Reading database ... 52634 files and directories currently installed.)
Preparing to unpack linux-dtb-next-sunxi64_5.50_arm64.deb ...
Unpacking linux-dtb-next-sunxi64 (5.50) over (5.50) ...
Preparing to unpack linux-headers-next-sunxi64_5.50_arm64.deb ...
Unpacking linux-headers-next-sunxi64 (5.50) over (5.50) ...
Preparing to unpack linux-image-next-sunxi64_5.50_arm64.deb ...
Unpacking linux-image-next-sunxi64 (5.50) over (5.50) ...
Preparing to unpack linux-source-next-sunxi64_5.50_all.deb ...
Unpacking linux-source-4.14.52-next-sunxi64 (4.14.52-next-sunxi64+5.50) over (4.14.52-next-sunxi64+5.50) ...
Preparing to unpack linux-u-boot-next-nanopineo2_5.50_arm64.deb ...
Unpacking linux-u-boot-nanopineo2-next (5.50) over (5.50) ...
Setting up linux-dtb-next-sunxi64 (5.50) ...
Setting up linux-headers-next-sunxi64 (5.50) ...
Compiling headers - please wait ...
Setting up linux-image-next-sunxi64 (5.50) ...
update-initramfs: Generating /boot/initrd.img-4.14.52-rt34-sunxi64
update-initramfs: Converting to u-boot format
Setting up linux-source-4.14.52-next-sunxi64 (4.14.52-next-sunxi64+5.50) ...
Setting up linux-u-boot-nanopineo2-next (5.50) ...
Updating u-boot on /dev/mmcblk0
Using either just option (2), or both (1) and (2) combined, I get similar results :
pi@nanopineo2:~/rt-tests-1.0$ sudo ./cyclictest -p 80 -t5 -n
# /dev/cpu_dma_latency set to 0us
policy: fifo: loadavg: 0.08 0.10 0.05 1/126 1901
T: 0 ( 1873) P:80 I:1000 C: 22898 Min: 7 Act: 10 Avg: 103 Max: 2070
T: 1 ( 1874) P:80 I:1500 C: 15409 Min: 7 Act: 11 Avg: 110 Max: 2004
T: 2 ( 1875) P:80 I:2000 C: 11570 Min: 7 Act: 9 Avg: 113 Max: 2197
T: 3 ( 1876) P:80 I:2500 C: 9257 Min: 7 Act: 8 Avg: 129 Max: 1938
T: 4 ( 1877) P:80 I:3000 C: 7714 Min: 7 Act: 10 Avg: 129 Max: 1969
These results suggest to me that I don't have an RT kernel. however uname says different:
pi@nanopineo2:~/rt-tests-1.0$ uname -a
Linux nanopineo2 4.14.52-rt34-sunxi64 #15 SMP PREEMPT RT Mon Jul 2 08:58:04 AWST 2018 aarch64 aarch64 aarch64 GNU/Linux
As I said in the first line NOOB here. Where have I gone wrong?