summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTopi Pohjolainen <[email protected]>2012-11-12 13:38:08 +0200
committerTopi Pohjolainen <[email protected]>2013-08-02 08:56:03 +0300
commitf5947c2bc72a630d1abd2a12221d8dafd3a24be4 (patch)
tree245bed034a1df78ec1f63dc8d49b05159614a9be
parent20de7f9f226401f91fc893c28d77090afeb0e7a4 (diff)
i965: enable image external sampling for imported dma-buffers
Signed-off-by: Topi Pohjolainen <[email protected]> Reviewed-by: Chad Versace <[email protected]>
-rw-r--r--src/mesa/drivers/dri/i965/intel_extensions.c1
-rw-r--r--src/mesa/drivers/dri/i965/intel_tex_image.c7
2 files changed, 8 insertions, 0 deletions
diff --git a/src/mesa/drivers/dri/i965/intel_extensions.c b/src/mesa/drivers/dri/i965/intel_extensions.c
index 409d40b2740..655467c3cfb 100644
--- a/src/mesa/drivers/dri/i965/intel_extensions.c
+++ b/src/mesa/drivers/dri/i965/intel_extensions.c
@@ -122,6 +122,7 @@ intelInitExtensions(struct gl_context *ctx)
ctx->Extensions.OES_EGL_image = true;
ctx->Extensions.OES_draw_texture = true;
ctx->Extensions.OES_standard_derivatives = true;
+ ctx->Extensions.OES_EGL_image_external = true;
if (brw->gen >= 6)
ctx->Const.GLSLVersion = 140;
diff --git a/src/mesa/drivers/dri/i965/intel_tex_image.c b/src/mesa/drivers/dri/i965/intel_tex_image.c
index 178541d89bd..7db0deb50db 100644
--- a/src/mesa/drivers/dri/i965/intel_tex_image.c
+++ b/src/mesa/drivers/dri/i965/intel_tex_image.c
@@ -379,6 +379,13 @@ intel_image_target_texture_2d(struct gl_context *ctx, GLenum target,
return;
}
+ if (target == GL_TEXTURE_EXTERNAL_OES && !image->dma_buf_imported) {
+ _mesa_error(ctx, GL_INVALID_OPERATION,
+ "glEGLImageTargetTexture2DOES(external target is enabled only "
+ "for images created with EGL_EXT_image_dma_buf_import");
+ return;
+ }
+
/* Disallow depth/stencil textures: we don't have a way to pass the
* separate stencil miptree of a GL_DEPTH_STENCIL texture through.
*/