All Forums
 Embedded Linux
 Linux Downloads and Documents
 EABI 2.6.17.9-ep93xx-pxa-ads3
 Forum Locked
 Send Topic to a Friend
 Printer Friendly
Author Topic  

jlackey

213 Posts

Posted - 30 Jan 2007 :  17:56:37  Show Profile  Email Poster
Experimental EABI Linux 2.6.17.9-ep93xx-pxa-ads3 Experimental

Note: Newer non-experimental kernels are available that support EABI. See the Linux Kernels topic to find the latest version that supports EABI.
EABI is a new application binary interface (ABI) for Linux that offers performance improvements over the old ABI. See the EABI FAQ for details.

The experimental kernels offered here are based on Linux 2.6.17.9-ep93xx-pxa-ads3 but are configured to use EABI. An EABI root file system is required to use these kernels.

If you are willing to experiment, you are welcome to try these kernels and the EABI root file system. Note that this project is under development so be prepared for some rough edges and abrupt updates. That being said, we welcome your feedback and your contributions to linux and EABI development.
This version
  • Supports BitsyXb, Sphere, Portal, and VGX boards.

  • Uses GNU EABI, a new application binary interface (ABI) for Linux ARMŽ Ltd.

  • Has the same warnings and requirements as Linux 2.6.17.9-ep93xx-pxa-ads3.

  • Additionally, requires are more recent toolchain to build the kernel (see below).
This version does not
  • Support the old ABI so you cannot use it with our standard root file systems or with any root file system you may have created in the past.

GNU Toolchain
    To build an EABI kernel, you'll need a toolchain that can build an EABI target.

    Use arm-unknown-linux-gnueabi-gcc-4.1.1 [1] [MD5] or later to cross-compile the kernel on an x86 linux system. This is the toolchain we used to build the precompiled kernels provided below.

    Download the toolchain from the link above, untar it in your root directory, and add it to your path.
    cd /
    bzcat eabi-gcc-4.1.1.tar.bz2 | tar -x
    PATH=/opt/crosstool/gcc-4.1.1/bin:$PATH
    The /opt/crosstool/gcc-4.1.1 path is hardcoded. Do not attempt to install it anywhere else. This is the only location that will work.

    Note that this toolchain does not include glibc. It is only intended for cross-compiling linux kernels. To (re)build user programs, use the native compiler in the EABI root file system.

    [1] Don't be alarmed by the 'unknown' in the toolchain name. This field can be used to identify a specific distribution (e.g. 'suse') or feature to distinguish different toolchains from each other. There isn't anything really distinctive about this toolchain and it doesn't build for a particular distribution so the default, 'unknown', is used.

Kernel source and patches
    Begin with the base directory and patches for Linux 2.6.17.9-ep93xx-pxa-ads3.
    Then apply this patch: linux-2.6.17.9-ep93xx-pxa-ads3-eabi.diff.bz2 (~14kB)
    bzcat linux-2.6.17.9-ep93xx-pxa-ads3-eabi.diff.bz2 | patch -p1

    Configure the kernel using the default eabi configuration settings for your board. The naming convention is
    make machineeabi_defconfig
    where machine is the name of your board. You can change individual configuration settings later with
    make menuconfig

    After executing the line below for your board
    make adsbitsyxbeabi_defconfig
    make adssphereeabi_defconfig
    make adsportaleabi_defconfig
    make adsvgxeabi_defconfig
    you can build the kernel with
    make zImage

    The kernel zImage will be in the arch/arm/boot/ directory.

Root File System
    As stated above, you must use an EABI root file system. Non-EABI root file systems are not suitable for use with these kernels. A link to the latest EABI root file system can be found in the EABI FAQ.

Precompiled Kernel Images
  Topic  
 Forum Locked
 Send Topic to a Friend
 Printer Friendly
Jump To:
Eurotech Support Forums © Eurotech Inc. Go To Top Of Page
This page was generated in 0.02 seconds. Snitz Forums 2000