This project supports U-Boot boot loader for BeagleBoard, BeagleBoard-xM and BeagleBone in the U-Boot mainline.
The configuration for BeagleBoard and BeagleBoard-xM is omap3_beagle. The configuration for BeagleBone is am335x_evm.
- Install ARM cross-compiler. On Ubuntu:
- sudo opkg install gcc-arm-linux-gnueabi
- git clone git://git.denx.de/u-boot.git && cd u-boot
- ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- make am335x_evm_config|omap3_beagle_config
- ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- make
Typical boot process for BeagleBoard using U-Boot includes two U-Boot phases:
- The BeagleBoard ROM bootloader first loads a file called “MLO” from the SD card. This requires special formatting of the SD card and copying of the “MLO” file to the SD card. The “MLO” file is provided by U-Boot’s Secondary Program Loader (SPL) functionality. It is placed into the u-boot folder upon build.
- The U-Boot SPL configures the off-chip memory and then loads the full U-Boot. The file is typically called “u-boot.img” and SPL will typically look for it in the root folder of a FAT partition, but other options are possible.
More information can be found on the eLinux.org wiki.