Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
fbsplash Mini Guide for 2.6.10(-r5, -r6) ck-sources
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Documentation, Tips & Tricks
View previous topic :: View next topic  
Author Message
Naurnim
n00b
n00b


Joined: 02 Mar 2005
Posts: 10
Location: Uruguay

PostPosted: Wed Mar 02, 2005 9:17 pm    Post subject: fbsplash Mini Guide for 2.6.10(-r5, -r6) ck-sources Reply with quote

fbsplash Mini Guide for 2.6.10(-r5, -r6) ck-sources

Introduction
This is yet another humble fbsplash guide, Its objective is getting it working with 2.6.10(-r5/-r6) ck-sources and Udev.
There is a FAQ at bottom if you have any question regarding this mini guide.


Down to business

Before we start
You must have ck-sources emerged, and /usr/src/linux linked to it.
And one more thing, play it safe, this is a golden rule, have a working kernel as a backup.
Oh, and of course /boot must be mounted.
Patching
Download the following patches:

  1. vesafb-tng-0.9-rc5-2.6.10-rc2.patch
  2. fbsplash-0.9.1-r1-2.6.10.patch

Both can be obtained from Spock´s site


Ok, let's patch!



  1. Code:
    cd /usr/src/linux
    Go into the source tree directory to start working


  2. Code:
    cat <path_to_where_patch_is>/vesafb-tng-0.9-rc5-2.6.10-rc2.patch | patch -p1
    Patching the vesafb-tng driver first.
    It should patch with no errors, nothing should be rejected.


  3. Code:
    cat <path_to_where_patch_is>/fbsplash-0.9.1-r1-2.6.10.patch | patch -p1

    This will not patch smoothly like the other, It will reject when patching /include/linux/sysctl.h, and save the rejection in sysctl.h.rej under the same directory, now you must go and see what it couldn't patch, it will even tell you the lines. In case you are just too lazy to go there and look ;), this is what you should add to sysctl.h right below "KERN_COMPUTE=68,"
    Code:
    KERN_FBSPLASH=67,


Congratulations, you're done with patching.

Initramfs image && splashutils
Ok, let me explain here for a second, there are two ways of treating the Initramfs image, one is compiling the initramfs image directly into the kernel and the other is loading the initramfs image dynamically at boot time. In this mini guide we will compile the image directly into the kernel since doing it the other way didn't worked for me, and I believe it doesn't work at all(at least for me with ck-sources :) ), you are free to try if you want, and if it works please post how you manage to do it.
A couple of notes before we proceed:
Compiling the image directly into the kernel will make your kernel fat :D, it will expand its size around 0.4 - 0.5 MB, another negative fact is that you'll have to recompile your kernel every time you change your gensplash theme.
Having said that, let's continue:



  1. Code:
    emerge splashutils
    Of course, you don't have to do this if you're recompiling the kernel.
    From the wiki: "The Splashutils are the binaries that are used to load images(and to decode jpeg, png, etc)."



  2. Code:
    rm /usr/src/linux/usr/initramfs_data.cpio.gz
    If there is one at all


  3. Code:
    splash_geninitramfs -v -g /usr/src/linux/usr/initramfs_data.cpio.gz -r 1024x768 emergence

    This builds the image using the emergence theme, please do not change the theme nor the resolution, unless you really know what you're doing, My advice is that you make sure it works before changing anything.


  4. Code:
    cd /usr/src/linux



  5. Code:
    touch usr/initramfs_data.cpio.gz



  6. Do you have your.config over there?
    Code:
    make oldconfig


Don´t compile the kernel yet, proceed with the next section.

Configuring your Kernel
Here I describe the options which I think are necessary for fbsplash, perhaps some are optional, but if you're unsure, do it this way.
I also must emphasize that since this guide uses udev, there is one option wich disables devfs support.
Enough, here it is: :)
Code:

        --> Device Drivers
     --> Block Devices
       -<*> RAM Disk Support (CONFIG_BLK_DEV_RAM)
       -<n> Default number of RAM Disks (CONFIG_BLK_DEV_RAM_COUNT)
       -<4096> Default RAM Disk Size (CONFIG_BLK_DEV_RAM_SIZE)
     --> Graphics Support
       -[*] Support for framebuffer devices (CONFIG_FB)
         -<*> VESA VGA Graphics Support (CONFIG_FB_VESA)
           --> VESA Driver Type
        -[*] VESA-TNG (CONFIG_FB_VESA_TNG)
      -(640x480@60) VESA Default Mode (CONFIG_FB_VESA_DEFAULT_MODE)
       --> Console display driver support
         -<*> Framebuffer Console Support (CONFIG_FRAMEBUFFER_CONSOLE)
       -[*] Support for the framebuffer splash (CONFIG_FB_SPLASH)
     --> Character devices
       -<*> /dev/agpart (AGP Support) (CONFIG_AGP)   # This Options are probably optional, but play it safe.   
        -- select appropiate driver
   --> File Systems          # This Option is for udev
     --> Pseudo File Systems
       -[] /dev/file system support (CONFIG_DEVFS_FS)    # Unselect it 
       

After you configure the kernel, compile it and copy the files to /boot.
Code:
make && make modules_install



/dev/fbsplash and Udev
You must have udev properly installed, in case you don't please follow the Udev Guide before we continue.
Udev will create /dev/fbsplash dynamically.
Hint: You can create /dev/fbsplash statically with " mknod /dev/fbsplash c 10 63" but It only allowed me to use fbsplash with the consoles, not at boot, plus quoting Spock " It will break sooner or later", you should _not_ do it this way, this is just a hint. :)
Install fbset too.
Code:
emerge fbset

Now we will edit splash and add it to the appropriate runlevel:



  1. First, make sure there is no bootsplash in the runlevels
    Code:
    rc-update del bootsplash




  2. Now, you have to edit /etc/conf.d/splash, read the comments, it will tell you how-to enable the background to all consoles.



  3. When you're done, execute:
    Code:
    rc-update add splash default



Configuring the bootloader
You can see here two examples:
Code:

   =====Lilo Configuration Example==========
       image=/boot/kernel-ck-2.6.10-r5
         label="Gentoo"
         root=/dev/hda3
         append="video=vesafb:ywrap,mtrr1024x768-32@85 splash=silent,theme:emergence"
         read-only
         

Don't forget to run /sbin/lilo.
Code:
 
   =====Grub Configuration Example(from the wiki)=========== 
            title  Gentoo
            root (hd0,0)
            kernel (hd0,0)/kernel-2.6.8-gentoo-r1 root=/dev/hda3 video=vesafb:ywrap,mtrr,1280x1024-32@70 splash=silent,theme:newtheme
         


..::: The End:::.. Reboot and good luck ! : D
For support and discussion of the mini guide click here
References
http://gentoo-wiki.com/HOWTO_fbsplash
http://dev.gentoo.org/~spock/

FAQ

Yet another fbsplash guie, why?
Well, I know there are many guides and howtos out there, but one more doesn't hurt. : ) I wrote this mini guide specially for ck-sources 2.6.10(-r5, -r6) , I don't even know if it deserves to be named like this, perhaps "basic set of instructions" is a more proper name. Anyway I just hope someone will find the information useful.

Who are you? Why should I even listen to you?
I am just a humble mortal trying to help the community.

I don't use udev, will this work?
Probably yes, just make sure you don't copy it verbatim, and use devfs instead.

I don't use ck-sources, will this work?
Every fbsplash guide or howto have a similar base, so the instructions won't differ that much, meaning you can use this as a base, but don't copy it verbatim, you are encouraged to follow other guides, see the references.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Documentation, Tips & Tricks All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum