[Mesa-dev] [PATCH 22/22] mesa: Add GL_UNSIGNED_INT_2_10_10_10_REV OES read type for BGRX1010102.

Mario Kleiner mario.kleiner.de at gmail.com
Fri Dec 15 22:05:09 UTC 2017


As Marek noted, the GL_RGBA + GL_UNSIGNED_INT_2_10_10_10_REV type
combo is also good for readback of BGRX1010102 framebuffers, not
only for BGRA1010102 framebuffers for use with glReadPixels()
under GLES, so add it for the GL_IMPLEMENTATION_COLOR_READ_TYPE_OES
query.

Successfully tested on gallium r600 driver with a (quickly hacked
for RGBA 10 10 10 0) dEQP testcase
dEQP-EGL.functional.wide_color.window_1010102_colorspace_default.

Suggested-by: Marek Olšák <marek.olsak at amd.com>
Signed-off-by: Mario Kleiner <mario.kleiner.de at gmail.com>
---
 src/mesa/main/framebuffer.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/mesa/main/framebuffer.c b/src/mesa/main/framebuffer.c
index a0de669..e103f31 100644
--- a/src/mesa/main/framebuffer.c
+++ b/src/mesa/main/framebuffer.c
@@ -889,7 +889,8 @@ _mesa_get_color_read_type(struct gl_context *ctx,
       if (format == MESA_FORMAT_B5G6R5_UNORM)
          return GL_UNSIGNED_SHORT_5_6_5;
 
-      if (format == MESA_FORMAT_B10G10R10A2_UNORM)
+      if (format == MESA_FORMAT_B10G10R10A2_UNORM ||
+          format == MESA_FORMAT_B10G10R10X2_UNORM)
          return GL_UNSIGNED_INT_2_10_10_10_REV;
 
       switch (data_type) {
-- 
2.7.4



More information about the mesa-dev mailing list