Outils pour utilisateurs

Outils du site


robotics:computing:xenomai_install_on_roboard

Différences

Cette page vous affiche les différences entre la révision choisie et la version actuelle de la page.

Lien vers cette vue comparative

robotics:computing:xenomai_install_on_roboard [2011/04/15 13:45]
gdo
— (Version actuelle)
Ligne 1: Ligne 1:
-====== Introduction ====== 
  
-This article describes how to install a Linux real-time operating system on a roboard RB-100 motherboard. It is based on the Ubuntu Linux distribution and the Xenomai/​Adeos real-time solution. 
- 
-== Many thanks to : == 
-  * Pascal Moigne from [[http://​www.retdtechfrance.com|R&​D Tech France]] for lending us a roboard RB-100. 
-  * Henri Roosen for his help on the Xenomai patched kernel configuration for Vortex86DX processor. 
-  * Philippe Gerum for his help on the WP bit test double fault bug : [[https://​mail.gna.org/​public/​adeos-main/​2010-04/​msg00011.html]] 
- 
-== Hardware used : == 
-  * Roboard RB-100 : [[http://​www.roboard.com/​RB-100.htm]] 
-  * Mini PCI VGA Card : [[http://​www.icop.com.tw/​pddetail.aspx?​id=93&​pid=4]] 
-  * 4 Go micro SD card plugged in the built-in micro-SD card reader. 
-  * 1 Go USB Key 
-  * A desktop PC((is needed to download softwares because Ubuntu does not support roboard ethernet card by default. Also, desktop PC makes kernel compilation faster.)). 
-  * An internet connection. 
- 
-== Downloads : == 
-  * Ubuntu 9.10 : [[http://​www.ubuntu.com/​]] 
-  * Linux Kernel 2.6.32.11 : [[http://​www.kernel.org/​]] 
-  * Xenomai 2.5.2 : [[http://​www.xenomai.org]] 
-  * Adeos patch adeos-ipipe-2.6.32.11-x86-2.6-02.patch : [[https://​gna.org/​projects/​adeos/​]] 
-  * Kernel configuration file : {{:​robotics:​computing:​xenomai:​config_roboard.txt|configuration file}} 
- 
-====== Linux Install ====== 
- 
-We install Ubuntu Desktop edition. But Server edition could be used too if you install from an USB CD-Rom drive((Ubuntu Server edition can not be installed from an USB key for now)). 
-Download the .iso image you choose and burn it on an USB Key (using UNetbootin or usb-creator-gtk for example). 
- 
-Plug your USB Key on the roboard and power on your roboard. At boot time, press **DEL** to enter BIOS setup. 
-Then go to **Boot => Boot Device Priority => 1st Boot Device** and select your USB key. Save your changes and exit. 
- 
-The roboard boots now on your USB key. Install Ubuntu with your own options. If you need more informations about how to install Ubuntu, look at there : [[https://​help.ubuntu.com/​community/​Installation]] 
- 
-Press **Restart** and disconnect your USB Key when it is asked. 
- 
-====== Patching kernel with Xenomai ====== 
- 
-You can do all the following actions on your desktop PC rather than on the roboard for more confort. 
- 
-Download Xenomai, the kernel and its corresponding adeos-ipipe patch from the links given in the [[.:​xenomai_install_on_roboard#​Downloads]] section. 
- 
-If you want to use your own kernel version, for kernel **X.X.X.X**,​ download patch **adeos-ipipe-X.X.X.X-ARCH-Y.Y-Y.patch**. Where **X** is the kernel version, **ARCH** the architectire you plan to use and **Y** the version of the adeos patch. 
-For example, if you want to patch kernel version **2.6.30.10** for an **x86** architecture,​ download adeos patch **adeos-ipipe-2.6.30.10-x86-2.4.09.patch** ((The kernel version trivial number could lightly differ. But it is more safe to keep same version for kernel and adeos patch)). 
- 
-Extract kernel sources : 
-<​code>​ $ tar xjpf linux-2.6.32.11.tar.bz2</​code>​ 
- 
-Extract Xenomai sources : 
-<​code>​$ tar xjpf xenomai-2.5.2.tar.bz2</​code>​ 
- 
-Copy the adeos patch in the Xenomai source tree : 
-<​code>​$ mv adeos-ipipe-2.6.32.11-x86-2.6-02.patch xenomai-2.5.2/​ksrc/​arch/​x86/​patches/</​code>​ 
- 
-Enter Xenomai source directory : 
-<​code>​$ cd xenomai-2.5.2/</​code>​ 
- 
-Now prepare your kernel by applying suitable patches : 
-<​code>​$ scripts/​prepare-kernel.sh --linux=../​linux-2.6.32.11/​ --adeos=ksrc/​arch/​x86/​patches/​adeos-ipipe-2.6.32.11-x86-2.6-02.patch --arch=i586 
-patching file arch/​x86/​Kconfig 
-patching file arch/​x86/​include/​asm/​apic.h 
-patching file arch/​x86/​include/​asm/​apicdef.h 
-... 
-... 
-... 
-patching file mm/memory.c 
-patching file mm/​mmu_context.c 
-patching file mm/​vmalloc.c</​code>​ 
- 
-====== Build patched kernel package ====== 
- 
-Next configure your kernel with **$ make menuconfig** command or use my {{:​robotics:​computing:​xenomai:​config_roboard.txt|configuration file}} : 
-<​code>​$ cp config_roboard.txt linux-2.6.32.11/​.config</​code>​ 
- 
-Then you can launch the build process that will result in a nice debian package((If the **make-kpkg** command is unavailable on your Ubuntu, install the following packages : **[[apt://​build-essential,​kernel-package,​initramfs-tools,​fakeroot,​debconf-utils,​dpkg-dev,​debhelper,​bin86|build-essential kernel-package initramfs-tools fakeroot debconf-utils dpkg-dev debhelper bin86]]**)) : 
-<​code>​$ cd linux-2.6.32.11 
-$ make-kpkg --uc --us buildpackage 
-exec debian/​rules ​ DEBIAN_REVISION=2.6.32.11-10.00.Custom ​ UNSIGN_CHANGELOG=YES ​ UNSIGN_SOURCE=YES ​ buildpackage 
-... 
-... 
-... 
-echo done >  debian/​stamp/​build/​buildpackage</​code>​ 
- 
-====== Patched kernel install ====== 
- 
-Copy the xenomai sources you have already downloaded and the kernel package you have created on your USB key. 
-Plug the USB key on your roboard. 
-Then install first the kernel package with the following command: 
-<​code>​$ sudo dpkg -i /​media/​USB_KEY/​linux-image-2.6.32.11_2.6.32.11-10.00.Custom_i386.deb</​code>​ 
- 
-Copy the Xenomai sources archive on your roboard and decompress it. 
-<​code>​$ sudo cp /​media/​USB_KEY/​xenomai-2.5.2.tar.bz2 /​usr/​local/​src/​ 
-$ cd /​usr/​local/​src/​ 
-$ tar xjpf xenomai-2.5.2.tar.bz2</​code>​ 
- 
-Now reboot the roboard and boot on your new kernel. 
- 
-====== Build and install Xenomai libraries ====== 
- 
-Enter the directory where you decompressed the Xenomai sources archive to build and install user space libraries. 
-<​code>​$ cd /​usr/​local/​src/​xenomai-2.5.2/​ 
-$ sudo ./configure 
-... 
-$ sudo make 
-... 
-$ sudo make install</​code>​ 
- 
-====== Test Xenomai ====== 
- 
-Enter the native API example directory, build and launch the test which is a simple task repeated every seconds :  
-<​code>​$ cd examples/​native/​ 
-$ sudo make 
-... 
-$ sudo ./​trivial-periodic ​ 
-Time since last turn: 1000.015421 ms 
-Time since last turn: 1000.009955 ms 
-Time since last turn: 999.989784 ms 
-Time since last turn: 999.999659 ms 
-Time since last turn: 1000.000116 ms 
-Time since last turn: 999.999863 ms 
-.... 
-</​code>​ 
robotics/computing/xenomai_install_on_roboard.1302867904.txt.gz · Dernière modification: 2012/09/20 10:52 (modification externe)