diff options
author | Rob Clark <robdclark@gmail.com> | 2016-11-30 13:52:11 -0500 |
---|---|---|
committer | Rob Clark <robdclark@gmail.com> | 2016-11-30 17:32:54 -0500 |
commit | 8b6f8f2576e3358d3da9c072d134f40e9a3332fc (patch) | |
tree | 1f945a393114e773aaa906e48a25130c445dea7d /src/gallium/drivers | |
parent | 676c0cf2873334845a94c05352748bdaf5df77a7 (diff) |
freedreno/a5xx: fix discard
Signed-off-by: Rob Clark <robdclark@gmail.com>
Diffstat (limited to 'src/gallium/drivers')
-rw-r--r-- | src/gallium/drivers/freedreno/a5xx/fd5_emit.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/gallium/drivers/freedreno/a5xx/fd5_emit.c b/src/gallium/drivers/freedreno/a5xx/fd5_emit.c index edb1f4f1e43..04d880816dd 100644 --- a/src/gallium/drivers/freedreno/a5xx/fd5_emit.c +++ b/src/gallium/drivers/freedreno/a5xx/fd5_emit.c @@ -285,9 +285,6 @@ fd5_emit_state(struct fd_context *ctx, struct fd_ringbuffer *ring, OUT_PKT4(ring, REG_A5XX_RB_STENCILREFMASK, 1); OUT_RING(ring, zsa->rb_stencilrefmask | A5XX_RB_STENCILREFMASK_STENCILREF(sr->ref_value[0])); - - OUT_PKT4(ring, REG_A5XX_GRAS_SU_DEPTH_PLANE_CNTL, 1); - OUT_RING(ring, zsa->gras_su_depth_plane_cntl); } if (dirty & (FD_DIRTY_ZSA | FD_DIRTY_RASTERIZER | FD_DIRTY_PROG)) { @@ -299,6 +296,10 @@ fd5_emit_state(struct fd_context *ctx, struct fd_ringbuffer *ring, OUT_PKT4(ring, REG_A5XX_RB_DEPTH_PLANE_CNTL, 1); OUT_RING(ring, COND(fragz, A5XX_RB_DEPTH_PLANE_CNTL_FRAG_WRITES_Z)); + + OUT_PKT4(ring, REG_A5XX_GRAS_SU_DEPTH_PLANE_CNTL, 1); + OUT_RING(ring, zsa->gras_su_depth_plane_cntl | + COND(fragz, A5XX_GRAS_SU_DEPTH_PLANE_CNTL_ALPHA_TEST_ENABLE)); } if (dirty & FD_DIRTY_RASTERIZER) { |