Installing Debian and Xenomai on gumstix Overo

From Gumstix User Wiki

This document describes how I (Sagar Behere) installed Debian squeeze and vanilla linux kernel 2.6.38.8 patched with Xenomai 2.6.0 on the gumstix Overo. The contents of this document are probably applicable to other software versions as well. Note that this isn't a newbie tutorial. You still need to know what you are doing.

DISCLAIMER: There may be better ways to do this.

The standard method to compile a kernel and rootfs is to use the Open Embedded build system that is described here. However, I did not use that method because I couldn't figure out how to build any of the kernel versions for which xenomai patches could be found (at the time of writing, the virtual/kernel pointed to version 3.0). Also, I prefer to use the debian userland, rather than Ångstrom. Therefore, the method described here does NOT use Open Embedded.

Contents

Preparing the host

The host is the computer you will use to build the kernel and rootfs. The target is the gumstix Overo COM on which the kernel and rootfs will be deployed. My host is an x86 computer running Debian squeeze. The method described here will probably work on a host running Ubuntu, with some modifications

I removed support for almost all the boards except the Overo and also removed support for everything execpt OMAP3. Configure the xenomai related stuff too.

Build the kernel with

make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- uImage modules

To deploy the kernel, you'll need the uImage which can be found at {kernelsourcedir}/arch/arm/boot/uImage You'll also need to put the resulting modules into the debian rootfs that we'll create later. For now, I merely put all the modules in some directory {modulesdirectory} with

Xenomai user space

The userspace part of Xenomai needs to be compiled now. The traditional way is to cross-compile it, as described in the xenomai documentation. However, we can take advantage of our arm chroot environment to avoid cross-compilation. Also, we will create debian packages i.e. .deb files for the userspace part of the xenomai installation. We proceed as follows