Change boot logo

From Gumstix User Wiki
Jump to: navigation, search

custom logo by the following method:


The gumstix-fb-logo.patch is a diff between a custom image and the default Penguin 'logo_linux_clut224.ppm'.

This image can be found in (for a Verdex):

gumstix-oe/tmp/work/gumstix-custom-verdex-angstrom-linux-gnueabi/gumstix-kernel-2.6.21-r1/linux-2.6.21/drivers/video/logo


You'll need the original image, so you can perform the following steps to get a pre-patched kernel:


bitbake -c clean gumstix-kernel

bitbake -c unpack gumstix-kernel


After you implement your patch, do:

bitbake gumstix-kernel


to finish the build.


You can then copy uImage over, and hopefully have a pretty, custom logo.


If the compile fails, it's likely due to a problem with your PPM. In Gimp, you need to set the palette to 224 colors and make sure you save it as ascii.



A more detailed description:


Custom Boot Logo/Image for Verdex

To implement a custom image or logo that will show when the Verdex is booting up, you need to create a patch using diff.

The patch is a diff between the default linux Penguin logo and the new image you want to display. The default linux Penguin logo is found in the following directory:

  .../gumstix-oe/tmp/work/gumstix-custom-verdex-angstrom-linux-gnueabi/gumstix-kernel-2.6.21-r1/linux-2.6.21/drivers/video/logo 

It's file name is: logo_linux_clut224.ppm

First steps are to start off with a clean gumstix-kernel, so do the following:

   bitbake -c clean gumstix-kernel
   bitbake -c unpack gumstix-kernel


Now, 5 steps to create the patch using diff. Do the following:

0. Make sure the logo_linux_clut224.ppm and your new image are in the same directory (or type the full path to each)

1. Use the diff tool:

   diff -c logo_linux_clut224.ppm new_image_logo.ppm > my-logo.patch

2. Open the newly created my-logo.patch in a text editor, and add the following 2 lines at the head of the file

   Index: linux-2.6.21gum/drivers/video/logo/logo_linux_clut224.ppm
   ===================================================================

3. Save the my-logo.patch with those two lines added

4. Copy the my-logo.patch to the following directories, and update the name of the patch:

   cp my-logo.patch .../gumstix-oe/com.gumstix.collection/packages/linux/gumstix-kernel-2.6.21/gumstix-fb-logo.patch
   cp my-logo.patch .../gumstix-oe/org.openembedded.snapshot/packages/linux/linux-2.6.21/gumstix-fb-logo.patch

Now that you have your patch in the correct directories, rebuild the kernel:

   bitbake gumstix-kernel

Finally, copy the kernel to your verdex using the steps given in this link: http://gumstix.org/software-development/yocto-project/190-verdex-svn-repository.html [1]

It isn't necessary to reload the filesystem, so you can skip down to the end where you just copy over the kernel.


A few notes:

  • Using diff doesn't produce the two header lines. The bitbake will fail without those two lines.
  • I've only tried this with image sizes 480 px wide and less than or equal 216 px high
  • Make sure to save your new logo using GIMP as a .ppm ASCII file, with the Image > Mode > Indexed set for Maximum number of colors as 224