Difference between revisions of "Uvesafb"
From Funtoo Linux
| (4 intermediate revisions by 2 users not shown) | |||
| Line 1: | Line 1: | ||
== ''How to'' : Framebuffer: Userspace VESA VGA graphics support == | == ''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= | ||
| − | + | <pre>Device Drivers -> | |
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | Device Drivers -> | + | |
<*> Connector - unified userspace <-> kernelspace linker ---> | <*> Connector - unified userspace <-> kernelspace linker ---> | ||
Graphics support -> | Graphics support -> | ||
| Line 23: | Line 14: | ||
[*] Userspace VESA VGA graphics support | [*] Userspace VESA VGA graphics support | ||
| − | + | CONFIG_CONNECTOR=y | |
| − | + | CONFIG_FB_UVESA=y | |
| − | - | + | </pre> |
| + | |||
| + | Build the kernel, do not install the kernel and modules. Note, that you can choose uvesafb as module, unlike vesa. | ||
| + | |||
| + | =Klibc= | ||
| + | |||
| + | {{root|emerge klibc}} | ||
| + | |||
| + | This step is necessary because klibc has to be compiled against a kernel that includes uvesafb, you need to do it once, if you planning to update the kernel anytime. | ||
| + | |||
| + | =v86d= | ||
| + | <code>v86d</code> is the userspace helper that runs an x86 code in emulated environment. uvesafb will not work without v86d. | ||
| + | |||
| + | {{root|emerge v86d}} | ||
| + | |||
| + | =Back to kernel configuration= | ||
| + | Reconfigure the kernel | ||
| + | <pre>General Setup-> | ||
| + | (*)Initial RAM filesystem and RAM disk (initramfs/initrd) support | ||
| + | |||
| + | and use /usr/share/v86d/initramfs in Initramfs source file(s) | ||
| + | |||
| + | CONFIG_INITRAMFS_SOURCE="/usr/share/v86d/initramfs"</pre> | ||
| + | |||
| + | rebuild the kernel: make and install it, install the modules | ||
| − | add video=uvesafb: | + | =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> | ||
| − | + | <pre>boot { | |
| − | boot { | + | |
generate grub | generate grub | ||
default "Funtoo Linux uvesafb" | default "Funtoo Linux uvesafb" | ||
timeout 3 | timeout 3 | ||
} | } | ||
| − | "Funtoo Linux uvesafb" { | + | "Funtoo Linux uvesafb" { |
kernel bzImage-uvesafb[-v] | kernel bzImage-uvesafb[-v] | ||
| − | params += video=uvesafb:1440x900- | + | params += video=uvesafb:1440x900-32,mtrr:3,ywrap |
| + | }</pre> | ||
Then run | Then run | ||
| − | {{ | + | {{root|boot-update}} |
and | and | ||
| − | {{ | + | {{root|reboot}} |
| + | and enjoy uvesafb! | ||
| + | [[Category:HOWTO]] | ||
Latest revision as of 11:13, 21 December 2010
Contents |
[edit] How to : Framebuffer: Userspace VESA VGA graphics support
Uvesafb is an improved framebuffer driver for Linux systems with some enhancements compared to vesa.
[edit] Kernel configuration
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
CONFIG_CONNECTOR=y
CONFIG_FB_UVESA=y
Build the kernel, do not install the kernel and modules. Note, that you can choose uvesafb as module, unlike vesa.
[edit] Klibc
emerge klibc
This step is necessary because klibc has to be compiled against a kernel that includes uvesafb, you need to do it once, if you planning to update the kernel anytime.
[edit] v86d
v86d is the userspace helper that runs an x86 code in emulated environment. uvesafb will not work without v86d.
emerge v86d
[edit] Back to kernel configuration
Reconfigure the kernel
General Setup-> (*)Initial RAM filesystem and RAM disk (initramfs/initrd) support and use /usr/share/v86d/initramfs in Initramfs source file(s) CONFIG_INITRAMFS_SOURCE="/usr/share/v86d/initramfs"
rebuild the kernel: make and install it, install the modules
[edit] 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
reboot
and enjoy uvesafb!