diff options
author | Rob Clark <[email protected]> | 2015-10-15 16:22:23 -0400 |
---|---|---|
committer | Emil Velikov <[email protected]> | 2015-10-21 14:23:21 +0100 |
commit | 0d87f7576318c2a22b4e3d82256e5c9de9c2e474 (patch) | |
tree | ea63bb6dbb7b32dad106bf6a5253d81dcfc4aa34 /src/gallium/drivers/freedreno/a3xx/fd3_emit.c | |
parent | 009890a0de09fcce5229e38ccb0c5b9f211a6f64 (diff) |
freedreno/a3xx: cache-flush is needed after MEM_WRITE
Otherwise the mem2gmem blit would see potentially bogus texture
coordinates. Fixes an issue that shows up with glamor.
CC: "11.0" <[email protected]>
Signed-off-by: Rob Clark <[email protected]>
(cherry picked from commit 6206da736c84c4f7316ab586c886b4865fda8805)
Diffstat (limited to 'src/gallium/drivers/freedreno/a3xx/fd3_emit.c')
-rw-r--r-- | src/gallium/drivers/freedreno/a3xx/fd3_emit.c | 6 |
1 files changed, 1 insertions, 5 deletions
diff --git a/src/gallium/drivers/freedreno/a3xx/fd3_emit.c b/src/gallium/drivers/freedreno/a3xx/fd3_emit.c index 6f514ed05df..5a2711c3990 100644 --- a/src/gallium/drivers/freedreno/a3xx/fd3_emit.c +++ b/src/gallium/drivers/freedreno/a3xx/fd3_emit.c @@ -828,11 +828,7 @@ fd3_emit_restore(struct fd_context *ctx) OUT_RING(ring, A3XX_HLSQ_CONST_FSPRESV_RANGE_REG_STARTENTRY(0) | A3XX_HLSQ_CONST_FSPRESV_RANGE_REG_ENDENTRY(0)); - OUT_PKT0(ring, REG_A3XX_UCHE_CACHE_INVALIDATE0_REG, 2); - OUT_RING(ring, A3XX_UCHE_CACHE_INVALIDATE0_REG_ADDR(0)); - OUT_RING(ring, A3XX_UCHE_CACHE_INVALIDATE1_REG_ADDR(0) | - A3XX_UCHE_CACHE_INVALIDATE1_REG_OPCODE(INVALIDATE) | - A3XX_UCHE_CACHE_INVALIDATE1_REG_ENTIRE_CACHE); + fd3_emit_cache_flush(ctx, ring); OUT_PKT0(ring, REG_A3XX_GRAS_CL_CLIP_CNTL, 1); OUT_RING(ring, 0x00000000); /* GRAS_CL_CLIP_CNTL */ |