Linux - HardwareThis forum is for Hardware issues.
Having trouble installing a piece of hardware? Want to know if that peripheral is compatible with Linux?
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
I have a computer whose framebuffer driver is in the Linux kernel known as "lxfb". Now I now there is also a generic vesa framebuffer driver called as "vesafb".
When are these driver used? Are they only useful when we are using a console or do they have a role when we boot into the GNOME or KDE?
In short what is the role of this framebuffer drivers and which major applications uses the driver. Also what are the advantages of using a native one (lxfb) in contrast with a generic vesa one (vesafb)?
Framebuffer gets used most of the time to run graphical applications on a console but it is perfectly possible to use it within Gnome/KDE as well. The latest Mandriva is will use it as a substitute for proprietary drivers after installing.
Vesa is generic whereas the native one is vendor specific. What it means is that the former is (more or less) failsafe but that there will be a penalty in the form of lower performance and a more limited set of supported functions.
Framebuffer gets used most of the time to run graphical applications on a console but it is perfectly possible to use it within Gnome/KDE as well. The latest Mandriva is will use it as a substitute for proprietary drivers after installing.
Vesa is generic whereas the native one is vendor specific. What it means is that the former is (more or less) failsafe but that there will be a penalty in the form of lower performance and a more limited set of supported functions.
So for example, I do understand that when my system boots with a nice tux logo, it is because it is using a framebuffer device driver (vesa or native).
After that when the GDM login screen appears, the framebuffer driver has not use by default but it can be used as you said in your earlier post. How can we make X server and hence GDM and GNOME environment to use the framebuffer driver..How can we know whether the X is using the fb driver or not?
You would have to use the "fbdev" driver instead of whatever you have in your xorg.conf right now (http://linux.die.net/man/4/fbdev). Finding out which driver is in use is as simple as:
You would have to use the "fbdev" driver instead of whatever you have in your xorg.conf right now (http://linux.die.net/man/4/fbdev). Finding out which driver is in use is as simple as:
cat /etc/X11/xorg.conf | grep Driver
or checking the output of lsmod.
Right now it shows vesa driver on giving command:
cat /etc/X11/xorg.conf | grep Driver
What dO i need to change to use the fbdev driver? Are fbdev driver different than vesa framebuffer drivers? I am little bit confused.
That's a pretty technical question but I'll try to keep it simple.
There are two broad categories of drivers: framebuffer based and X based. The former are used in situations where X isn't available (older hardware, videocards without X support, specific types of applications, the Linux OS during the booting process before X gets started). The X based type do require a running X server. Whenever you use Gnome or KDE (or GDM, KDM, ... to put it more correctly), you know that your X server is effectively running.
Framebuffer drivers are special in that they can address GPU RAM directly while X based drivers need to communicate with RAM through X.
fbdev and vesafb are more limited than X based drivers. They generally don't do acceleration (or at least not as well) and may offer more limited color depths and ranges of resolutions (especially true of the vesafb).
X based drivers include the proprietary and open source drivers for cards made by ATI, Nvidia, Intel etc. The open source driver for Nvidia is called "nv" while the proprietary one is known as "nvidia". The open source driver for ATI is "ati" or "radeon", the propietary one is "fglrx". In many cases, the open source version does not support 3D. Open source drivers are included with Linux while the closed versions need to be obtained from the card manufacturer.
Now, I wonder whether your driver is vesafb or simply vesa. Both are generic drivers but the former is a framebuffer driver while the latter is X based.
You would replace your driver by editing /etc/X11/xorg.conf. Simple substitute "vesa" with "fbdev" after making sure that you have xserver-xorg-drv-fbdev installed. Unless you have a good reason to do so, however, I would stick with VESA. You can always display graphics on console through certain applications such as fbi or fbtv.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.