From be6342633c2019725577adab5170e78cd7fccf3b Mon Sep 17 00:00:00 2001 From: Rob Clark Date: Tue, 24 Sep 2024 11:58:42 -0700 Subject: [PATCH] freedreno/a6xx: Cleanup WFIs around RB_CCU_CNTL This was only actually needed on the earliest a6xx (probably just a630?). Signed-off-by: Rob Clark Part-of: --- src/gallium/drivers/freedreno/a6xx/fd6_blitter.cc | 1 - src/gallium/drivers/freedreno/a6xx/fd6_emit.cc | 3 ++- src/gallium/drivers/freedreno/a6xx/fd6_gmem.cc | 4 ---- 3 files changed, 2 insertions(+), 6 deletions(-) diff --git a/src/gallium/drivers/freedreno/a6xx/fd6_blitter.cc b/src/gallium/drivers/freedreno/a6xx/fd6_blitter.cc index c603c2bb202..477b00efeb9 100644 --- a/src/gallium/drivers/freedreno/a6xx/fd6_blitter.cc +++ b/src/gallium/drivers/freedreno/a6xx/fd6_blitter.cc @@ -257,7 +257,6 @@ emit_setup(struct fd_batch *batch) FD6_INVALIDATE_CCU_DEPTH); /* normal BLIT_OP_SCALE operation needs bypass RB_CCU_CNTL */ - OUT_WFI5(ring); fd6_emit_ccu_cntl(ring, screen, false); } diff --git a/src/gallium/drivers/freedreno/a6xx/fd6_emit.cc b/src/gallium/drivers/freedreno/a6xx/fd6_emit.cc index 767aaf7e546..025858a70d1 100644 --- a/src/gallium/drivers/freedreno/a6xx/fd6_emit.cc +++ b/src/gallium/drivers/freedreno/a6xx/fd6_emit.cc @@ -824,6 +824,8 @@ fd6_emit_ccu_cntl(struct fd_ringbuffer *ring, struct fd_screen *screen, bool gme ); } } else { + OUT_WFI5(ring); /* early a6xx (a630?) needed this */ + OUT_REG(ring, RB_CCU_CNTL( CHIP, @@ -922,7 +924,6 @@ fd6_emit_restore(struct fd_batch *batch, struct fd_ringbuffer *ring) .concurrent_resolve = screen->info->a6xx.concurrent_resolve, ) ); - OUT_WFI5(ring); } fd6_emit_ccu_cntl(ring, screen, false); diff --git a/src/gallium/drivers/freedreno/a6xx/fd6_gmem.cc b/src/gallium/drivers/freedreno/a6xx/fd6_gmem.cc index 98c3e91a894..cd4f8d03d97 100644 --- a/src/gallium/drivers/freedreno/a6xx/fd6_gmem.cc +++ b/src/gallium/drivers/freedreno/a6xx/fd6_gmem.cc @@ -1014,8 +1014,6 @@ emit_binning_pass(struct fd_batch *batch) assert_dt OUT_PKT7(ring, CP_SET_MODE, 1); OUT_RING(ring, 0x0); - OUT_WFI5(ring); - fd6_emit_ccu_cntl(ring, screen, true); } @@ -1085,7 +1083,6 @@ fd6_emit_tile_init(struct fd_batch *batch) assert_dt OUT_PKT7(ring, CP_SKIP_IB2_ENABLE_LOCAL, 1); OUT_RING(ring, 0x1); - OUT_WFI5(ring); fd6_emit_ccu_cntl(ring, screen, true); emit_zs(batch->ctx, ring, pfb->zsbuf, batch->gmem_state); @@ -1978,7 +1975,6 @@ fd6_emit_sysmem(struct fd_batch *batch) emit_sysmem_clears(batch, subpass); } - OUT_WFI5(ring); fd6_emit_ccu_cntl(ring, screen, false); struct pipe_framebuffer_state *pfb = &batch->framebuffer;