Mesa (master): freedreno: move clear path dirty state hack to a2xx backend
Rob Clark
robclark at kemper.freedesktop.org
Tue Apr 18 20:51:10 UTC 2017
Module: Mesa
Branch: master
Commit: d7fa7f5e7eafed8bb88f7e0b9ba4261a76ad9c95
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=d7fa7f5e7eafed8bb88f7e0b9ba4261a76ad9c95
Author: Rob Clark <robdclark at gmail.com>
Date: Sun Apr 16 14:47:35 2017 -0400
freedreno: move clear path dirty state hack to a2xx backend
a3xx/a4xx use the generic u_blitter path, which will make state dirty
bits be set appropriately thanks to the automagic of generic code
setting generic state in the driver. And a5xx has a blit/dma engine
(actually, two) so it doesn't need these extra dirty bits set.
Signed-off-by: Rob Clark <robdclark at gmail.com>
---
src/gallium/drivers/freedreno/a2xx/fd2_draw.c | 9 +++++++++
src/gallium/drivers/freedreno/freedreno_draw.c | 9 ---------
2 files changed, 9 insertions(+), 9 deletions(-)
diff --git a/src/gallium/drivers/freedreno/a2xx/fd2_draw.c b/src/gallium/drivers/freedreno/a2xx/fd2_draw.c
index e47ae9b8af..feec59fa5d 100644
--- a/src/gallium/drivers/freedreno/a2xx/fd2_draw.c
+++ b/src/gallium/drivers/freedreno/a2xx/fd2_draw.c
@@ -278,6 +278,15 @@ fd2_clear(struct fd_context *ctx, unsigned buffers,
OUT_PKT3(ring, CP_SET_CONSTANT, 2);
OUT_RING(ring, CP_REG(REG_A2XX_RB_COPY_CONTROL));
OUT_RING(ring, 0x00000000);
+
+ ctx->dirty |= FD_DIRTY_ZSA |
+ FD_DIRTY_VIEWPORT |
+ FD_DIRTY_RASTERIZER |
+ FD_DIRTY_SAMPLE_MASK |
+ FD_DIRTY_PROG |
+ FD_DIRTY_CONSTBUF |
+ FD_DIRTY_BLEND |
+ FD_DIRTY_FRAMEBUFFER;
}
void
diff --git a/src/gallium/drivers/freedreno/freedreno_draw.c b/src/gallium/drivers/freedreno/freedreno_draw.c
index f911d4a609..16c9ea84af 100644
--- a/src/gallium/drivers/freedreno/freedreno_draw.c
+++ b/src/gallium/drivers/freedreno/freedreno_draw.c
@@ -367,15 +367,6 @@ fd_clear(struct pipe_context *pctx, unsigned buffers,
ctx->clear(ctx, buffers, color, depth, stencil);
- ctx->dirty |= FD_DIRTY_ZSA |
- FD_DIRTY_VIEWPORT |
- FD_DIRTY_RASTERIZER |
- FD_DIRTY_SAMPLE_MASK |
- FD_DIRTY_PROG |
- FD_DIRTY_CONSTBUF |
- FD_DIRTY_BLEND |
- FD_DIRTY_FRAMEBUFFER;
-
if (fd_mesa_debug & FD_DBG_DCLEAR)
fd_context_all_dirty(ctx);
}
More information about the mesa-commit
mailing list