Mesa (master): intel/blorp: Set needs_(dst|src)_offset for Gen4 cubemaps

Ian Romanick idr at kemper.freedesktop.org
Tue Jun 20 18:09:02 UTC 2017


Module: Mesa
Branch: master
Commit: b2dd61196e7fb4ee9b4d1be7b83c2bdfa7f12021
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=b2dd61196e7fb4ee9b4d1be7b83c2bdfa7f12021

Author: Jason Ekstrand <jason.ekstrand at intel.com>
Date:   Wed May 31 11:29:14 2017 -0700

intel/blorp: Set needs_(dst|src)_offset for Gen4 cubemaps

We call convert_to_single_slice so they may end up with a non-trivial
offset that needs to be taken into account.

v2 (idr): Also set needs_src_offset.  Suggested by Jason.

Fixes ES2-CTS.functional.texture.specification.basic_copyteximage2d.cube_rgba
and ES2-CTS.functional.texture.specification.basic_copytexsubimage2d.cube_rgba
on G45.

Signed-off-by: Ian Romanick <ian.d.romanick at intel.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=101284
Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>

---

 src/intel/blorp/blorp_blit.c | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/src/intel/blorp/blorp_blit.c b/src/intel/blorp/blorp_blit.c
index d93cde2fcf..e48e5da1fa 100644
--- a/src/intel/blorp/blorp_blit.c
+++ b/src/intel/blorp/blorp_blit.c
@@ -1672,11 +1672,15 @@ try_blorp_blit(struct blorp_batch *batch,
       /* The MinLOD and MinimumArrayElement don't work properly for cube maps.
        * Convert them to a single slice on gen4.
        */
-      if (params->dst.surf.usage & ISL_SURF_USAGE_CUBE_BIT)
+      if (params->dst.surf.usage & ISL_SURF_USAGE_CUBE_BIT) {
          blorp_surf_convert_to_single_slice(batch->blorp->isl_dev, &params->dst);
+         wm_prog_key->need_dst_offset = true;
+      }
 
-      if (params->src.surf.usage & ISL_SURF_USAGE_CUBE_BIT)
+      if (params->src.surf.usage & ISL_SURF_USAGE_CUBE_BIT) {
          blorp_surf_convert_to_single_slice(batch->blorp->isl_dev, &params->src);
+         wm_prog_key->need_src_offset = true;
+      }
    }
 
    if (devinfo->gen > 6 &&




More information about the mesa-commit mailing list