[Mesa-dev] [PATCH 5/6] dri: Add __DRIimage support for the ARGB2101010 format

Kristian Høgsberg krh at bitplanet.net
Sun Sep 15 00:16:47 PDT 2013


We add support for the ARGB2101010 color format to the DRI image extension,
which allows DRI loaders to create a __DRIimage with this color format.

Signed-off-by: Kristian Høgsberg <krh at bitplanet.net>
---
 include/GL/internal/dri_interface.h      |  2 ++
 src/mesa/drivers/dri/i965/intel_screen.c | 10 ++++++++++
 2 files changed, 12 insertions(+)

diff --git a/include/GL/internal/dri_interface.h b/include/GL/internal/dri_interface.h
index 709fece..33b41ea 100644
--- a/include/GL/internal/dri_interface.h
+++ b/include/GL/internal/dri_interface.h
@@ -964,6 +964,8 @@ struct __DRIdri2ExtensionRec {
 #define __DRI_IMAGE_FORMAT_R8           0x1006 /* Since version 5 */
 #define __DRI_IMAGE_FORMAT_GR88         0x1007
 #define __DRI_IMAGE_FORMAT_NONE         0x1008
+#define __DRI_IMAGE_FORMAT_XRGB2101010  0x1009
+#define __DRI_IMAGE_FORMAT_ARGB2101010  0x100a
 
 #define __DRI_IMAGE_USE_SHARE		0x0001
 #define __DRI_IMAGE_USE_SCANOUT		0x0002
diff --git a/src/mesa/drivers/dri/i965/intel_screen.c b/src/mesa/drivers/dri/i965/intel_screen.c
index a7d640c..25c9bcd 100644
--- a/src/mesa/drivers/dri/i965/intel_screen.c
+++ b/src/mesa/drivers/dri/i965/intel_screen.c
@@ -289,6 +289,12 @@ intel_allocate_image(int dri_format, void *loaderPrivate)
     case __DRI_IMAGE_FORMAT_XRGB8888:
        image->format = MESA_FORMAT_XRGB8888;
        break;
+    case __DRI_IMAGE_FORMAT_ARGB2101010:
+       image->format = MESA_FORMAT_ARGB2101010;
+       break;
+    case __DRI_IMAGE_FORMAT_XRGB2101010:
+       image->format = MESA_FORMAT_XRGB2101010_UNORM;
+       break;
     case __DRI_IMAGE_FORMAT_ARGB8888:
        image->format = MESA_FORMAT_ARGB8888;
        break;
@@ -375,6 +381,10 @@ intel_dri_format(GLuint format)
       return __DRI_IMAGE_FORMAT_R8;
    case MESA_FORMAT_RG88:
       return __DRI_IMAGE_FORMAT_GR88;
+   case MESA_FORMAT_XRGB2101010_UNORM:
+      return __DRI_IMAGE_FORMAT_XRGB2101010;
+   case MESA_FORMAT_ARGB2101010:
+      return __DRI_IMAGE_FORMAT_ARGB2101010;
    }
 
    return MESA_FORMAT_NONE;
-- 
1.8.3.1



More information about the mesa-dev mailing list