Mesa (staging/21.2): radeonsi: add back a workaround for DCC MSAA on gfx9 due to conformance issues

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Tue Oct 12 17:45:24 UTC 2021


Module: Mesa
Branch: staging/21.2
Commit: 63dbbb3e814a0290c2b08adb1874a0bcd7d398ef
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=63dbbb3e814a0290c2b08adb1874a0bcd7d398ef

Author: Marek Olšák <marek.olsak at amd.com>
Date:   Thu Oct  7 17:21:28 2021 -0400

radeonsi: add back a workaround for DCC MSAA on gfx9 due to conformance issues

Fixes: 8b95f51ef1 - radeonsi: fix and enable full DCC with MSAA 2x on gfx9

Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer at amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13256>
(cherry picked from commit 86a33569f4ae8b818c86274044f7f01f2e5c4c8d)

Conflicts:
	src/gallium/drivers/radeonsi/ci/raven-deqp-fail.csv

CI file does not exist in 21.2, so remove it

---

 .pick_status.json                         | 2 +-
 src/gallium/drivers/radeonsi/si_texture.c | 7 +++++++
 2 files changed, 8 insertions(+), 1 deletion(-)

diff --git a/.pick_status.json b/.pick_status.json
index e280e8bfb92..2b6e2822542 100644
--- a/.pick_status.json
+++ b/.pick_status.json
@@ -571,7 +571,7 @@
         "description": "radeonsi: add back a workaround for DCC MSAA on gfx9 due to conformance issues",
         "nominated": true,
         "nomination_type": 1,
-        "resolution": 0,
+        "resolution": 1,
         "main_sha": null,
         "because_sha": "8b95f51ef139b9995da020c19340410340f959db"
     },
diff --git a/src/gallium/drivers/radeonsi/si_texture.c b/src/gallium/drivers/radeonsi/si_texture.c
index cf41f4842eb..0744872d04d 100644
--- a/src/gallium/drivers/radeonsi/si_texture.c
+++ b/src/gallium/drivers/radeonsi/si_texture.c
@@ -232,6 +232,13 @@ static int si_init_surface(struct si_screen *sscreen, struct radeon_surf *surfac
          break;
 
       case GFX9:
+         /* DCC MSAA fails this on Raven:
+          *    https://www.khronos.org/registry/webgl/sdk/tests/deqp/functional/gles3/fbomultisample.2_samples.html
+          * and this on Picasso:
+          *    https://www.khronos.org/registry/webgl/sdk/tests/deqp/functional/gles3/fbomultisample.4_samples.html
+          */
+         if (sscreen->info.family == CHIP_RAVEN && ptex->nr_storage_samples >= 2 && bpe < 4)
+            flags |= RADEON_SURF_DISABLE_DCC;
          break;
 
       case GFX10:



More information about the mesa-commit mailing list