This section shows the basic information of how to build X-Loader. X-Loader is the first bootloader that works in
bc10 as power is on. X-Loader used here is originally developed for BeagleBoard. Since bc10 is a clone of Beagleboard,
the building method for BeagleBoard's can be applicable to X-Loader for bc10. The information of the boot process of
bc10 and the placement of X-Loader is available at bc10/booting.
- Prepare toolchain for bc10.
- Examine whether the two toolchains described below are already built or not.
- arm GNU/Linux toolchain (arm-none-linux-gnueabi-) developed by CodeSourcery.
- OpenEmbed Linux's toolchain (arm-angstrom-linux-gnueabi-), which is commonly used for the
development environment of BeagleBoard.- This section mainly explains the case that the toolchain of OpenEmbedded Linux is used.
- To use the toolchain of OpenEmbedded, set up the environment variable.
export PATH=${WORK_DIR}/OE/angstrom-dev/cross/armv7a/bin:${PATH} export ARCH=arm export CROSS_COMPILE=arm-angstrom-linux-gnueabi-
- Obtain the source code of X-Loder for bc10 from git repository. This X-Loader is specifically
modified for installing Android-2.2_1.1 (Froyo) on bc10.git clone git://gitorious.org/~bc-dev/x-load-omap3/x-load-bc10.git x-load-bc10 cd x-load-bc10/ git checkout -t -b bc10 origin/bc10- Get the source code of X-Loader for OMAP3 from the git repository. This is for OMAP3 equipped
divices in general.git clone git://gitorious.org/x-load-omap3/mainline.git xloader cd xloader/
- Let the build process for bc10 begin.
make distclean make omap3530bc10_config make- Start the build process for OMAP3/beagleboard clones.
make distclean make omap3530beagle_config make- If build is succeeded, x-load.bin is produced.
- Since x-load.bin does not match the format and specifications of OMAP BootROM, it does not work in NAND Flash
and SD Card as a bootloader. To solve this issue, x-load.bin is needed to be converted with signGP. signGP is a
tool that adds a new header to the image file of X-Loder. For more information, please read the section below.- The executable file of signGP can be download URL below
- This is how to use signGP.
./signGP x-load.bin- x-load.bin.ift is produced if signGP has successfully converted the original file.
- Because of the specifications of BootROM, X-Loder is need to be placed at the specific place and in the certain
order. The newly created X-Loader file is needed to be changed its name to MLO and be placed in the root
directory. For farther questions about placing X-Loader, please visit and read bc10/booting.
- signGP adds a new simple header to the image file of the bootloader. As BootROM of OMAP35x accesses and reads
NAND Flash and SD card, BootROM needs the header at the top of the image file of the bootloder. The structure of
the header is described below.
+------------------------------------------+ | Length (4byte) | +------------------------------------------+ | LoadAddr (4byte) | +------------------------------------------+ | BootLoader image | | ... | +------------------------------------------+
- Length
- This determines the size of the image file.
- LoadAddr
- It points out the address of the image file.
- The source file is available at BeagleSourceCode.
2010/07/23 Initial release
2010/09/16 Add git repository for the bc10 (froyo) specific source code and the explanation for build procedss