summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKristian Høgsberg <[email protected]>2013-09-14 23:31:08 -0700
committerKristian Høgsberg <[email protected]>2013-10-15 22:07:52 -0700
commit3160ec353e62fb9fea2ea8a0439f5973b57adcac (patch)
tree85474f941ab0229b1dc2234c3bf424f7b504abce
parentf354bcc1770e9df88db51eba5a4543a09ca6d128 (diff)
dri: Add __DRIimage support for the ARGB2101010 format
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 <[email protected]>
-rw-r--r--include/GL/internal/dri_interface.h2
-rw-r--r--src/mesa/drivers/dri/i965/intel_screen.c10
2 files changed, 12 insertions, 0 deletions
diff --git a/include/GL/internal/dri_interface.h b/include/GL/internal/dri_interface.h
index 709fece8d18..33b41ea3b50 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 2912291cfd0..eadd9a670ae 100644
--- a/src/mesa/drivers/dri/i965/intel_screen.c
+++ b/src/mesa/drivers/dri/i965/intel_screen.c
@@ -296,6 +296,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;
@@ -382,6 +388,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;