BuildingBabbageRedBoot

Differences between revisions 1 and 2
Revision 1 as of 2009-03-11 17:16:05
Size: 1725
Editor: cpe-67-242-211-173
Comment:
Revision 2 as of 2009-03-11 17:17:29
Size: 1721
Editor: cpe-67-242-211-173
Comment:
Deletions are marked like this. Additions are marked like this.
Line 9: Line 9:
(there is a bug with ecosconfig with newer TCL's where it   does not find the include directory so we need to specify it
by hand)
# there is a bug with ecosconfig with newer TCL's where it does not find the include directory so we need to specify it by hand)

The Freescale Babbage board uses RedBoot as its bootloader. We carry a small set of patches against it to allow it to build with a non-CodeSourcery ARM EABI toolchain, and to include the correct machine id. To successfully build RedBoot, you need an arm-eabi toolchain. You can either compile one yourself, use a prebuilt one, or use the CodeSourcery EABI ARM toolchain.

1. Build the ecos configuration tools

sudo apt-get install tcl-dev tk-dev
bzr co lp:~canonical-mobile/redboot/fsl-ecosconfig
mkdir fsl-ecosconfig/build
pushd fsl-ecosconfig/build
# there is a bug with ecosconfig with newer TCL's where it does not find the include directory so we need to specify it by hand)
TCL_INC_DIR=/usr/include/tcl ../src/configure
make
sudo make install
popd

2. Build RedBoot

bzr co lp:~canonical-mobile/redboot/fsl-redboot
export ECOS_REPOSITORY=`pwd`/fsl-redboot/packages
mkdir redboot_build
pushd redboot_build
ecosconfig new mx51_babbage redboot
ecosconfig import ${ECOS_REPOSITORY}/hal/arm/mx51/babbage/current/misc/redboot_ROMRAM.ecm
ecosconfig tree

# If using a toolchain targetted to arm-none-eabi (arm-none-eabi-gcc is in the PATH)
make
# If using the ecos prebuilt toolchain, you will need to specify the CC/LD/AR/OBJCOPY names by hand

make CC=arm-eabi-gcc LD=arm-eabi-ld AR=arm-eabi-ar OBJCOPY=arm-eabi-objcopy

The resulting binary comes out in install/bin/redboot.bin, which can be DD'ed to the board, or uploaded over XMODEM, go'ed to, and then installed via the romupdate command.

ARM/BuildingBabbageRedBoot (last edited 2009-03-11 17:18:11 by cpe-67-242-211-173)