summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSamuel Iglesias Gonsálvez <siglesias@igalia.com>2020-07-06 09:24:05 +0200
committerMarge Bot <eric+marge@anholt.net>2020-10-02 03:46:47 +0000
commit1d83f5ae8435c428a20fa947d6a2b22ae453e80c (patch)
tree93235d54009179fc146358b86bdd615da177bfb3
parent2f79e0066405f80c3244d1cc814bc6a51d1d581a (diff)
turnip: disable LRZ on vkCmdClearattachments() 3D fallback path
Partial clears are not supported and we may end up having LRZ enabled from past commands. Signed-off-by: Samuel Iglesias Gonsálvez <siglesias@igalia.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5146>
-rw-r--r--src/freedreno/vulkan/tu_clear_blit.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/freedreno/vulkan/tu_clear_blit.c b/src/freedreno/vulkan/tu_clear_blit.c
index f8ed2c1af42..a559661313d 100644
--- a/src/freedreno/vulkan/tu_clear_blit.c
+++ b/src/freedreno/vulkan/tu_clear_blit.c
@@ -1907,6 +1907,11 @@ tu_clear_sysmem_attachments(struct tu_cmd_buffer *cmd,
.component_enable = COND(clear_rts & (1 << i), 0xf)));
}
+ if (z_clear) {
+ tu_cs_emit_regs(cs, A6XX_GRAS_LRZ_CNTL(0));
+ tu_cs_emit_regs(cs, A6XX_RB_LRZ_CNTL(0));
+ }
+
tu_cs_emit_regs(cs, A6XX_RB_DEPTH_PLANE_CNTL());
tu_cs_emit_regs(cs, A6XX_RB_DEPTH_CNTL(
.z_enable = z_clear,