etnaviv: Hide MSAA support behind debug flag

With the current level of MSAA support we have some real world rendering
problems in Chromium/Skia (issue #7678). Convert the MSAA support to an
explicit opt-in by settings ETNA_MESA_DEBUG=msaa.

Cc: 22.3 mesa-stable
Signed-off-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Reviewed-by: Lucas Stach <l.stach@pengutronix.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19870>
(cherry picked from commit 4f5e59d114)
This commit is contained in:
Christian Gmeiner 2022-11-19 17:49:34 +01:00 committed by Eric Engestrom
parent 755eb3370c
commit 531fa051de
3 changed files with 7 additions and 1 deletions

View file

@ -2092,7 +2092,7 @@
"description": "etnaviv: Hide MSAA support behind debug flag",
"nominated": true,
"nomination_type": 0,
"resolution": 0,
"resolution": 1,
"main_sha": null,
"because_sha": null
},

View file

@ -55,6 +55,7 @@
#define ETNA_DBG_DEQP 0x800000 /* Hacks to run dEQP GLES3 tests */
#define ETNA_DBG_NOCACHE 0x1000000 /* Disable shader cache */
#define ETNA_DBG_NO_LINEAR_PE 0x2000000 /* Disable linear PE */
#define ETNA_DBG_MSAA 0x4000000 /* Enable MSAA */
extern int etna_mesa_debug; /* set in etnaviv_screen.c from ETNA_MESA_DEBUG */

View file

@ -73,6 +73,7 @@ static const struct debug_named_value etna_debug_options[] = {
{"deqp", ETNA_DBG_DEQP, "Hacks to run dEQP GLES3 tests"}, /* needs MESA_GLES_VERSION_OVERRIDE=3.0 */
{"nocache", ETNA_DBG_NOCACHE, "Disable shader cache"},
{"no_linear_pe", ETNA_DBG_NO_LINEAR_PE, "Disable linear PE"},
{"msaa", ETNA_DBG_MSAA, "Enable MSAA support"},
DEBUG_NAMED_VALUE_END
};
@ -496,6 +497,10 @@ gpu_supports_render_format(struct etna_screen *screen, enum pipe_format format,
return false;
if (sample_count > 1) {
/* Explicitly enabled. */
if (!DBG_ENABLED(ETNA_DBG_MSAA))
return false;
/* The hardware supports it. */
if (!VIV_FEATURE(screen, chipFeatures, MSAA))
return false;