diff options
author | Marek Olšák <[email protected]> | 2018-11-13 16:16:51 -0500 |
---|---|---|
committer | Marek Olšák <[email protected]> | 2018-11-20 21:18:46 -0500 |
commit | 6c1a34d2e766f04387f0cfd7187d5f6dfbb304d9 (patch) | |
tree | 20f4a5cc619fba3b03b05ba8cf1f877313e965f2 /src/gallium | |
parent | bc5adc27b5e52d27eca6a61ad1e049b160570c98 (diff) |
radeonsi: don't send data after write-confirm with BOTTOM_OF_PIPE_TS
There are no writes.
Tested-by: Dieter Nützel <[email protected]>
Reviewed-by: Dave Airlie <[email protected]>
Diffstat (limited to 'src/gallium')
-rw-r--r-- | src/gallium/drivers/radeonsi/si_fence.c | 3 | ||||
-rw-r--r-- | src/gallium/drivers/radeonsi/si_perfcounter.c | 3 | ||||
-rw-r--r-- | src/gallium/drivers/radeonsi/si_query.c | 8 |
3 files changed, 5 insertions, 9 deletions
diff --git a/src/gallium/drivers/radeonsi/si_fence.c b/src/gallium/drivers/radeonsi/si_fence.c index 3f22ee31ae8..d385f445774 100644 --- a/src/gallium/drivers/radeonsi/si_fence.c +++ b/src/gallium/drivers/radeonsi/si_fence.c @@ -277,8 +277,7 @@ static void si_fine_fence_set(struct si_context *ctx, } else if (flags & PIPE_FLUSH_BOTTOM_OF_PIPE) { si_cp_release_mem(ctx, V_028A90_BOTTOM_OF_PIPE_TS, 0, - EOP_DST_SEL_MEM, - EOP_INT_SEL_SEND_DATA_AFTER_WR_CONFIRM, + EOP_DST_SEL_MEM, EOP_INT_SEL_NONE, EOP_DATA_SEL_VALUE_32BIT, NULL, fence_va, 0x80000000, PIPE_QUERY_GPU_FINISHED); diff --git a/src/gallium/drivers/radeonsi/si_perfcounter.c b/src/gallium/drivers/radeonsi/si_perfcounter.c index 2ca6d2d7410..cea7d57e518 100644 --- a/src/gallium/drivers/radeonsi/si_perfcounter.c +++ b/src/gallium/drivers/radeonsi/si_perfcounter.c @@ -581,8 +581,7 @@ static void si_pc_emit_stop(struct si_context *sctx, struct radeon_cmdbuf *cs = sctx->gfx_cs; si_cp_release_mem(sctx, V_028A90_BOTTOM_OF_PIPE_TS, 0, - EOP_DST_SEL_MEM, - EOP_INT_SEL_SEND_DATA_AFTER_WR_CONFIRM, + EOP_DST_SEL_MEM, EOP_INT_SEL_NONE, EOP_DATA_SEL_VALUE_32BIT, buffer, va, 0, SI_NOT_QUERY); si_cp_wait_mem(sctx, va, 0, 0xffffffff, 0); diff --git a/src/gallium/drivers/radeonsi/si_query.c b/src/gallium/drivers/radeonsi/si_query.c index 9b09c74d48a..21b9aeeac28 100644 --- a/src/gallium/drivers/radeonsi/si_query.c +++ b/src/gallium/drivers/radeonsi/si_query.c @@ -890,9 +890,8 @@ static void si_query_hw_do_emit_stop(struct si_context *sctx, va += 8; /* fall through */ case PIPE_QUERY_TIMESTAMP: - si_cp_release_mem(sctx, V_028A90_BOTTOM_OF_PIPE_TS, - 0, EOP_DST_SEL_MEM, - EOP_INT_SEL_SEND_DATA_AFTER_WR_CONFIRM, + si_cp_release_mem(sctx, V_028A90_BOTTOM_OF_PIPE_TS, 0, + EOP_DST_SEL_MEM, EOP_INT_SEL_NONE, EOP_DATA_SEL_TIMESTAMP, NULL, va, 0, query->b.type); fence_va = va + 8; @@ -917,8 +916,7 @@ static void si_query_hw_do_emit_stop(struct si_context *sctx, if (fence_va) { si_cp_release_mem(sctx, V_028A90_BOTTOM_OF_PIPE_TS, 0, - EOP_DST_SEL_MEM, - EOP_INT_SEL_SEND_DATA_AFTER_WR_CONFIRM, + EOP_DST_SEL_MEM, EOP_INT_SEL_NONE, EOP_DATA_SEL_VALUE_32BIT, query->buffer.buf, fence_va, 0x80000000, query->b.type); |