User Tools

Site Tools


code:work:pi:rtpreempt:start

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
code:work:pi:rtpreempt:start [2017/03/08 20:23] – [Xenomai Pi 3 Compile HOWTO] davidcode:work:pi:rtpreempt:start [2017/03/09 01:06] (current) – [Xenomai Pi 3 Compile HOWTO] david
Line 372: Line 372:
 </code> </code>
   - Grab the source code from the **git** repository <code>   - Grab the source code from the **git** repository <code>
-git  clone https://github.com/raspberrypi/linux +git clone https://github.com/raspberrypi/linux 
-git checkout rpi-4.1.y+cd linux 
 +git checkout rpi-4.4.y
 </code> </code>
- +  - Create a new Xenomai branch <code> 
 +git checkout -b xenomai-3.0.3 
 +</code> 
 +  - Dry run the patch <code> 
 +patch --dry-run -p1 <../xenomai-3.0.3/kernel/cobalt/arch/arm/patches/ipipe-core-4.4.43-arm-7.patch 
 +</code> 
 +  - Patch the kennel assuming you saw no FAILS in the dry run test <code> 
 +cd .. 
 +xenomai-3.0.3/scripts/prepare-kernel.sh --linux=linux --arch=arm --ipipe=xenomai-3.0.3/kernel/cobalt/arch/arm/patches/ipipe-core-4.4.43-arm-7.patch 
 +</code> 
 +  - Build the default configuration <code> 
 +KERNEL=kernel7 
 +cd linux 
 +make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- bcm2709_defconfig 
 +make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- bcm2835_defconfig 
 +</code> 
 +  - Configure the kernel <code> 
 +make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- menuconfig 
 +</code> 
 +    - Make these changes 
 +      - Kernel Features  ---> 
 +        - Preemptible Kernel (Low-Latency Desktop) 
 +        - DISBLE Allow for memory compaction 
 +        - DISABLE Contiguous Memory Allocator 
 +      - CPU Power Management  ---> OFF everything 
 +      - Kernel hacking 
 +        - DISABLE KGDB: kernel debugger 
 +  - Compile! <code> 
 +make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- zImage modules dtbs -j 6 
 +</code> 
 +  - Ran this with the 3.1.18 kernel... seems like that might work.
code/work/pi/rtpreempt/start.1489004605.txt.gz · Last modified: 2017/03/08 20:23 by david