Skip to content

Draft: mesa: check format supports on computing GL version

When we landed support for conditional rendering in the V3D driver, it was automatically promoted to OpenGL 3.1. This is because the function that computes the supported version only takes in account the supported extensions.

The thing is that several tests in GL 3.1 (eg, KHR-GL31.texture_size_promotion.functional) and quite a few in piglit were failing because the test were trying to use a rendering format not supported by the hardware. And the tests are not wrong, because those formats are mandatory in the specification. So strictly speaking, the driver can't be promoted to OpenGL 3.1.

This MR checks (provided it is well implemented) that the mandatory rendering formats are supported as part of computing the GL version. But I think this can be a can of worms: while V3D driver is de-promoted again back to GL < 3.0, but also other drivers are promoted to previous GL versions. Again, supposing this is well implemented.

So I'm not sure even if we want to add such check. Mesa is already lying because several drivers doesn't support 8 RT, so looks like another lie wouldn't damage 😄

If we don't, then that CTS test, nor the piglit tests, will be ever fixed for those drivers.

I've marked this MR as draft because I'd like to know what do you think: is this something we want to fix? if so, how?

Merge request reports