Difference between revisions of "Uvesafb"

From Funtoo
Jump to: navigation, search
(Added <console>)
(Kernel configuration)
(14 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 +
== ''How to'' : Framebuffer: Userspace VESA VGA graphics support ==
 +
Uvesafb is an improved framebuffer driver for Linux systems with some enhancements compared to vesa.
 +
=Kernel configuration=
  
 +
{{Kernelop
 +
| <br> |<pre>
 +
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
 +
</pre>}}
 +
 +
{{fancynote| Build the kernel, do not install the kernel and modules. You can choose uvesafb as a module, unlike vesa.}}
 +
 +
== Klibc ==
 +
 +
Next, we emerge {{Package|dev-libs/klibc}}:
 +
<console>
 +
###i## emerge klibc
 +
</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 ==
 +
{{Package|sys-apps/v86d}} is the userspace helper that runs x86 code in emulated environment. Uvesafb will not work without v86d. Now, we emerge <code>v86d</code>:
 +
<console>
 +
###i## emerge v86d
 +
</console>
 +
 +
== Back to kernel configuration ==
 +
Reconfigure the kernel:
 +
{{Kernelop
 +
| <br> |<pre>
 +
General Setup->
 +
[*] Initial RAM filesystem and RAM disk (initramfs/initrd) support
 +
(/usr/share/v86d/initramfs)    Initramfs source file(s)
 +
</pre>}}
 +
Rebuild the kernel: make and install it, install the modules
 +
 +
== Bootloader configuration ==
 +
add <code>video=uvesafb:1440x900-32,mtrr:3,ywrap</code> (or similar) to your kernel command line, like in example <code>boot.conf</code>
 +
 +
{{File
 +
|/etc/boot.conf|<pre>
 +
boot {
 +
        generate grub
 +
        default "Funtoo Linux uvesafb"
 +
        timeout 3
 +
}
 +
  "Funtoo Linux uvesafb" {
 +
        kernel bzImage-uvesafb[-v]
 +
        params += video=uvesafb:1440x900-32,mtrr:3,ywrap
 +
}
 +
</pre>}}
 +
 +
Then run:
 +
<console>
 +
###i## boot-update
 +
</console>
 +
and then run:
 +
<console>
 +
###i## reboot
 +
</console>
 +
and enjoy uvesafb!
 +
 +
 +
[[Category:HOWTO]]

Revision as of 14:10, 31 January 2014

Contents

How to : Framebuffer: Userspace VESA VGA graphics support

Uvesafb is an improved framebuffer driver for Linux systems with some enhancements compared to vesa.

Kernel configuration


Note: Build the kernel, do not install the kernel and modules. You can choose uvesafb as a module, unlike vesa.

Klibc

Next, we emerge dev-libs/klibc:

# emerge klibc

This step is necessary because klibc has to be compiled against a kernel that includes uvesafb. You need to do it only once.

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:


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!