On Monday 21 March 2011 20:34:38 Corbin Simpson wrote:
On Mon, Mar 21, 2011 at 12:25 PM, Jesse Barnes jbarnes@virtuousgeek.org
wrote:
On Mon, 21 Mar 2011 19:19:43 +0000
timofonic timofonic timofonic@gmail.com wrote:
So if KMS is so cool and provides many advantages over fbdev and such... Why isn't more widely used intead of still relying on fbdev? Why still using fbdev emulation (that is partial and somewhat broken, it seems) instead using KMS directly?
Used by what? All three major GPU device classes have KMS support (Intel, ATI, and nVidia). If you want it for a particular device, you can always port it over.
As for fbdev emulation, what's still using it? There's nothing stopping projects from converting over; X and Wayland can already handle KMS APIs just fine.
I know the graphic driver situation is quite bad on Linux, especially on the embedded world. Fbdev seems is still quite used there by binary blob drivers.
Probably for a couple of reasons: 1) inertia: fbdev has been around a lot longer, and provides most of what embedded devices need anyway 2) feature set: why bother doing a full KMS driver if you're not going to use any of the additional features it would provide (output management, memory management, execution management)
Related: We are still missing basic userspace tools (kmsset, e.g.), some kind of direct KMS console (kmscon would work, if it existed), and an xf86-video-modesetting which compiles and works (this is actually possible now, with some patches that landed in 2.6.38 for generic KMS access.)
This looks interesting. If existing *fb drivers could be easily converted to KMS (including 2D acceleration) and then used in X with a common driver, it would be great. Let's say, convert cyber2000fb driver to KMS and use it in X with 2D acceleration.
This is important to me, as the various old drivers I've been hacking on won't be accepted upstream without some sort of userspace which can work with them. One of the big goals of KMS was a generic userspace-facing API, like FB, but without the suck.