i965: Enabled the OES_copy_image extension on Gen 7 GPUs
authorEleni Maria Stea <estea@igalia.com>
Fri, 15 Feb 2019 13:29:43 +0000 (15:29 +0200)
committerNanley Chery <nanley.g.chery@intel.com>
Fri, 15 Feb 2019 23:54:41 +0000 (15:54 -0800)
OES_copy_image extension was disabled on Gen7 due to the lack of support
for ETC2 images. Enabled it back. (Kenneth Graunke)

v2:
  - Removed the blank lines in the comments above OES_copy_image and
  OES_texture_view extensions in intel_extensions.c (Nanley Chery)

Reviewed-by: Nanley Chery <nanley.g.chery@intel.com>
src/mesa/drivers/dri/i965/intel_extensions.c

index 3a95be5..d2a6aa1 100644 (file)
@@ -287,14 +287,22 @@ intelInitExtensions(struct gl_context *ctx)
    }
 
    if (devinfo->gen >= 8 || devinfo->is_baytrail) {
-      /* For now, we only enable OES_copy_image on platforms that support
-       * ETC2 natively in hardware.  We would need more hacks to support it
-       * elsewhere. Same with OES_texture_view.
+      /* For now, we can't enable OES_texture_view on Gen 7 because of
+       * some piglit failures coming from
+       * piglit/tests/spec/arb_texture_view/rendering-formats.c that need
+       * investigation.
        */
-      ctx->Extensions.OES_copy_image = true;
       ctx->Extensions.OES_texture_view = true;
    }
 
+   if (devinfo->gen >= 7) {
+      /* We can safely enable OES_copy_image on Gen 7, since we emulate
+       * the ETC2 support using the shadow_miptree to store the
+       * compressed data.
+       */
+      ctx->Extensions.OES_copy_image = true;
+   }
+
    if (devinfo->gen >= 8) {
       ctx->Extensions.ARB_gpu_shader_int64 = true;
       /* requires ARB_gpu_shader_int64 */