Difference between revisions of "Uvesafb"

From Funtoo Linux
Jump to: navigation, search
(How to : Framebuffer: Userspace VESA VGA graphics support)
 
(7 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 ->
'''First you need to emerge v86d package'''
+
----
+
 
+
like that :
+
{{Root|emerge -av v86d}}
+
 
+
----
+
'''Then you need to config your kernel'''
+
----
+
 
+
{{Device Drivers ->
+
 
     <*> Connector - unified userspace <-> kernelspace linker  --->
 
     <*> Connector - unified userspace <-> kernelspace linker  --->
 
     Graphics support ->
 
     Graphics support ->
Line 22: Line 12:
 
                 [*] Video mode handling helpers
 
                 [*] Video mode handling helpers
 
             Frame buffer hardware drivers
 
             Frame buffer hardware drivers
             [*] 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
'''Finally update your boot.conf'''
+
----
+
  
add video=uvesafb:1024x768-32,mtrr:3,ywrap (or similar) to your kernel command line
+
=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>
  
like here
+
<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-8,mtrr=2} }}
+
         params += video=uvesafb:1440x900-32,mtrr:3,ywrap
 +
}</pre>
  
Then run {{boot-update}} and reboot
+
Then run  
 +
{{root|boot-update}}  
 +
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!

Personal tools
Namespaces

Variants
Actions
Categories
Toolbox
Stuff