Mesa (master): intel/isl: Allow non-2D CCS surfaces

Jason Ekstrand jekstrand at kemper.freedesktop.org
Thu Nov 17 20:04:22 UTC 2016


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

Author: Jason Ekstrand <jason.ekstrand at intel.com>
Date:   Wed Oct 26 22:56:53 2016 -0700

intel/isl: Allow non-2D CCS surfaces

The CCS calculations in ISL are already correct for 1-D and 3-D CCS
surfaces since they have exactly the same layout as 2-D array surfaces (at
least on Sky Lake).  The only problem was that we weren't passing in the
right dimensionality and we weren't passing in the depth.

Reviewed-by: Topi Pohjolainen <topi.pohjolainen at intel.com>

---

 src/intel/isl/isl.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/intel/isl/isl.c b/src/intel/isl/isl.c
index 4d85c3b..82ab68d 100644
--- a/src/intel/isl/isl.c
+++ b/src/intel/isl/isl.c
@@ -1492,11 +1492,11 @@ isl_surf_get_ccs_surf(const struct isl_device *dev,
    }
 
    isl_surf_init(dev, ccs_surf,
-                 .dim = ISL_SURF_DIM_2D,
+                 .dim = surf->dim,
                  .format = ccs_format,
                  .width = surf->logical_level0_px.width,
                  .height = surf->logical_level0_px.height,
-                 .depth = 1,
+                 .depth = surf->logical_level0_px.depth,
                  .levels = surf->levels,
                  .array_len = surf->logical_level0_px.array_len,
                  .samples = 1,




More information about the mesa-commit mailing list