Difference between revisions of "Xenomai - Mini Howto"
Ashcharles (Talk | contribs) |
|||
(21 intermediate revisions by 13 users not shown) | |||
Line 7: | Line 7: | ||
==== Step 1: Gumstix OE setup ==== | ==== Step 1: Gumstix OE setup ==== | ||
− | At first, [ | + | At first, [https://github.com/gumstix/yocto-manifest/wiki setup the build environment]. |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
==== Step 2: Custom Configuration ==== | ==== Step 2: Custom Configuration ==== | ||
− | Download the [http:// | + | Download the [http://bitmux.org/downloads user.collection to build Xenomai for Gumstix OE]. Unpacking the file in the Gumstix OE root directory will give the following structure: |
<pre> | <pre> | ||
Line 48: | Line 40: | ||
== Troubleshooting == | == Troubleshooting == | ||
− | === | + | === Xenomai for verdex with Qemu === |
It is also possible to run the real-time kernel within Qemu. However, it might be necessary to slow down the clock of the emulated system (Probably, as your host computer is too slow). | It is also possible to run the real-time kernel within Qemu. However, it might be necessary to slow down the clock of the emulated system (Probably, as your host computer is too slow). | ||
Line 54: | Line 46: | ||
The following steps can help: | The following steps can help: | ||
− | Alter the file <tt>hw/pxa2xx_timer.c</tt>: | + | Alter the file <tt>hw/pxa2xx_timer.c</tt> in the Qemu sources: |
− | 1. Change all occurences of <tt>qemu_get_clock(vm_clock)</tt> | + | 1. Change all occurences of <tt>qemu_get_clock(vm_clock)</tt> to <tt>PXA2XX_QEMU_GET_CLOCK()</tt> |
2. Define the macro | 2. Define the macro | ||
Line 62: | Line 54: | ||
#define PXA2XX_QEMU_GET_CLOCK() (qemu_get_clock(vm_clock) >> 4) /* also try 2,3 or use a divider */ | #define PXA2XX_QEMU_GET_CLOCK() (qemu_get_clock(vm_clock) >> 4) /* also try 2,3 or use a divider */ | ||
</pre> | </pre> | ||
+ | |||
+ | |||
+ | [[Category:How_to_-_general]] | ||
+ | [[Category:How_to_-_qemu]] |
Latest revision as of 14:38, 1 April 2016
Contents
Xenomai
The following quick guide gives a rough overview how I got Adeos & Xenomai (real-time extension for Linux) running on the verdex.
Quick Install Guide
Step 1: Gumstix OE setup
At first, setup the build environment.
Step 2: Custom Configuration
Download the user.collection to build Xenomai for Gumstix OE. Unpacking the file in the Gumstix OE root directory will give the following structure:
user.collection user.collection/conf user.collection/conf/machine user.collection/conf/machine/include user.collection/packages user.collection/packages/xenomai user.collection/packages/xenomai/xenomai-2.4.6 user.collection/packages/linux user.collection/packages/linux/gumstix-xenomai-kernel-2.6.24 user.collection/packages/linux/gumstix-xenomai-kernel-2.6.24/gumstix-custom-verdex
Step 3: (Re-)build the kernel and system
$ bitbake gumstix-xenomai-kernel $ bitbake -c rebuild task-base-gumstix $ bitbake -c rebuild gumstix-basic-image
Step 4: Images
The kernel and root filesystem image can be found in tmp/deploy/glibc/images.
Troubleshooting
Xenomai for verdex with Qemu
It is also possible to run the real-time kernel within Qemu. However, it might be necessary to slow down the clock of the emulated system (Probably, as your host computer is too slow).
The following steps can help:
Alter the file hw/pxa2xx_timer.c in the Qemu sources:
1. Change all occurences of qemu_get_clock(vm_clock) to PXA2XX_QEMU_GET_CLOCK()
2. Define the macro
#define PXA2XX_QEMU_GET_CLOCK() (qemu_get_clock(vm_clock) >> 4) /* also try 2,3 or use a divider */