From f2fb8ad422506b84684a0864ce67d38eef25e724 Mon Sep 17 00:00:00 2001 From: Danylo Piliaiev Date: Thu, 6 Nov 2025 15:02:49 +0100 Subject: [PATCH] tu: Don't CONCURRENT_BIN_DISABLE when there is no depth image We have to disable CB when lrz fast-clear is disabled, but if there is no depth image at all, we can keep it enabled. This means that RP without depth won't effectively be a CB barrier. Signed-off-by: Danylo Piliaiev Part-of: --- src/freedreno/vulkan/tu_cmd_buffer.cc | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/freedreno/vulkan/tu_cmd_buffer.cc b/src/freedreno/vulkan/tu_cmd_buffer.cc index 1c9ec84bc2b..de8a60fde04 100644 --- a/src/freedreno/vulkan/tu_cmd_buffer.cc +++ b/src/freedreno/vulkan/tu_cmd_buffer.cc @@ -2791,8 +2791,9 @@ tu7_emit_concurrent_binning(struct tu_cmd_buffer *cmd, struct tu_cs *cs, /* LRZ can only be cleared via fast clear in BV. Disable CB if we can't * use it. */ - tu7_cb_disable_reason(!cmd->state.lrz.fast_clear, cmd, - "LRZ fast clear disabled") || + tu7_cb_disable_reason( + (!cmd->state.lrz.fast_clear && cmd->state.lrz.image_view), cmd, + "LRZ fast clear disabled") || tu7_cb_disable_reason(TU_DEBUG(NO_CONCURRENT_BINNING), cmd, "TU_DEBUG(NO_CONCURRENT_BINNING)")) { tu_cs_emit_pkt7(cs, CP_THREAD_CONTROL, 1);