Ubuntu bootloader

  
 * Step 2

= Preliminary settings =

Tool-chain
The below instructions suppose that you will be cross-compiling from a Ubuntu (x86) host, using the CodeSourcery tool-chain. It is advised to use a recent tool-chain like the 2010-q1-202 (gcc 4.4.1). The path to the CodeSourcery binaries shall be added to the $PATH environment variable.

Workstation
The instructions on this page have been verified on a Ubuntu workstation running Lucid (Karmic or older Ubuntu versions may also work)

SD card capacity
A Ubuntu file-system with a graphical interface (UNE for example), requires at least a 4GB SD card. A smaller SD card is sufficient if you do not need to install a graphical interface.

= Bootloader = OMAP4 uses u-boot + x-loader to get the platform booted. Detailed information on how this works is detailed here: http://omappedia.org/wiki/Bootloader_Project.

The OMAP4 dedicated instructions are described below: (NOTE:as of Dec 27,2010, the Makefile in L24.10, L24.11 tags is substantially different, and does not have the omap4430sdp_config target. Stick with L24.9 or omap4_dev for now.)
 * Version tagging into u-boot and x-loader trees: some stable release are tagged into u-boot and x-loader trees. It is advised to use the most recent (higher number) of these stable tags, and the same number for u-boot and x-loader (this will guarantee they are aligned). The tags to use for OMAP4 are: L24.x (with x being the highest value). Note that these tags are applied in the omap4_dev branch of the u-boot and x-loader trees.

mkdir bootloader cd bootloader
 * setup folders:

git clone git://git.omapzoom.org/repo/u-boot.git cd u-boot git checkout 
 * Get u-boot and checkout the omap4_dev branch:

make ARCH=arm distclean make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- omap4430sdp_config make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- => Generates: ./u-boot.bin
 * Build u-boot for OMAP4

cd .. git clone git://git.omapzoom.org/repo/x-loader.git cd x-loader git checkout  (note that both u-boot and x-loader folders must be at the same directory level)
 * get x-loader and checkout the omap4_dev branch:

make ARCH=arm distclean make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- omap4430sdp_config make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- ift => Generates ./MLO
 * build x-loader for OMAP4:

The generated MLO and u-boot.bin files will have to be copied on the SD card.

Note: To get the list of L24.x tags, once in the cloned u-boot or x-loader folder, type: git tag | grep L24