Imx6 Kernel splash screen

From embeddedTS Manuals
Revision as of 11:25, 31 August 2016 by Mark (talk | contribs)

This board uses two splash screens. By default they display the same image. U-boot draws the very first splash screen, and the kernel the second. U-boots by default is only present for about a second while the kernel, device tree, and optionally the FPGA are loaded. As a quick change you can disable the u-boot splash and just use the kernel's splash with:

# This tells the splash command to just run "true" which returns immediately instead of
# drawing a splash screen
env set splash true
env save

Take your logo file and convert it to a .bmp, and compress it with gz. The logo should be as small and simple as possible to compress well and load fast.

Install imagemagick on your host system to convert to the correct format.

convert yoursplash.png -colors 256 -depth 8 -compress none splash.bmp3
gzip splash.bmp3

This is provided in u-boot primarily for users that may want to give some feedback to the user. For example, a developer may want to use this u-boot splash as failed to boot screen or to show the user a message while updating from custom u-boot scripts.

After u-boot runs the Linux kernel is typically started which will set up the clock tree, and reinitialize hardware. It is not possible for the u-boot splash to persist through this, but the kernel can redraw the splash a second later.

The kernel splashscreen allows 224 colors. It also allows up to the full screen resolution, but for fastest boot speed it should be kept as small as possible. The image will be centered around a black background.

To convert your image, for example, "mylogo.png":

convert mylogo.png mylogo.ppm
ppmquant 224 mylogo.ppm > mylogo-224.ppm
pnmnoraw mylogo-224.ppm > logo_user_clut224.ppm
cp logo_user_clut224.ppm <kernel build sources>/drivers/video/logo/

Now recompile the kernel following the guide in the previous section.

If you would like to disable the kernel logo completely you can add the kernel cmdline "logo.nologo" in u-boot.