Roland Scheidegger wrote:
Michel DÃnzer wrote:

On Fri, 2005-01-07 at 04:10 +0100, Roland Scheidegger wrote:

The dri and drm seem fairly straightforward, though I'm not sure the way I handled communication between especially drm and ddx is how it's meant to be. dri got a bit unlucky, as ddx can't know at startup if it will be able to handle color tiling, so old dri together with new drm and new ddx will not work (correctly) (if you
have enabled color tiling).

You might be able to solve this with a two-way handshake between the 3D driver and the DDX, similar to how it's done with the DRM already. With that, the DDX could recognize clients that can deal with tiling and prevent others from using direct rendering.

How would you do that? I can't see a way at all how ddx would reject a dri client. If I see that correctly, drm does neither reject clients based on features/version. If there is some two-way handshake somewhere, I must have missed it. DRI itself will refuse to load if the ddx major version doesn't match however, which is what Ian suggested to do (bump the ddx major version). Maybe that was indeed a good idea, even though it means you'd have to update ddx if you got a new tiling-enabled dri (which isn't necessary otherwise). It would probably simplify some things slightly.

Not quite. A new DRI could still work with an old DDX. It would just have to look at the version it received from the DDX and either use or not use tiling. However, upgrading to the tiling-enabled DDX (with the incremented major version) would require upgrading to the tiling-enabled DRI.


3) When switching from/to a resolution without tiling support,

If tiling doesn't work with all resolutions, shouldn't those resolutions be discarded in the first place if tiling is enabled?

It just seemed to be a little harsh to throw them out altogether - some people might like to use small (doublescan) physical resolutions for some OGL apps for speed reasons for instance, which would mean they'd need to restart the X server with tiling disabled just for that.
There's also some problem with that (mode validation happens before
options parsing, not sure how easy that would be to fix).

So, this basically means that you need a communication mechanism between DDX and DRI to select whether the current front-buffer / back-buffer is tiled. Maybe just a flag in the SAREA?



------------------------------------------------------- The SF.Net email is sponsored by: Beat the post-holiday blues Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek. It's fun and FREE -- well, almost....http://www.thinkgeek.com/sfshirt -- _______________________________________________ Dri-devel mailing list Dri-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/dri-devel

Reply via email to