diff options
author | Rob Clark <[email protected]> | 2020-01-25 13:44:59 -0800 |
---|---|---|
committer | Marge Bot <[email protected]> | 2020-01-29 11:21:47 +0000 |
commit | f066e3afc787a5e6ec06b358003aeae00a3d3f61 (patch) | |
tree | 6c0d93edab19e8be924466082565cb7361d3eb0e /src/gallium/drivers/freedreno/a6xx/fd6_emit.c | |
parent | eb281df1a1cf63dd4a4d941a019fd384e28af146 (diff) |
freedreno/a6xx: remove special handling based on MRT format
Logicop in particular is supposed to work for integer formats.. but
maybe this situation doesn't happen in gles. The only thing that isn't
required for integer formats is blending.
Signed-off-by: Rob Clark <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3565>
Diffstat (limited to 'src/gallium/drivers/freedreno/a6xx/fd6_emit.c')
-rw-r--r-- | src/gallium/drivers/freedreno/a6xx/fd6_emit.c | 16 |
1 files changed, 1 insertions, 15 deletions
diff --git a/src/gallium/drivers/freedreno/a6xx/fd6_emit.c b/src/gallium/drivers/freedreno/a6xx/fd6_emit.c index 087b537f10f..3af96d91cfe 100644 --- a/src/gallium/drivers/freedreno/a6xx/fd6_emit.c +++ b/src/gallium/drivers/freedreno/a6xx/fd6_emit.c @@ -1078,22 +1078,8 @@ fd6_emit_state(struct fd_ringbuffer *ring, struct fd6_emit *emit) uint32_t i; for (i = 0; i < pfb->nr_cbufs; i++) { - enum pipe_format format = pipe_surface_format(pfb->cbufs[i]); - bool is_int = util_format_is_pure_integer(format); - bool has_alpha = util_format_has_alpha(format); - uint32_t control = blend->rb_mrt[i].control; - - if (is_int) { - control &= A6XX_RB_MRT_CONTROL_COMPONENT_ENABLE__MASK; - control |= A6XX_RB_MRT_CONTROL_ROP_CODE(ROP_COPY); - } - - if (!has_alpha) { - control &= ~A6XX_RB_MRT_CONTROL_BLEND2; - } - OUT_PKT4(ring, REG_A6XX_RB_MRT_CONTROL(i), 1); - OUT_RING(ring, control); + OUT_RING(ring, blend->rb_mrt[i].control); OUT_PKT4(ring, REG_A6XX_RB_MRT_BLEND_CONTROL(i), 1); OUT_RING(ring, blend->rb_mrt[i].blend_control); |