Building a Xenomai kernel

1,517 views
Skip to first unread message

dos360

unread,
Nov 4, 2012, 6:24:02 AM11/4/12
to beagl...@googlegroups.com
Hello,

I still don't have the Xenomai kernel but here is the progress I made so far. I read the shell scripts provided by Robert, patched a certain release of the kernel and listened to Kroah-Hartman's video on kernel patching.

The issues are these. The Xenomai kernel appears to be extremely release-sensitive. I found three sets of patches:
  • adeos-ipipe-2.6.38.8-arm-1.18-08.patch
  • adeos-ipipe-3.0.36-arm-1.18-11.patch
  • ipipe-core-3.2.21-arm-1.patch
I was able to apply the 3.2.21 patch to kernel release 3.2.21 which I had to get with wget. This directory was NOT a git repo. That is important because Robert's set of patches only works with git repos. I found that the last file to get patched, vmalloc.c was more likely to cause problems when kernel version was not an exact match. I saw a new Kernel configuration option for enabling Xenomai.

I patched v3.2.21 using Xenomai supplied files. Opened up the tarball. Did git init, git add . , git commit and git checkout -b Xenomai. Compiled, too. There is now a zImage file. I copied the zImage file to the boot directory in my ext4 partition to replace the old file. The BeagleBoard doesn't boot. There was no zImage, only a vmlinuz file in the small, fat partition. I didn't see any links either so didn't change anything there. I was obviously using a cross compiler for the correct architecture, etc... Was there anything wrong with my config file or with my file copy procedure? If anybody made this work with BeagleBoard patches please explain. Is it possible to determine whether the installation is indeed realtime AFTER installing the kernel and booting BeagleBoard with it? Is there anything that I can check to verify that I have the kernel I want?

Question 2. I looked at the first two patches. The first one made no sense. The second seems to have been incorporated in v3.6 of the mainstream kernel. Would you recommend examining each patch one by one to see which ones are still needed in the current kernel version? If yes, what is a good procedure for it? I recently learned the git format-patch branch1..branch2 command but it is tedious to copy the working directory (staging area?) for each new comparison. need some guidance here.

Best regards,

Ahmet

GP

unread,
Nov 4, 2012, 10:23:33 AM11/4/12
to beagl...@googlegroups.com
A Xenomai mailing list post that may be of use:

On 10/26/2012 05:41 PM, Wayne Warren wrote:
> I am looking at the ksrc/arch/arm/patches directory in the Xenomai git
> repository for tags v2.6.0 and v2.6.1.
> 
> I notice in v2.6.1 there is an ipipe patch named
> "ipipe-core-3.2.21-arm-1.patch" which differs from the others I have
> seen which start with "adeos-ipipe".
> 
> Since I prefer to pull from the original ipipe tree directly rather than
> applying the patch, does it matter if I choose "ipipe-core" or
> "adeos-ipipe"? I would prefer the latest vanilla kernel version, so if
> you could recommend a head/tag to checkout corresponding to this patch,
> I would appreciate it. Right now I am looking at the "for-ipipe-3.2-arm"
> head.

adeos-ipipe-* are the previous generation of adeos I-pipe patches, they
stop around Linux version 3.0/3.1.

ipipe-core-* are a new incarnation of the adeos I-pipe patches, they
start at Linux version 3.2. The idea is to make the patch simpler by
making the assumption that Xenomai is the only user of the patch, so cut
down on things that were a bit more generic. At this chance we also did
some other refactoring, such as putting in a common place things that
were the-same-but-not-really on all architectures. What also changed is
that there is now one git branch for all the architectures.

the branch for-ipipe-3.2-arm is a branch in
git://git.xenomai.org/ipipe-gch.git
which is the git I use for working on the I-pipe patch. This branch is
merged in the core-3.2 branch in the official I-pipe git repository at:

git://git.denx.de/ipipe.git

The branch core-3.2 is the branch from which the ipipe-core-3.2-*
patches are made.

In the ipipe-gch git, you can also find the for-core-3.4 branch which
contains the current status of my work on the Adeos I-pipe core patched
Linux 3.4. There is currently no pending issue on this branch (and I
plan to backport some of the changes in the for-ipipe-3.2-arm branch).
But to use that branch, you will need to use the master branch from the
xenomai git:

git://git.xenomai.org/xenomai-2.6.git

-- 
					    Gilles.

GP

unread,
Nov 4, 2012, 10:25:09 AM11/4/12
to beagl...@googlegroups.com
What's your cross compile environment, are you using the native bitbake method or are you patching a stock kernel from kernel.org?


On Sunday, November 4, 2012 6:24:02 AM UTC-5, dos360 wrote:

GP

unread,
Nov 4, 2012, 10:35:01 AM11/4/12
to beagl...@googlegroups.com
xenomai/bin/latency (latency test suite)
xeno-test (wrapper for various validation tests)

Some info on interpreting the results:

http://www.xenomai.org/pipermail/xenomai/2012-October/026721.html


On Sunday, November 4, 2012 6:24:02 AM UTC-5, dos360 wrote:

robert.berger

unread,
Nov 4, 2012, 2:52:57 PM11/4/12
to beagl...@googlegroups.com
Hi,

On Sunday, November 4, 2012 1:24:02 PM UTC+2, dos360 wrote:
Hello,



The issues are these. The Xenomai kernel appears to be extremely release-sensitive. I found three sets of patches:
  • adeos-ipipe-2.6.38.8-arm-1.18-08.patch
  • adeos-ipipe-3.0.36-arm-1.18-11.patch
  • ipipe-core-3.2.21-arm-1.patch
Everything which is __NOT__ mainline is release sensitive:)
 
I was able to apply the 3.2.21 patch to kernel release 3.2.21 which I had to get with wget. This directory was NOT a git repo.

Why? Just use the stable kernel git repo and check out v3.2.21
 

Best regards,

Ahmet

I managed to get a 3.2.21 kernel boot with a xenomai patch and a custom config, but unfortunately (for you) I just arrived in Spain for the Embedded Linux Conference. Will be able to give you the magic config file earliest on Friday.

Regards,

Robert


 

dos360

unread,
Nov 5, 2012, 7:21:21 AM11/5/12
to beagl...@googlegroups.com
Thank you Gilles. I used the gcc cross-compiler that is installed by apt-get on Ubuntu 12.04 which is apparently the same as the one available here http://www.kernel.org/pub/tools/crosstool/ (i.e. not the codesourcery compiler). I patched 3.2.21 downloaded from kernel.org and it went smoothly on condition that the kernel version was an exact match. The 3.2.21 source is patched up as soon as I am done with prepare-kernel.sh, right?

If at that point I use the RCN shells to apply the BeagleBoard patches, my kernel should be OK. But the first set of patches is for kernel v3.2.21 and the second set is for kernel v3.2.31. And copying the kernel image on top of the old image in the /boot directory doesn't seem to work either. It is frustrating to sit looking at all those patches not knowing how to deal with them.

If there is anybody out there who knows how to apply both Xenomai and BeagleBoard patches, can you please apply and install them both on the sdcard and then reply this post with a typescript file attached? A picture is going to be worth a thousand words.

What IS the bitbake method?

Ahmet

dos360

unread,
Nov 5, 2012, 7:28:13 AM11/5/12
to beagl...@googlegroups.com


On Sunday, 4 November 2012 21:52:57 UTC+2, robert.berger wrote:
Hi,

On Sunday, November 4, 2012 1:24:02 PM UTC+2, dos360 wrote:
Hello,


The issues are these. The Xenomai kernel appears to be extremely release-sensitive. I found three sets of patches:
  • adeos-ipipe-2.6.38.8-arm-1.18-08.patch
  • adeos-ipipe-3.0.36-arm-1.18-11.patch
  • ipipe-core-3.2.21-arm-1.patch
Everything which is __NOT__ mainline is release sensitive:)
 
I was able to apply the 3.2.21 patch to kernel release 3.2.21 which I had to get with wget. This directory was NOT a git repo.

Why? Just use the stable kernel git repo and check out v3.2.21


I didn't do that because I didn't know v3.2.21 was available. I found two git repos:
1- torvalds/linux git
2- stable/linux-stable.git

I cloned both of these repositories and used git tag to list the versions available on the first one (torvalds/linux.git) which didn't have v3.2.21 tagged! It didn't occur to me to check the second repository even though I had it cloned. I am such a beginner that I assumed that they were copies of one another. Apparently one of them is a list of the release candidate versions...

Look forward to your magic config file. Thanks in advance.

Ahmet

 

GP

unread,
Nov 5, 2012, 10:53:01 AM11/5/12
to beagl...@googlegroups.com
Building a kernel using OpenEmbedded:


Building the entire Angstrom system from scratch using OE (you should do this at least once as an exercise to see how the filesystem is put together and built):


Some additional bitbake/oe links:


Here is a neat process using buildroot to only populate the final firmware image with just the utilities you want in the distro:


Keep us posted on your progress with Xenomai, I am working on the same thing and will post my process for integrating the Xenomai RTOS patches if someone else doesn't. 

dos360

unread,
Nov 8, 2012, 4:36:30 PM11/8/12
to beagl...@googlegroups.com
Is there a rule against attachments???

I was able to compile Xenomai at last... but I can't even share the config file here!

dos360

unread,
Nov 8, 2012, 4:39:48 PM11/8/12
to beagl...@googlegroups.com
Unfortunately it is not possible to attach the working config file or the typescripts!! I am posting the message without the attachments until I can find a solution.




Thank you for the help. I have finally managed to build a Xenomai kernel, I think.

Here is a step by step guide.


First start with a working system.

on computer:
wget http://rcn-ee.net/deb/rootfs/precise/ubuntu-12.04-r8-minimal-armhf-2012-10-19.tar.xz
tar xf ubuntu-12.04-r8-minimal-armhf-2012-10-19.tar.xz
cd ubuntu-12.04-r8-minimal-armhf-2012-10-19.tar.xz
sudo ./setup_sdcard.sh --mmc /dev/mmcblk0 --uboot beagle_xm
remove sdcard from computer and boot microcontroller with it
see attached file typescript-1

on microcontroller:
userid=ubuntu, password=temppwd
uname -r to confirm kernel version is 3.6.2-x3
sudo halt
power off
remove sdcard from microcontroller and insert it in the computer

Notes:
This particular RCN system has the most up-to-date kernel version as of Oct 2012 and since it has the patches, it supports all of the BeagleBoard devices to boot. However, Xenomai, will have an older kernel and it will not support BeagleBoard devices such as the ethernet port.

Installing Xenomai 2.6:
on computer:
git clone git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git
git clone git://xenomai.org/xenomai-2.6.git
cd linux-stable
git checkout v3.2.21 -b Xenomai
git describe to see that this is indeed v3.2.21
download attached config file!
cp -vi /home/ahmet/config .config
make ARCH="arm" oldconfig
make ARCH="arm" localmodconfig
for the next step qt is required (install from the Ubuntu Software Centre)
make ARCH="arm" xconfig
If you started with the config file attached to this post then you need not change anything to compile the kernel. Nevertheless, I believe that there are redundant features selected.
if the cross compiler isn't already installed then install it (sudo apt-get install gcc-arm-linux-gnueabihf)
make ARCH="arm" CROSS_COMPILE="arm-linux-gnueabihf-" -j5
copy zImage from arch/arm/boot/ directory to first (vfat) partition of the sdcard under a different name. e.g. zImage2
edit uEnv.txt so that first line reads "kernel_file=zImage2"
remove sdcard from computer and boot microcontroller with it
see attached file typescript-2

on microcontroller:
userid=ubuntu, password=temppwd
uname -r to confirm kernel version is 3.2.21!


Notes:
Many BeagleBoard devices will not be working because err... the BeagleBoard patches distributed by Robert Nelson have not been applied. I need to learn how to apply these patches to kernel v3.2.21


To Do:
Please review the procedure in the attached typescript files and examine the attached config file to improve it.

If you can get me get started with applying those BeagleBoard patches, that'll be great!

Ahmet



PS The bitbake method with Angstrom doesn't work because the script keeps asking for a file called texi2html. And the git link has changed, too.
git clone git://github.com/Angstrom-distribution/setup-scripts.git

Gerald Coley

unread,
Nov 8, 2012, 4:38:14 PM11/8/12
to beagl...@googlegroups.com
None that I know of, but it will go out to over 5,000 email recipients! A link to a location is always better.

Gerald


On Thu, Nov 8, 2012 at 3:36 PM, dos360 <vta...@yahoo.com> wrote:
Is there a rule against attachments???

I was able to compile Xenomai at last... but I can't even share the config file here!

dos360

unread,
Nov 9, 2012, 3:57:08 AM11/9/12
to beagl...@googlegroups.com

robert.berger

unread,
Nov 9, 2012, 11:31:44 AM11/9/12
to beagl...@googlegroups.com
Here is what I did:

1) stable 3.2.21 (mainline) kernel without additional patches
2) apply the xenomai patch from xenomai head
3) use this config file to build you xenomai enabled kernel:

http://www.reliableembeddedsystems.com/beagle-xm-xenomai/defconfig_cooked-boot-from-nfs

My beagle-xm rev c boots, I have  network and there is xenomai support.

Regards,

Robert


dos360

unread,
Nov 14, 2012, 6:57:02 AM11/14/12
to beagl...@googlegroups.com
Thank you. The kernel compiled but at boot time it hangs up.
The last messages were related to the USB device:
[    5.372985] usb 1-2: New USB device found, idVendor=0424, idProduct=9514    
[    5.380096] usb 1-2: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[    5.388732] hub 1-2:1.0: USB hub found                                      
[    5.393066] hub 1-2:1.0: 5 ports detected     

Do you have any idea what it can be?
I did oldconfig, localmodconfig and xconfig without changing anything.  Then cross compiled.

Ahmet

John

unread,
Nov 19, 2012, 4:38:47 AM11/19/12
to beagl...@googlegroups.com, gilles.cha...@xenomai.org
Dear Gilles,

Perhaps I misunderstood your comment below. I thought you were indicating that there is a "test" version available for 3.4 kernels with xenomai ipipe already patched in at for-core-3.4. However, when I started to compile for-core-3.4, there was no "xenomai" real-time menu added full of the related kernel features, so I thought the xenomai ipipe hadn't already been patched in yet.

However, I do not find an ipipe-core-3.4.x-arm.patch in git://git.xenomai.org/xenomai-2.6.git either that I could use to patch for-core-3.4 to make it RT-ready. In any case, if you have a test version I could be interested in trying it on the Panda Board ES.

Cheers.

dlewin555

unread,
Nov 18, 2013, 6:20:58 AM11/18/13
to beagl...@googlegroups.com
Robert ,

As I'm interested in the subject of having Xenomai on Beaglebone Black I've reached that thread.
Nevertheless, your link lead me to a broken link.
Is there an updated procedure for Xenomai on BBB please ?

Charles Steinkuehler

unread,
Nov 18, 2013, 7:52:43 AM11/18/13
to beagl...@googlegroups.com
On 11/18/2013 5:20 AM, dlewin555 wrote:
> Robert ,
>
> As I'm interested in the subject of having Xenomai on Beaglebone Black I've
> reached that thread.
> Nevertheless, your link lead me to a broken link.
> Is there an updated procedure for Xenomai on BBB please ?

I've got a version of RCN's kernel building scripts that will build a
Xenomai kernel:

https://github.com/cdsteinkuehler/linux-dev

Checkout any of the 3.8.13-bone<x>-xenomai branches and build as usual
(./build-kernel.sh or ./build-deb.sh). See the xenomai() procedure in
patches.sh if you want to see how to apply the Xenomai patches to your
own kernel tree.

Note that a working ipipe patch and pre/post patches for the Bone kernel
are now part of the latest Xenomai release.

--
Charles Steinkuehler
cha...@steinkuehler.net

dlewin555

unread,
Nov 18, 2013, 11:40:44 AM11/18/13
to beagl...@googlegroups.com
Christmas time ! thanks Charles, I'll try :

./build_kernel.sh + ./tools/install_kernel.sh

I think this assume the following to be uselless :

1- Checkout the "am33x-v3.8" branch in the Robert Nelson repository [3], 
the patch has been tested with commit 3fc8a73d782231ab2750ff29793a760e8fa076bb
2- apply beaglebone/ipipe-core-3.8.13-beaglebone-pre.patch
3- apply ipipe-core-3.8.13-arm-1.patch
4- apply beaglebone/ipipe-core-3.8.13-beaglebone-post.patch
5- you can resume to generic installation instructions.

DL

Charles Steinkuehler

unread,
Nov 18, 2013, 2:36:02 PM11/18/13
to beagl...@googlegroups.com
On 11/18/2013 10:40 AM, dlewin555 wrote:
> Christmas time ! thanks Charles, I'll try :
>
> ./build_kernel.sh + ./tools/install_kernel.sh
>
> I think this assume the following to be uselless :
>
> 1- Checkout the "am33x-v3.8" branch in the Robert Nelson repository [3],
>>
>> the patch has been tested with commit 3fc8a73d782231ab2750ff29793a760e8fa076bb
>> 2- apply beaglebone/ipipe-core-3.8.13-beaglebone-pre.patch
>> 3- apply ipipe-core-3.8.13-arm-1.patch
>> 4- apply beaglebone/ipipe-core-3.8.13-beaglebone-post.patch
>> 5- you can resume to generic installation instructions.

Yes, those are the instructions for patching the BeagleBone kernel
source manually and can be safely ignored if you're using my github
repository. In my repo, the above patching is done for you by the
scripts, along with adding the rest of Xenomai to the kernel.

--
Charles Steinkuehler
cha...@steinkuehler.net

David Lewin

unread,
Nov 26, 2013, 4:45:31 AM11/26/13
to beagl...@googlegroups.com
Hi,

After some tries I've changed from Mint Host ( Petra is unrecognized and Linaro seems not to be installed with Olivia)
I finally succeeded to execute these scripts on Debian Wheezy 32: it worked directly without any trouble.
Nevertheless, booting with the MMC isn't recognized : the BBB start with Angstrom .

I've used a 4 GB uSD Card to be sure.

, but don't see what is wrong there.


2013/11/18 Charles Steinkuehler <cha...@steinkuehler.net>

--
For more options, visit http://beagleboard.org/discuss
---
You received this message because you are subscribed to a topic in the Google Groups "BeagleBoard" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/beagleboard/-zyg4FrkMmY/unsubscribe.
To unsubscribe from this group and all its topics, send an email to beagleboard...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

David Lewin

unread,
Nov 30, 2013, 12:27:22 PM11/30/13
to beagl...@googlegroups.com
I get back as a new try with the script didn't helped to start. 
Attached a log to what happend

In some words : boot with user btn presed ends with :

wrong image format for bootm command
ERROR:  can't get kernel image


2013/11/26 David Lewin <dlew...@gmail.com>
Xenomai_bad.log

David Lewin

unread,
Nov 30, 2013, 1:02:42 PM11/30/13
to beagl...@googlegroups.com
maybe a workaround ?
in the 1st (fat) partition : no uImage is present, while am335x-bone.dtb is here.

So I've copied 
yocto/poky/build/tmp/deploy/images/beaglebone/uImage to the the boot partition and then got:
 
U-Boot 2013.04-dirty (Jun 19 2013 - 09:57:14)

I2C:   ready
DRAM:  512 MiB
WARNING: Caches not enabled
NAND:  No NAND device found!!!
0 MiB
MMC:   OMAP SD/MMC: 0, OMAP SD/MMC: 1
*** Warning - readenv() failed, using default environment

musb-hdrc: ConfigData=0xde (UTMI-8, dyn FIFOs, HB-ISO Rx, HB-ISO Tx, SoftConn)
musb-hdrc: MHDRC RTL version 2.0
musb-hdrc: setup fifo_mode 4
musb-hdrc: 28/31 max ep, 16384/16384 memory
USB Peripheral mode controller at 47401000 using PIO, IRQ 0
musb-hdrc: ConfigData=0xde (UTMI-8, dyn FIFOs, HB-ISO Rx, HB-ISO Tx, SoftConn)
musb-hdrc: MHDRC RTL version 2.0
musb-hdrc: setup fifo_mode 4
musb-hdrc: 28/31 max ep, 16384/16384 memory
USB Host mode controller at 47401800 using PIO, IRQ 0
Net:   <ethaddr> not set. Validating first E-fuse MAC
cpsw, usb_ether
Hit any key to stop autoboot:  0
gpio: pin 53 (gpio 53) value is 1
mmc0 is current device
micro SD card found
mmc0 is current device
gpio: pin 54 (gpio 54) value is 1
SD/MMC found on device 0
reading uEnv.txt
226 bytes read in 3 ms (73.2 KiB/s)
Loaded environment from uEnv.txt
Importing environment from mmc ...
Running uenvcmd ...
mmc0 is current device
reading uImage
4392120 bytes read in 539 ms (7.8 MiB/s)
reading am335x-boneblack.dtb
** Unable to read file am335x-boneblack.dtb **
## Booting kernel from Legacy Image at 80200000 ...
   Image Name:   Linux-3.12.0-rc3
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    4392056 Bytes = 4.2 MiB
   Load Address: 80008000
   Entry Point:  80008000
   Verifying Checksum ... OK
ERROR: Did not find a cmdline Flattened Device Tree
Could not find a valid device tree
gpio: pin 55 (gpio 55) value is 1
** File not found /boot/uImage **
U-Boot#

 

it seems to get a little bit better as the uImage is accepted, but the dtb is still refused .
Please advise




2013/11/30 David Lewin <dlew...@gmail.com>

Charles Steinkuehler

unread,
Nov 30, 2013, 1:09:55 PM11/30/13
to beagl...@googlegroups.com
On 11/30/2013 12:02 PM, David Lewin wrote:
> maybe a workaround ?
> in the 1st (fat) partition : no uImage is present, while am335x-bone.dtb is
> here.
>
> So I've copied
> yocto/poky/build/tmp/deploy/images/beaglebone/uImage to the the boot
> partition and then got:

You don't have your boot loader and kernel installed/configured
properly. You'll need to sort out getting the system booted in order to
get your kernel running. There are a lot of working examples available
for you to use as a basis, or refer to the uBoot code and documentation
if you're building from scratch.

But copying uImage (ie: the Linux kernel) from a yocto build probably
isn't what you want to do if you're still trying to run a Xenomai kernel.

--
Charles Steinkuehler
cha...@steinkuehler.net

David Lewin

unread,
Nov 30, 2013, 1:18:25 PM11/30/13
to beagl...@googlegroups.com
Well Charles right,I thought that .config was preconfigured and I needed just to make a "save" in the make menuconfig proposal with the correct options for Beaglebone black.
Do you mean that build_kernel + save .config + tools/install_kernel.sh wasn't enough ?
if so, indeed please provide complete way to build and run xenomai.
Thanks in advance.


2013/11/30 Charles Steinkuehler <cha...@steinkuehler.net>

--
Charles Steinkuehler
cha...@steinkuehler.net

Charles Steinkuehler

unread,
Nov 30, 2013, 2:53:58 PM11/30/13
to beagl...@googlegroups.com
On 11/30/2013 12:18 PM, David Lewin wrote:
> Well Charles right,I thought that .config was preconfigured and I needed
> just to make a "save" in the make menuconfig proposal with the correct
> options for Beaglebone black.
> Do you mean that build_kernel + save .config + tools/install_kernel.sh
> wasn't enough ?
> if so, indeed please provide complete way to build and run xenomai.
> Thanks in advance.

The ./build_kernel.sh script from my github repo will build a xemonai
kernel. If you don't mess with the configuration, it will be setup for
Xenomai by default. Getting the kernel onto your system and your
boot-loader configured, however, is OS specific.

I generally either build a complete image and use the kernel debs (see
my omap-image-builder github repo), or manually install the kernel onto
my uSD card (copying the zImage file, modules, dtbs, etc. to their
respective locations).

I haven't used the tools/install_kernel.sh script...I'm sure it works
for it's intended purpose, but I'm not sure exactly which OS flavors are
supported, if you have to pass it any parameters, etc. If you want to
use it, crawl through it and see what it does...

--
Charles Steinkuehler
cha...@steinkuehler.net

Robert Nelson

unread,
Nov 30, 2013, 4:12:27 PM11/30/13
to Beagle Board
On Sat, Nov 30, 2013 at 12:18 PM, David Lewin <dlew...@gmail.com> wrote:
> Well Charles right,I thought that .config was preconfigured and I needed
> just to make a "save" in the make menuconfig proposal with the correct
> options for Beaglebone black.
> Do you mean that build_kernel + save .config + tools/install_kernel.sh
> wasn't enough ?

Nope it's not.. "tools/install_kernel.sh" was written too "just" make
my life easier, in that case it works by default on my images (hosted
on rcn-ee.net, and thus Charles's too..) For anything else, patches
requested..

> if so, indeed please provide complete way to build and run xenomai.
> Thanks in advance.

Ah, use Charles's "MachineKit" image as is...

Regards,

--
Robert Nelson
http://www.rcn-ee.com/

David Lewin

unread,
Nov 30, 2013, 5:30:01 PM11/30/13
to beagl...@googlegroups.com
Thank you both, even although now it is unclear to me ( "Ah, use Charles's "MachineKit" image as is" is what I did )

I'll try to dig in the script to be able to build a xenomai on the BBB.


2013/11/30 Robert Nelson <robert...@gmail.com>

Charles Steinkuehler

unread,
Nov 30, 2013, 7:23:57 PM11/30/13
to beagl...@googlegroups.com
On 11/30/2013 4:30 PM, David Lewin wrote:
> Thank you both, even although now it is unclear to me ( "Ah, use Charles's
> "MachineKit" image as is" is what I did )
>
> I'll try to dig in the script to be able to build a xenomai on the BBB.

"build a xenomai on the BBB"

NOTE that I don't build the kernel or the images natively on a
BeagleBone. They are both cross-compiled on a high-powered x86 machine
with lots of RAM and very fast HDD (RAID).

You _should_ be able to build on a BBB, but it will take a *LONG* time,
and you'll need a bunch of swap enabled.

That said, based on your emails, I think you're successfully building
the kernel but you aren't getting it properly installed on your SD card
image. There are a variety of examples around to use as a starting
point, and if you're not able to copy a kernel to your boot image and/or
built a bootable SD card image from scratch, I'm wondering why you're
trying to build from source in the first place...

--
Charles Steinkuehler
cha...@steinkuehler.net

Don deJuan

unread,
Nov 30, 2013, 7:33:00 PM11/30/13
to beagl...@googlegroups.com
Or look into distcc as another option for building.

Robert Nelson

unread,
Nov 30, 2013, 8:32:00 PM11/30/13
to Beagle Board
Nah... quad core a9's with 2GB ram and fast sata drives work just fine. .;)

David Lewin

unread,
Nov 30, 2013, 8:38:06 PM11/30/13
to beagl...@googlegroups.com
That said, based on your emails, I think you're successfully building
the kernel but you aren't getting it properly installed on your SD card
image.  There are a variety of examples around to use as a starting
point, and if you're not able to copy a kernel to your boot image and/or
built a bootable SD card image from scratch, I'm wondering why you're
trying to build from source in the first place...

you are certainly right about it and I can answer 2 things:
- copy anything is not a problem hopefully ;o) , but I didn't found out where to get the correct working uImage  and dtb file from compilation script.
- I'm ok to get a image already built for a 1st time. That being said after bouncing from the Robert's comment I've found Machinerykit and succeeded to build a working Xenomai image 




2013/12/1 Don deJuan <donju...@gmail.com>

David Lewin

unread,
Nov 30, 2013, 8:42:35 PM11/30/13
to beagl...@googlegroups.com
I'll try to dig in the script to be able to build a xenomai on the BBB.

This was more about to "build xenomai to RUN it on BBB" : the purpose, of course for me, is to cross-compile from my host PC. 

Btw, I don't have -yet- the BBB with quads A9, look for Udoo or wandboard instead...


2013/12/1 Robert Nelson <robert...@gmail.com>
Reply all
Reply to author
Forward
0 new messages