Mesa (main): isl: require hiz for depth surface in isl_surf_get_ccs_surf

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Thu May 13 14:39:04 UTC 2021


Module: Mesa
Branch: main
Commit: 343d90b6ab536ce92050035682c072ad1c21b694
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=343d90b6ab536ce92050035682c072ad1c21b694

Author: Tapani Pälli <tapani.palli at intel.com>
Date:   Wed May 12 15:19:43 2021 +0300

isl: require hiz for depth surface in isl_surf_get_ccs_surf

Fixes: 752eefdb ("intel/isl: Refactor isl_surf_get_ccs_surf")
Signed-off-by: Tapani Pälli <tapani.palli at intel.com>
Reviewed-by: Nanley Chery <nanley.g.chery at intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10768>

---

 src/intel/isl/isl.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/src/intel/isl/isl.c b/src/intel/isl/isl.c
index c9d851983c0..d2a9e2c3b88 100644
--- a/src/intel/isl/isl.c
+++ b/src/intel/isl/isl.c
@@ -2116,6 +2116,11 @@ isl_surf_get_ccs_surf(const struct isl_device *dev,
       return false;
 
    if (ISL_GFX_VER(dev) >= 12) {
+      /* With depth surfaces, HIZ is required for CCS. */
+      if (surf->usage & ISL_SURF_USAGE_DEPTH_BIT &&
+          aux_surf->tiling != ISL_TILING_HIZ)
+         return false;
+
       enum isl_format ccs_format;
       switch (isl_format_get_layout(surf->format)->bpb) {
       case 8:     ccs_format = ISL_FORMAT_GFX12_CCS_8BPP_Y0;    break;



More information about the mesa-commit mailing list