aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJonathan Marek <[email protected]>2019-07-12 19:26:32 -0400
committerJonathan Marek <[email protected]>2019-07-17 23:07:50 -0400
commit08514a9721144f877d670091de6e6d946a5e73f8 (patch)
treedc65a74f32dd8eee1fd5d2dba3a99d60890b5d61
parentaaf0c47c7667f22bc4de6f359b1c9d7ce40dbe03 (diff)
etnaviv: set DITHER_MODE
This fixes a rendering glitch observed in SDL testscale test, where alpha blending samples with value (1.0, 1.0, 1.0, 0.0) whitens the target instead of having no effect. Signed-off-by: Jonathan Marek <[email protected]> Reviewed-by: Christian Gmeiner <[email protected]>
-rw-r--r--src/gallium/drivers/etnaviv/etnaviv_blend.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/gallium/drivers/etnaviv/etnaviv_blend.c b/src/gallium/drivers/etnaviv/etnaviv_blend.c
index 637586aee72..1f57499e454 100644
--- a/src/gallium/drivers/etnaviv/etnaviv_blend.c
+++ b/src/gallium/drivers/etnaviv/etnaviv_blend.c
@@ -90,6 +90,7 @@ etna_blend_state_create(struct pipe_context *pctx,
co->PE_LOGIC_OP =
VIVS_PE_LOGIC_OP_OP(logicop_enable ? so->logicop_func : LOGIC_OP_COPY) |
+ VIVS_PE_LOGIC_OP_DITHER_MODE(3) | /* TODO: related to dithering, sometimes 2 */
0x000E4000 /* ??? */;
co->fo_allowed = !alpha_enable && !logicop_enable;