My project wish-list for the next 12 months

Eric Anholt eta at lclark.edu
Fri Dec 3 00:42:52 PST 2004


On Thu, 2004-12-02 at 17:35, David Xu wrote:
> I maybe jump onto wrong thread, but FreeBSD's lack of
> graphics framebuffer which is in Linux really kicked away
> lots of embedded projects, one is QT-embedded which
> simple can not be run on FreeBSD, many embedded projects
> here just need it.

We do definitely need framebuffer.  But I think we'd be best served by
trying to drag mode-setting code out of the X Server and into a userland
library, rather than integrating it all into the kernel.  (At most,
implement a simple fixed mode supported everywhere in the kernel for
intial boot, then a userland system of some sort takes over after
that).  Mode-setting code is huge, easy to mess up, and I don't think we
have the resources to do it well.  However, if someone (I fear doing
this myself) were to get it into a userland library, we could probably
convince the X Server to use it, and maybe even Linux kernel folks, and
end up keeping all grahpics driver developers focused on a single
codebase rather than split across many OSes or kernel versus X Server.  

Here's why I personally think this is really important: We've got
Mesa-solo laying around -- OpenGL hardware acceleration on top of a
framebuffer, if FreeBSD just had a framebuffer system.  Then we've got
the Xglx server, which runs on top of an OpenGL implementation and
provides at least some of the Render acceleration that I was talking
about in the parent message.  Also, a number of X Server folks want to
get mode-setting moved out of the X Server entirely -- let it be
configured by system daemons, probably controlled over dbus.  It would
be very nice if FreeBSD happened to be ready for what Linux people would
like to do.

-- 
Eric Anholt                                eta at lclark.edu          
http://people.freebsd.org/~anholt/         anholt at FreeBSD.org
           Thank goodness for the 22nd Amendment



More information about the freebsd-current mailing list