[weston,1/5] compositor: add support for OES_EGL_image_external

Message ID 1346363241-29219-2-git-send-email-rob.clark@linaro.org
State New
Headers show

Commit Message

Rob Clark Aug. 30, 2012, 9:47 p.m.
From: Rob Clark <rob@ti.com>

In cases where the GPU can natively handle certain YUV formats,
eglQueryWaylandBufferWL() can return the value EGL_TEXTURE_EXTERNAL_WL
and the compositor will treat the buffer as a single egl-image-external.

See:
http://www.khronos.org/registry/gles/extensions/OES/OES_EGL_image_external.txt

v1: original
v2: rename EGL_TEXTURE_EXTERNAL_OES -> EGL_TEXTURE_EXTERNAL_WL and query
    for the extension
v3: fix build without updated mesa headers, if EGL_TEXTURE_EXTERNAL_WL
    #define is missing from older mesa headers.

Signed-off-by: Rob Clark <rob@ti.com>
---
 src/weston-egl-ext.h |    4 ++++
 1 file changed, 4 insertions(+)

Comments

Pekka Paalanen Aug. 31, 2012, 9:25 a.m. | #1
On Thu, 30 Aug 2012 16:47:17 -0500
Rob Clark <rob.clark@linaro.org> wrote:

> From: Rob Clark <rob@ti.com>
> 
> In cases where the GPU can natively handle certain YUV formats,
> eglQueryWaylandBufferWL() can return the value EGL_TEXTURE_EXTERNAL_WL
> and the compositor will treat the buffer as a single egl-image-external.
> 
> See:
> http://www.khronos.org/registry/gles/extensions/OES/OES_EGL_image_external.txt
> 
> v1: original
> v2: rename EGL_TEXTURE_EXTERNAL_OES -> EGL_TEXTURE_EXTERNAL_WL and query
>     for the extension
> v3: fix build without updated mesa headers, if EGL_TEXTURE_EXTERNAL_WL
>     #define is missing from older mesa headers.
> 
> Signed-off-by: Rob Clark <rob@ti.com>
> ---
>  src/weston-egl-ext.h |    4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/src/weston-egl-ext.h b/src/weston-egl-ext.h
> index 5369f02..1d4b76b 100644
> --- a/src/weston-egl-ext.h
> +++ b/src/weston-egl-ext.h
> @@ -54,4 +54,8 @@ typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYWAYLANDBUFFERWL) (EGLDisplay dpy, st
>  
>  #endif
>  
> +#ifndef EGL_TEXTURE_EXTERNAL_WL
> +#define EGL_TEXTURE_EXTERNAL_WL         0x31DA
> +#endif
> +
>  #endif


This patch is clearly missing something. :-)
The following patches won't apply.


Thanks,
pq

Patch

diff --git a/src/weston-egl-ext.h b/src/weston-egl-ext.h
index 5369f02..1d4b76b 100644
--- a/src/weston-egl-ext.h
+++ b/src/weston-egl-ext.h
@@ -54,4 +54,8 @@  typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYWAYLANDBUFFERWL) (EGLDisplay dpy, st
 
 #endif
 
+#ifndef EGL_TEXTURE_EXTERNAL_WL
+#define EGL_TEXTURE_EXTERNAL_WL         0x31DA
+#endif
+
 #endif