etnaviv: disable PE_COLOR_FORMAT_OVERWRITE with MSAA
This breaks MSAA, even when compression is not activated. The issue is mostly theoretical, as we always enable color compression with MSAA, but I ran into some GPU hangs when I disabled compression to run some tests. Signed-off-by: Lucas Stach <l.stach@pengutronix.de> Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19066>
This commit is contained in:
@@ -167,8 +167,12 @@ etna_set_framebuffer_state(struct pipe_context *pctx,
|
||||
|
||||
cs->PE_COLOR_FORMAT |=
|
||||
VIVS_PE_COLOR_FORMAT_COMPONENTS__MASK |
|
||||
VIVS_PE_COLOR_FORMAT_OVERWRITE |
|
||||
COND(color_supertiled, VIVS_PE_COLOR_FORMAT_SUPER_TILED);
|
||||
|
||||
nr_samples_color = cbuf->base.texture->nr_samples;
|
||||
if (nr_samples_color <= 1)
|
||||
cs->PE_COLOR_FORMAT |= VIVS_PE_COLOR_FORMAT_OVERWRITE;
|
||||
|
||||
if (VIV_FEATURE(screen, chipMinorFeatures6, CACHE128B256BPERLINE))
|
||||
cs->PE_COLOR_FORMAT |= COND(color_supertiled, VIVS_PE_COLOR_FORMAT_SUPER_TILED_NEW);
|
||||
/* VIVS_PE_COLOR_FORMAT_COMPONENTS() and
|
||||
@@ -225,8 +229,6 @@ etna_set_framebuffer_state(struct pipe_context *pctx,
|
||||
}
|
||||
}
|
||||
|
||||
nr_samples_color = cbuf->base.texture->nr_samples;
|
||||
|
||||
if (util_format_is_srgb(cbuf->base.format))
|
||||
pe_logic_op |= VIVS_PE_LOGIC_OP_SRGB;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user