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.
Signed-off-by: Jason Ekstrand <ja...@jlekstrand.net> --- 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 578c0e7..d0c5a0c 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, -- 2.5.0.400.gff86faf _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev