Re: OpenGL-based framebuffer concepts

From: Jon Smirl
Date: Fri Jun 02 2006 - 00:29:43 EST


On 6/1/06, Jon Smirl <jonsmirl@xxxxxxxxx> wrote:
On 6/1/06, Dave Airlie <airlied@xxxxxxxxx> wrote:
> > > 15) re-use as much of the X drivers as possible, otherwise it will KGI.
> >
> > I would broaden this to use the best code where ever it is found. Of
> > course X is a major source.
>
> I'm not considering using knowledge from X drivers, I'm considering
> using the X drivers, I don't personally care about things like X's
> over use of typedefs and that sort of stuff, that is what I term
> semantic, people who work on X drivers know X drivers, and writing the
> drivers is the biggest part of any graphic systems.

I have considered that option too. It is a good place for a quick
start but it is not maintainable in the long run. The driver code has
to be divorced from X and not require having the entire X system
around to build a new driver.

Have you checked the dependencies needed for loading X drivers?
Modularization may have helped but loading an X driver used to
effectively suck in the entire X server due to dependencies. Sucking
in all of X is not fair to alternative windowing systems.

I do agree that this is a workable starting point but it can't be the
long term solution.

I just checked the Xorg R7 drivers. The ones I checked are statically
linked to their X components so there are no big X dependencies. That
makes them usable as standalone drivers.

What do you think about wrapping them with EGL instead of using their
entry points directly? That would remove the temptation to use
acceleration code in the X drivers and encourage use of DRM instead.

Wrapping them with EGL was my plan for getting Xegl up last summer
when Nvidia wouldn't implement the API. Using the X driver was the
only solution available for Nvidia/ATI hardware.

This still needs to be classified as a temporary solution. Long term
the code needs to be extracted from X and converted to a standalone
build system. They could be turned in to real EGL drivers at that
point.

--
Jon Smirl
jonsmirl@xxxxxxxxx
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/