Jump to content

arre

Members
  • Posts

    5
  • Joined

  • Last visited

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. There is a difference between PREEMPT and PREEMPT RT. So no, the real time patch was not enabled on your kernel
  2. @andreluiz109 : I did a small patch to the build system, to force it to not take the latest linux kernel, but a specific one. Perhaps there was an option in the armbian build system to specify this but I did not immediately find it. The reason why this is important, is that the linux RT patches are only applicable to a very specific kernel version. (e:g: the 4.18.8-RT 9 patch MUST be applied to the linux kernel 4.18.8 tag). That's why I did the following patch to the armbian build system (armbian build-system tag 9531d1bc7ecd0f468e29e402ba00cbc7b7dd683f) : diff --git a/config/sources/sunxi_common.inc b/config/sources/sunxi_common.inc index 4fc872f..aae8829 100644 --- a/config/sources/sunxi_common.inc +++ b/config/sources/sunxi_common.inc @@ -24,7 +24,8 @@ case $BRANCH in next) KERNELSOURCE=$MAINLINE_KERNEL_SOURCE - KERNELBRANCH='branch:linux-4.14.y' + #KERNELBRANCH='branch:linux-4.14.y' + KERNELBRANCH='tag:v4.14.8' KERNELDIR=$MAINLINE_KERNEL_DIR GOVERNOR=ondemand The easiest way to apply this patch is .. to edit sunxi_common.inc, comment the kernel branch and force it to a fixed version. This patch has nothing to do with the actual linux RT patch, which you can just place in the correct directory, and armbian will apply it for you. Anyway, I'd recommend the following approach if you want to build the kernel yourself: - First see that you can build -a- armbian kernel (you should find enough documentation online for this) - Then try and build a specific linux kernel version (e.g. the 4.18.8 if you want to reproduce my build) - Then build it while applying the 4.18.8-RT 9 patch (by putting the patch file in userpatches/kernel/sunxi-next/patch-4.14.8-rt9.patch), and applying the correct config setings when prompted Note that if you have never built a kernel before, this can be a bit daunting, but you'll get there eventually. Alternatively, you can just take the precompiled image from my blog's site (SD card image), and work from there. Good luck!
  3. Hi all, Just wanted to share that I got the realtime patch working on an Orange Pi Zero on 4.18.8 I used the armbian build environment and the official RT patch. A few tricky points were the CPU govenor and CPU operating points automatically switching by default, causing the realtime behavior to be really bad (max spikes around 3000 in cpu test). By patching the device tree to only use a fixed operating point, I achieve the following output: Linux orangepizero 4.14.8-rt9-sunxi #1 SMP PREEMPT RT Sat Jan 6 14:36:31 CET 2018 armv7l armv7l armv7l GNU/Linux /root/rt-tests/cyclictest -p 80 -t5 –n # /dev/cpu_dma_latency set to 0us policy: fifo: loadavg: 0.85 0.49 0.22 4/168 3083 T: 0 ( 3079) P:80 I:1000 C: 3297 Min: 8 Act: 17 Avg: 16 Max: 66 T: 1 ( 3080) P:80 I:1500 C: 2198 Min: 8 Act: 24 Avg: 15 Max: 50 T: 2 ( 3081) P:80 I:2000 C: 1648 Min: 8 Act: 11 Avg: 16 Max: 60 T: 3 ( 3082) P:80 I:2500 C: 1318 Min: 8 Act: 12 Avg: 15 Max: 44 T: 4 ( 3083) P:80 I:3000 C: 1098 Min: 9 Act: 17 Avg: 18 Max: 57 If anyone is interested, I used this realtime kernel to run a virtual wifi guitar amplifier on the orange pi zero. I documented the entire thing on http://arre234.blogspot.be/2018/02/linux-portable-wifi-guitar-amp-on.html , including the device tree and cpu govenor stuff. Hope this helps anyone Arnout
  4. Hi all, Just wanted to share that I got the realtime patch working on an Orange Pi Zero on 4.18.8 I used the armbian build environment and the official RT patch. A few tricky points were the CPU govenor and CPU operating points automatically switching by default, causing the realtime behavior to be really bad (max spikes around 3000 in cpu test). By patching the device tree to only use a fixed operating point, I achieve the following output: Linux orangepizero 4.14.8-rt9-sunxi #1 SMP PREEMPT RT Sat Jan 6 14:36:31 CET 2018 armv7l armv7l armv7l GNU/Linux /root/rt-tests/cyclictest -p 80 -t5 –n # /dev/cpu_dma_latency set to 0us policy: fifo: loadavg: 0.85 0.49 0.22 4/168 3083 T: 0 ( 3079) P:80 I:1000 C: 3297 Min: 8 Act: 17 Avg: 16 Max: 66 T: 1 ( 3080) P:80 I:1500 C: 2198 Min: 8 Act: 24 Avg: 15 Max: 50 T: 2 ( 3081) P:80 I:2000 C: 1648 Min: 8 Act: 11 Avg: 16 Max: 60 T: 3 ( 3082) P:80 I:2500 C: 1318 Min: 8 Act: 12 Avg: 15 Max: 44 T: 4 ( 3083) P:80 I:3000 C: 1098 Min: 9 Act: 17 Avg: 18 Max: 57 If anyone is interested, I used this realtime kernel to run a virtual wifi guitar amplifier on the orange pi zero. I documented the entire thing on http://arre234.blogspot.be/2018/02/linux-portable-wifi-guitar-amp-on.html , including the device tree and cpu govenor stuff. Hope this helps anyone Arnout
×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines