On Fri, Dec 4, 2015 at 3:31 PM, Russell King - ARM Linux linux@arm.linux.org.uk wrote:
Moreover, DRI3 is not yet available for Gallium, so if we're talking about Xorg, then functional DRI2 is a requirement, and that _needs_ to have a single device for the rendering instances. Xorg has no way to pass multiple render nodes to client over DRI2.
Just to correct... DRI3 has been available on gallium [at least in the context of st/mesa] basically since DRI3 was introduced. Not sure what issue you're fighting with, but it's definitely not a gallium limitation... could be something related to platform devices.
It is also possible to use DRI_PRIME=<udev idpath> to select which device to use. Not sure whether that has been available since the beginning or not.
That said e.g. st/vdpau still doesn't deal with DRI3 which is a bit annoying. And your other points all still stand (buffer sharing = pain, tiling = not figured out, etc).
-ilia