vm-larix‎ > ‎Toolchain‎ > ‎

Testing GCC

Building the NAND image from source

The instructions on this page is to test whether the cross-compiler is working as expected.

The sources for the binaries used in the document here may be download and compiled. An excellent set of instructions are being maintained by the beagleboard project hosted on google code. However, the instruction on this page are meant to boot the actual hardware using the SD card and not for emulation. One might have to follow the instructions for emulation and replace the files downloaded from the qemu-omap3 project with the ones compiled. If this causes failure, it might be possible to pin point the file that is resulting the bad NAND image by replacing one file at a time - replace the given x-loader binary with the one just compiled and test it, if that works, try replacing the uBoot and so on.

http://elinux.org/BeagleBoard - is probably the holy grail of beagle board related documents. This makes a lot of other documents on the internet including this one redundant.

For building from source, this document shall use source from the http://gitorious.org/beagleboard-validation/ repository.

x-loader

git clone git://gitorious.org/x-load-omap3/mainline.git xloader cd xloader/ make distclean make omap3530beagle_config make CROSS_COMPILE=arm-none-eabi-

Note: The code from this git repository was compiled on 2nd April 2011 and produced x-loader binary - version 1.4.4ss

OR

git clone git://gitorious.org/beagleboard-validation/x-load.git xloader-ti cd xloader-ti/ make distclean make omap3530beagle_config make CROSS_COMPILE=arm-none-eabi-

Note: The code from this git repository was compiled on 2nd April 2011 and produced x-loader binary - version 1.4.4ss

The instructions on the elinux beagleboard page assume that one is using compilers from Code Sorcery. However, we built our own copy of arm-none-eabi target from GCC here. The above process generates an x-load.bin file. The x-load.bin file must be signed using signGP.

signGP

The signGP looks for x-load.bin and signs it to create a new file - xload.bin.ift

u-boot

git clone git://git.denx.de/u-boot.git u-boot-mainline
cd u-boot-mainline git checkout --track -b omap3 origin/master
make CROSS_COMPILE=arm-none-eabi- mrproper
make CROSS_COMPILE=arm-none-eabi- omap3_beagle_config
make CROSS_COMPILE=arm-none-eabi-

Note: The code from this git repository was compiled on 2nd April 2011 and produced u-boot binary indicating a date of 2011.03-00004-g67a490d and states that it was meant for beagleboard revision C4

OR
git clone git://gitorious.org/beagleboard-validation/u-boot.git u-boot-ti
cd u-boot-ti git checkout --track -b omap3 origin/master

make CROSS_COMPILE=arm-none-eabi- mrproper
make CROSS_COMPILE=arm-none-eabi- omap3_beagle_config
make CROSS_COMPILE=arm-none-eabi-
Note: The code from this git repository was compiled on 2nd April 2011 and produced u-boot binary indicating a date of 2010.03 and states that it was meant for beagleboard revision Ax/Bx.

This generates a u-boot.bin file. This u-boot has the beagle board splash image stripped off for file size reasons.

The Kernel and RAMdisk

This is a project to run the vmlarix operating system on the beagle board and not to run linux. So we do not go into the compilation of the kernel and creation of the RAMdisk. The process so far of loading the x-loader and u-boot.bin is to assure ourself that the beagle board is functional and free of faults and we may rule out ant future errors with a higher degree of confidence to board faults.

This generates a u-boot.bin file. This u-boot has the beagle board splash image stripped off for file size reasons.


Comments