radeon/r200 color tiling ddx / drm questions

Michel Dänzer michel at daenzer.net
Thu Jan 13 08:44:00 PST 2005


On Wed, 2005-01-12 at 00:18 +0100, Roland Scheidegger wrote:
> Alex Deucher wrote:
> >>> How would you do that? I can't see a way at all how ddx would 
> >>> reject a dri client.
> >> 
> >> By making the initialization fail, e.g.
> Do you have some pointers how you'd do that? All code I see for
> initialization is on the dri side, except the generic stuff in dri.c.
> When it comes to initialization, there seems to be some black magic
> involved :-).

E.g., the sequence of XF86DRI...() calls could be changed along the
lines of: If the DDX DRI extension version determined by
XF86DRIQueryVersion() indicates that it's supported, the client calls
something like XF86DRISetClientVersion() to indicate the capabilities it
has. XF86DRIGetDeviceInfo() could then fail if the client's advertised
capabilities don't allow direct rendering with the DDX configuration. Of
course, there's a lot of details to be worked out around this idea, but
I don't see anything that would prevent it altogether, except maybe that
it may not be possible while preserving the interface between libGL and
the 3D driver. :\


> >>> If there is some two-way handshake somewhere, I must have missed 
> >>> it.
> >> 
> >> There's none yet in the DDX, it would have to be added (if the one 
> >> in the DRM doesn't suffice). It would probably be useful for other 
> >> stuff like dynamic buffer offset updates (for Composite, pbuffers, 
> >> ...) as well.
> Actually, I can't see a two-way handshake in drm neither, any pointers?

See drmSetInterfaceVersion() in xf86drm.c.


-- 
Earthling Michel Dänzer      |     Debian (powerpc), X and DRI developer
Libre software enthusiast    |   http://svcs.affero.net/rm.php?r=daenzer



More information about the xorg mailing list