Difference between revisions of "Uvesafb"

From Funtoo
Jump to: navigation, search
Line 3: Line 3:
  
 
== Kernel configuration ==
 
== Kernel configuration ==
 +
Before we emerge the required packages for uvesafb functionality, we have to configure the kernel properly.
 
<br>
 
<br>
 
{{Kernelop
 
{{Kernelop
Line 19: Line 20:
 
}}
 
}}
  
{{fancynote| Build the kernel, do not install the kernel and modules. You can choose uvesafb as a module, unlike vesa.}}  
+
{{fancynote| Build the kernel (<tt>make</tt>), do not install the kernel and modules (<tt> make install modules_install</tt>). You can choose uvesafb as a module, unlike vesa.}}  
  
 
== Klibc ==
 
== Klibc ==
  
Next, we emerge {{Package|dev-libs/klibc}}:
+
Next, we emerge {{Package|dev-libs/klibc}}. Klibc has to be compiled against a kernel that includes uvesafb support. This only has to be done once:
 
<console>
 
<console>
 
###i## emerge klibc
 
###i## emerge klibc
 
</console>
 
</console>
This step is necessary because klibc has to be compiled against a kernel that includes uvesafb. You need to do it only once.
 
  
 
== v86d ==
 
== v86d ==

Revision as of 16:46, 12 July 2014

How to : Framebuffer: Userspace VESA VGA graphics support

Uvesafb is an improved framebuffer driver for Linux systems with some enhancements compared to vesa. Uvesafb can allow you to get a full-resolution console, even if you have installed a graphics driver that does not support full-resolution consoles. Examples of drivers like these: ati-drivers and NVidia-drivers.

Kernel configuration

Before we emerge the required packages for uvesafb functionality, we have to configure the kernel properly.

Device Drivers ->
    <*> Connector - unified userspace <-> kernelspace linker  --->
    Graphics support ->
        [*] Support for frame buffer devices  --->
            [*] Enable firmware EDID
            Console display driver support ->
                [*] Video mode selection support
                [*] Video mode handling helpers
            Frame buffer hardware drivers
            [*] Userspace VESA VGA graphics support
Note: Build the kernel (make), do not install the kernel and modules ( make install modules_install). You can choose uvesafb as a module, unlike vesa.

Klibc

Next, we emerge dev-libs/klibc. Klibc has to be compiled against a kernel that includes uvesafb support. This only has to be done once:

# emerge klibc

v86d

sys-apps/v86d is the userspace helper that runs x86 code in emulated environment. Uvesafb will not work without v86d. Now, we emerge v86d:

# emerge v86d

Back to kernel configuration

Reconfigure the kernel:

General Setup->
[*] Initial RAM filesystem and RAM disk (initramfs/initrd) support
(/usr/share/v86d/initramfs)    Initramfs source file(s)

Rebuild the kernel: make and install it, install the modules

Bootloader configuration

add video=uvesafb:1440x900-32,mtrr:3,ywrap (or similar) to your kernel command line, like in example boot.conf

boot {
        generate grub
        default "Funtoo Linux uvesafb" 
        timeout 3 
}
  "Funtoo Linux uvesafb" { 
        kernel bzImage-uvesafb[-v]
        params += video=uvesafb:1440x900-32,mtrr:3,ywrap
}

Then run:

# boot-update

and then run:

# reboot

and enjoy uvesafb!