Linux Boot Logo

From ArmadeusWiki
Revision as of 18:44, 25 July 2008 by JulienB (Talk | contribs) (Add your file to Linux build system)

Jump to: navigation, search

On this page we will explain you how to change the Boot Logo/Screen of Linux.

By default the following screen is displayed on you LCD:

Default Boot.png

Create an image to suitable format (C include file)

  1. create a new image fitting the size of your LCD (320x240 or 480x272), with The Gimp (for example).
  2. save it in PPM RAW file format, let's say my_boot_logo.ppm
  3. install Netpbm package:
    $ sudo apt-get install netpbm 
  4. reduce the number of colors in your image to 224:
     $ ppmquant 224 my_boot_logo.ppm > my_boot_logo_224.ppm
  5. convert it to PPM ASCII format:
     $ pnmnoraw my_boot_logo_224.ppm > my_boot_logo_ascii_224.ppm
  6. copy it to ./buildroot/build_arm/linux-2.6.23.1/drivers/video/logo/ directory with a name ending with _clut224.ppm:
     cp my_boot_logo_ascii_224.ppm ./buildroot/build_arm/linux-2.6.23.1/drivers/video/logo/logo_custom_clut224.ppm
  7. Linux will automatically convert your .ppm to a .c file after you have added it to the build system with ./buildroot/build_arm/linux-2.6.23.1/scripts/pnmtologo script

Add your file to Linux build system

  1. If you have overwritten ./buildroot/build_arm/linux-2.6.23.1/drivers/video/logo/logo_armadeus_clut224.ppm with your own logo at the previous stage, then you can jump the following steps; otherwise:
  2. Edit ./buildroot/build_arm/linux-2.6.23.1/drivers/video/logo/Makefile
  3. Add it your logo file name at line 16:
     obj-$(CONFIG_LOGO_ARMADEUS_CLUT224)     += logo_custom_clut224.o
  4. Edit ./buildroot/build_arm/linux-2.6.23.1/drivers/video/logo/logo.c
  5. Add it your logo C struct name at line 36:
    extern const struct linux_logo logo_custom_clut224;
    
  6. Add it your logo C struct name at line 110:
#ifdef CONFIG_LOGO_ARMADEUS_CLUT224 <br><br>        
    /* Armadeus Linux logo */
    logo = &logo_custom_clut224;
#endif

Recompile & install kernel

  • Then recompile your kernel:
$ make linux

and install it on your board.

  • Restart your board and you should see your image:

Custom Boot Logo with login.png

Remove Login from framebuffer terminal

  1. On your target, edit /etc/inittab
  2. Comment line 28:
    #tty1::respawn:/sbin/getty 38400 tty1
    
  3. save it and restart your system

Links