turnip: add emit renderpass cache flushes for sysmem 3D CmdClearAttachments
This clear path behaves like a draw, it needs the same flush as tu_draw. Signed-off-by: Jonathan Marek <jonathan@marek.ca> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5426>
This commit is contained in:

committed by
Marge Bot

parent
72d7df40a5
commit
c93753e618
@@ -2070,6 +2070,9 @@ tu_clear_sysmem_attachments(struct tu_cmd_buffer *cmd,
|
||||
return;
|
||||
}
|
||||
|
||||
/* This clear path behaves like a draw, needs the same flush as tu_draw */
|
||||
tu_emit_cache_flush_renderpass(cmd, cs);
|
||||
|
||||
tu_cs_emit_pkt4(cs, REG_A6XX_SP_FS_OUTPUT_CNTL0, 2);
|
||||
tu_cs_emit(cs, A6XX_SP_FS_OUTPUT_CNTL0_DEPTH_REGID(0xfc) |
|
||||
A6XX_SP_FS_OUTPUT_CNTL0_SAMPMASK_REGID(0xfc) |
|
||||
|
@@ -383,7 +383,7 @@ tu_emit_cache_flush(struct tu_cmd_buffer *cmd_buffer,
|
||||
|
||||
/* Renderpass cache flushes */
|
||||
|
||||
static void
|
||||
void
|
||||
tu_emit_cache_flush_renderpass(struct tu_cmd_buffer *cmd_buffer,
|
||||
struct tu_cs *cs)
|
||||
{
|
||||
|
@@ -1190,6 +1190,10 @@ struct tu_reg_value {
|
||||
uint32_t bo_shift;
|
||||
};
|
||||
|
||||
|
||||
void tu_emit_cache_flush_renderpass(struct tu_cmd_buffer *cmd_buffer,
|
||||
struct tu_cs *cs);
|
||||
|
||||
void tu_emit_cache_flush_ccu(struct tu_cmd_buffer *cmd_buffer,
|
||||
struct tu_cs *cs,
|
||||
enum tu_cmd_ccu_state ccu_state);
|
||||
|
Reference in New Issue
Block a user