Menu

i810fb kernel splash problem

2002-09-08
2002-09-09
  • Zamboni Emanuele

    Hello,
      first i'm sorry cause i'm beginner in this field, and my questions could be wrong in some way.
    I can't install bootsplash for Mandrake 8.2 for my i815 vga.
    I think the problem is than /proc/splash don't exists. But that file is created by kernel when it recognise in lilo vga=788, for example.
    I tried it but, cause fb initialize later, happen a vga vesa error : only text lines resolution are possible.
    My kernel is compiled only with i810 patch and splash ability enabled. (vesa and vga16 obviously disabled). Lilo have the line "append= " as describe in i810fb doc.
    At the startup framebuffer load in correctly resolution after a while. But only showing text instead of graphics image packed in initrd- ....
    Is there a way to give "vga=???", so kernel can create /proc/splash file.
    "vga=???" in "append= " line don't work.
    Or is there another way to setup a graphics image in framebuffer during startup?

                                                    Zamboni Emanuele
                                                 Autoprog Software House   

     
    • Antonino Daplas

      Antonino Daplas - 2002-09-09

      True, the i810/i815 chipset does not support a linear framebuffer, thus all VESA graphics mode are not supported.  The option 'vga=788' is directed specifically for the VESA framebuffer.

      If I'm to guess,  I believe the '/proc/splash' file is just a means of telling a user-level program that vesafb is enabled, and it may be a means of controlling the display of the splash. 

      I guess the first thing you may want to do is mimic vga=788 (that would be 800x600-16bpp) by booting with the following append options:

      append="video=i810fb:xres=800:yres=600:vyres=600:bpp=16"

      Then you can try to search your init scripts for the actual command on how the 'splash image' is actually displayed.  You can try running this manually.

      If the above works, then search your init scripts again on how to bypass /proc/splash.

      Of course, I'm probably way off base, so I will need more information on how this works.  Please direct me to a link.

      The most direct way is to display an image to the framebuffer is to treat /dev/fb0 as a regular file and do a copy of an image file to it.  This is demonstrated by doing a

      cat /dev/urandom > /dev/fb0

      However, the image file must be in raw framebuffer format.  There should be utilities on how to convert/display an image file to the framebuffer.  I guess  http://linux-fbdev.sourceforge.net is a good page to start searching.

      The other/faster/preferred way is memory mapping the framebuffer
      itself.  This is how most fb-based applications work.

      Also, you can change how the standard penguin logo is displayed, and
      change it with one of your own.  Try this site (I haven't visited this
      yet):

      http://www.linux-mons.be/projets/framebuffer_logos/

      Tony

       

Log in to post a comment.