Difference between revisions of "Uvesafb"

From Funtoo
Jump to navigation Jump to search
(6 intermediate revisions by the same user 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.  
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: [[Package:AMD_Catalyst_Video_Drivers| ati-drivers]] and NVidia-drivers.
=Kernel configuration=


== Kernel configuration ==
<br>
{{Kernelop
{{Kernelop
| <br> |<pre>
|title=
|desc=
Device Drivers ->
Device Drivers ->
     <*> Connector - unified userspace <-> kernelspace linker  --->
     <*> Connector - unified userspace <-> kernelspace linker  --->
Line 15: Line 17:
             Frame buffer hardware drivers
             Frame buffer hardware drivers
             [*] Userspace VESA VGA graphics support
             [*] Userspace VESA VGA graphics support
</pre>}}
}}


Build the kernel, do not install the kernel and modules. Note, that you can choose uvesafb as module, unlike vesa.
{{fancynote| Build the kernel, do not install the kernel and modules. You can choose uvesafb as a module, unlike vesa.}}


== Klibc ==
== Klibc ==
Line 36: Line 38:
Reconfigure the kernel:
Reconfigure the kernel:
{{Kernelop
{{Kernelop
| <br> |<pre>
|title=
|desc=
General Setup->
General Setup->
(*)Initial RAM filesystem and RAM disk (initramfs/initrd) support
[*] Initial RAM filesystem and RAM disk (initramfs/initrd) support
</pre>}}
(/usr/share/v86d/initramfs)    Initramfs source file(s)
}}
Rebuild the kernel: make and install it, install the modules
Rebuild the kernel: make and install it, install the modules


=Bootloader configuration=
== 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>
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 {
<pre>
boot {
         generate grub
         generate grub
         default "Funtoo Linux uvesafb"  
         default "Funtoo Linux uvesafb"  
Line 53: Line 58:
         kernel bzImage-uvesafb[-v]
         kernel bzImage-uvesafb[-v]
         params += video=uvesafb:1440x900-32,mtrr:3,ywrap
         params += video=uvesafb:1440x900-32,mtrr:3,ywrap
}</pre>
}
</pre>


Then run:
Then run:

Revision as of 16:42, July 12, 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


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, do not install the kernel and modules. You can choose uvesafb as a module, unlike vesa.

Klibc

Next, we emerge No results:

root # 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

No results is the userspace helper that runs x86 code in emulated environment. Uvesafb will not work without v86d. Now, we emerge v86d:

root # 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:

root # boot-update

and then run:

root # reboot

and enjoy uvesafb!