[PATCH i-g-t] lib/rendercopy_gen9: Use AUX_NONE for platforms with unified compression
Zbigniew Kempczyński
zbigniew.kempczynski at intel.com
Tue Jun 25 09:16:50 UTC 2024
For non-MSAA surfaces when unified compression is configured in PAT
auxiliary surfaces must be set to AUX_NONE. I haven't noticed this
on Xe2+ before as it setting was silently ignored by hardware but
setting to AUX_CCS_E is incorrect and may fail on newer platforms.
Signed-off-by: Zbigniew Kempczyński <zbigniew.kempczynski at intel.com>
Cc: Stuart Summers <stuart.summers at intel.com>
---
lib/rendercopy_gen9.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/lib/rendercopy_gen9.c b/lib/rendercopy_gen9.c
index 726f1a087b..62a365f3c2 100644
--- a/lib/rendercopy_gen9.c
+++ b/lib/rendercopy_gen9.c
@@ -229,7 +229,10 @@ gen9_bind_buf(struct intel_bb *ibb, const struct intel_buf *buf, int is_dst,
if (buf->compression == I915_COMPRESSION_MEDIA)
ss->ss7.tgl.media_compression = 1;
else if (buf->compression == I915_COMPRESSION_RENDER) {
- ss->ss6.aux_mode = 0x5; /* AUX_CCS_E */
+ if (AT_LEAST_GEN(ibb->devid, 20))
+ ss->ss6.aux_mode = 0x0; /* AUX_NONE, unified compression */
+ else
+ ss->ss6.aux_mode = 0x5; /* AUX_CCS_E */
if (buf->ccs[0].stride) {
--
2.34.1
More information about the igt-dev
mailing list