Tag Archives: beagle board splash

Changing the uBoot Splash Screen

To change the uBoot Splash you need to compile your own uBoot image and move it to your SD Card or flash it to your System. We recommend to stick with the SD/MMC solution and thus have still a fallback solution on your flash.

You can get the sources for uBoot from the denx git repository.

git clone git://git.denx.de/u-boot.git u-boot-main
cd u-boot-main
git checkout --track -b omap3 origin/master

Download the following u-boot_v1_beagle_logo.patch and patch the files in the u-boot-main folder you just created. Now you may adjust your splash screen. It is stored in the logo.h header file in the beagle board folder.
Display the header file using gedit

gedit board/omap3/beagle/logo.h

edit the header file
edit the header file

To create a new Splash you can use GIMP to export the graphic as “.h” file.
You can then copy the *header_data array to the logo.h and adjust beagle_width and beagle_height to your image size.

Once saved you can now compile your u-Boot.bin with the following commands:

make CROSS_COMPILE=arm-none-linux-gnueabi- mrproper
make CROSS_COMPILE=arm-none-linux-gnueabi- omap3_beagle_config
make CROSS_COMPILE=arm-none-linux-gnueabi-

Note: you can set the CROSS_COMPILE prefix to the path of your favorite cross compiler. We used the Codesourcery toolchain available here.

Done! Copy your u-boot.bin to your MMC/SD card. Insert your card and boot your Beagle Board; you should now see your customized Splash Screen.

Normally your uBoot is loaded from u-boot.bin on your SD/MMC-Card. Yet all arguments are taken from the NAND-Flash unless you create a boot script on your SD/MMC. More information about how to build a boot script can be found on our Developing on an Embedded System site.