summaryrefslogtreecommitdiffstats
path: root/src/3rdparty
diff options
context:
space:
mode:
authorJorgen Lind <jorgen.lind@digia.com>2014-01-24 09:41:36 +0100
committerLaszlo Agocs <laszlo.agocs@digia.com>2014-02-03 17:50:21 +0100
commitdd2f05a3bf7e35e1512a0510d27aba8a9b2cc26e (patch)
tree92f0cb1fdebff029c58d623b98e1a484b1475e48 /src/3rdparty
parent89dca9dd42c0994ff175f1dbba9ef3c90a0a92df (diff)
Add the A8 MESA for mat patch for the Mesa v.10 branch
Change-Id: I771e0478e274ef7cfabb417c9712d4dbb4d62f5b Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
Diffstat (limited to 'src/3rdparty')
-rw-r--r--src/3rdparty/patches/0001-Add-a-EGL_DRM_BUFFER_FORMAT_A8_MESA-10.patch87
-rw-r--r--src/3rdparty/patches/0001-Add-a-EGL_DRM_BUFFER_FORMAT_A8_MESA-9.2.patch (renamed from src/3rdparty/patches/0001-Add-a-EGL_DRM_BUFFER_FORMAT_A8_MESA.patch)0
2 files changed, 87 insertions, 0 deletions
diff --git a/src/3rdparty/patches/0001-Add-a-EGL_DRM_BUFFER_FORMAT_A8_MESA-10.patch b/src/3rdparty/patches/0001-Add-a-EGL_DRM_BUFFER_FORMAT_A8_MESA-10.patch
new file mode 100644
index 000000000..035822961
--- /dev/null
+++ b/src/3rdparty/patches/0001-Add-a-EGL_DRM_BUFFER_FORMAT_A8_MESA-10.patch
@@ -0,0 +1,87 @@
+From be72a2ae7d14e57c423ce0885b153abf56eefca4 Mon Sep 17 00:00:00 2001
+From: Jorgen Lind <jorgen.lind@digia.com>
+Date: Thu, 2 Jan 2014 12:28:54 +0100
+Subject: [PATCH] Add a EGL_DRM_BUFFER_FORMAT_A8_MESA
+
+This is to allow us to share A8 DRM buffers between processes
+---
+ include/EGL/eglext.h | 1 +
+ include/GL/internal/dri_interface.h | 1 +
+ src/egl/drivers/dri2/egl_dri2.c | 7 +++++++
+ src/mesa/drivers/dri/common/dri_util.c | 4 ++++
+ 4 files changed, 13 insertions(+)
+
+diff --git a/include/EGL/eglext.h b/include/EGL/eglext.h
+index 1d68178..6c4fb7e 100644
+--- a/include/EGL/eglext.h
++++ b/include/EGL/eglext.h
+@@ -271,6 +271,7 @@ typedef EGLSurface (EGLAPIENTRYP PFNEGLCREATEPIXMAPSURFACEHIPROC) (EGLDisplay dp
+ #define EGL_DRM_BUFFER_FORMAT_MESA 0x31D0 /* CreateDRMImageMESA attribute */
+ #define EGL_DRM_BUFFER_USE_MESA 0x31D1 /* CreateDRMImageMESA attribute */
+ #define EGL_DRM_BUFFER_FORMAT_ARGB32_MESA 0x31D2 /* EGL_IMAGE_FORMAT_MESA attribute value */
++#define EGL_DRM_BUFFER_FORMAT_A8_MESA 0x31D5 /* EGL_IMAGE_FORMAT_MESA attribute value */
+ #define EGL_DRM_BUFFER_MESA 0x31D3 /* eglCreateImageKHR target */
+ #define EGL_DRM_BUFFER_STRIDE_MESA 0x31D4
+ #define EGL_DRM_BUFFER_USE_SCANOUT_MESA 0x00000001 /* EGL_DRM_BUFFER_USE_MESA bits */
+diff --git a/include/GL/internal/dri_interface.h b/include/GL/internal/dri_interface.h
+index b012570..c0ba605 100644
+--- a/include/GL/internal/dri_interface.h
++++ b/include/GL/internal/dri_interface.h
+@@ -1015,6 +1015,7 @@ struct __DRIdri2ExtensionRec {
+ #define __DRI_IMAGE_FORMAT_XRGB2101010 0x1009
+ #define __DRI_IMAGE_FORMAT_ARGB2101010 0x100a
+ #define __DRI_IMAGE_FORMAT_SARGB8 0x100b
++#define __DRI_IMAGE_FORMAT_A8 0x100c
+
+ #define __DRI_IMAGE_USE_SHARE 0x0001
+ #define __DRI_IMAGE_USE_SCANOUT 0x0002
+diff --git a/src/egl/drivers/dri2/egl_dri2.c b/src/egl/drivers/dri2/egl_dri2.c
+index a64f4e8..a8253e1 100644
+--- a/src/egl/drivers/dri2/egl_dri2.c
++++ b/src/egl/drivers/dri2/egl_dri2.c
+@@ -1185,6 +1185,10 @@ dri2_create_image_mesa_drm_buffer(_EGLDisplay *disp, _EGLContext *ctx,
+ format = __DRI_IMAGE_FORMAT_ARGB8888;
+ pitch = attrs.DRMBufferStrideMESA;
+ break;
++ case EGL_DRM_BUFFER_FORMAT_A8_MESA:
++ format = __DRI_IMAGE_FORMAT_A8;
++ pitch = attrs.DRMBufferStrideMESA;
++ break;
+ default:
+ _eglError(EGL_BAD_PARAMETER,
+ "dri2_create_image_khr: unsupported pixmap depth");
+@@ -1719,6 +1723,9 @@ dri2_create_drm_image_mesa(_EGLDriver *drv, _EGLDisplay *disp,
+ case EGL_DRM_BUFFER_FORMAT_ARGB32_MESA:
+ format = __DRI_IMAGE_FORMAT_ARGB8888;
+ break;
++ case EGL_DRM_BUFFER_FORMAT_A8_MESA:
++ format = __DRI_IMAGE_FORMAT_A8;
++ break;
+ default:
+ _eglLog(_EGL_WARNING, "bad image format value 0x%04x",
+ attrs.DRMBufferFormatMESA);
+diff --git a/src/mesa/drivers/dri/common/dri_util.c b/src/mesa/drivers/dri/common/dri_util.c
+index 9134a94..5fb55a2 100644
+--- a/src/mesa/drivers/dri/common/dri_util.c
++++ b/src/mesa/drivers/dri/common/dri_util.c
+@@ -831,6 +831,8 @@ driGLFormatToImageFormat(gl_format format)
+ return __DRI_IMAGE_FORMAT_NONE;
+ case MESA_FORMAT_SARGB8:
+ return __DRI_IMAGE_FORMAT_SARGB8;
++ case MESA_FORMAT_A8:
++ return __DRI_IMAGE_FORMAT_A8;
+ default:
+ return 0;
+ }
+@@ -860,6 +862,8 @@ driImageFormatToGLFormat(uint32_t image_format)
+ return MESA_FORMAT_GR88;
+ case __DRI_IMAGE_FORMAT_SARGB8:
+ return MESA_FORMAT_SARGB8;
++ case __DRI_IMAGE_FORMAT_A8:
++ return MESA_FORMAT_A8;
+ case __DRI_IMAGE_FORMAT_NONE:
+ return MESA_FORMAT_NONE;
+ default:
+--
+1.8.5.2
+
diff --git a/src/3rdparty/patches/0001-Add-a-EGL_DRM_BUFFER_FORMAT_A8_MESA.patch b/src/3rdparty/patches/0001-Add-a-EGL_DRM_BUFFER_FORMAT_A8_MESA-9.2.patch
index 46fac7144..46fac7144 100644
--- a/src/3rdparty/patches/0001-Add-a-EGL_DRM_BUFFER_FORMAT_A8_MESA.patch
+++ b/src/3rdparty/patches/0001-Add-a-EGL_DRM_BUFFER_FORMAT_A8_MESA-9.2.patch