[forum] XFree86 5.0 TODO
Mark Vojkovich
forum@XFree86.Org
Thu, 20 Mar 2003 15:24:50 -0500 (EST)
On Thu, 20 Mar 2003, Sven Luther wrote:
> On Thu, Mar 20, 2003 at 09:57:25AM +0000, Alan Hourihane wrote:
> > Well,
> >
> > As this forum is for discussing all X stuff, here goes with a few notes
> > from an XFree86 Core Team meeting from a little while back. So in the
> > spirit of openness I thought I should discuss it here.
> >
> > This is stuff that we can think of that needs doing for XFree86 5.0, but
> > by no means is it limited to this list or even guarantee'ing anything
> > on the list will make it for 5.0.
> >
> > So, to spark discussions, here it is....
> >
> > 1. Redesign of XAA, so that multiple depth pixmaps can be stored in offscreen
> > memory and the creation of a new directive - called the XAASurface. There
> > will undoubtably be driver work involved to port to the new interface. The
> > techinical lead on this is Mark Vojkovich. I believe Mark has a substantial
> > portion of this done, if not all.
>
> Mmm, what would be the benefit of this one ? And how is the hardware
> side taken care of ? For example with graphic cards that don't have
> linear framebuffer, and where the pixmaps need to be converted (either
> in software or in hardware) before they are uploaded to the offscreen
> cache. Such non-linear memory organisation is sensitive to depth
> changes.
>
>
The major problem with the old XAA was that it made too many
hardware assumptions. That was necessary to allow XAA to achieve
one of its goals, that was, to allow people who didn't know anything
about graphics hardware to write drivers. We had fewer professional
graphics people writing XFree86 drivers back then so that was an
important consideration. This is less important now.
In the new XAA, surface allocation is relegated to the driver,
which can use any mechanism it wants to allocate these surfaces.
I have this working with NVIDIA's binary drivers. Allocations
are offloaded to a system-wide allocator in the kernel. The NVIDIA
binary drivers use a non-linear framebuffer so this was a good
test.
Multidepth support is of interest to the render extension (all
those 8 bit alpha masks) and in the case of overlays.
Mark.