etnaviv: Improve split sampler check

Check if the block size is bigger then 64. We want to block
e.g. one of the following formats:
 - R32G32B32A32_FLOAT
 - R32G32B32A32_SINT
 - R32G32B32A32_ZINT

Unbreaks e.g. dEQP-GLES3.functional.fbo.completeness.renderable.texture.color0.rgb16i

Fixes: e481c1269c ("etnaviv: disable 64bpp render/sampler formats")
Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com>
Reviewed-by: Lucas Stach <l.stach@pengutronix.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27111>
This commit is contained in:
Christian Gmeiner 2024-01-17 10:50:06 +01:00 committed by Marge Bot
parent 992ada2f8f
commit 04521c14b0

View file

@ -484,7 +484,7 @@ gpu_supports_texture_format(struct etna_screen *screen, uint32_t fmt,
/* Requires split sampler support, which the driver doesn't support, yet. */
if (!util_format_is_compressed(format) &&
util_format_get_blocksizebits(format) > 32)
util_format_get_blocksizebits(format) > 64)
return false;
if (fmt == TEXTURE_FORMAT_ETC1)
@ -530,7 +530,7 @@ gpu_supports_render_format(struct etna_screen *screen, enum pipe_format format,
return false;
/* Requires split target support, which the driver doesn't support, yet. */
if (util_format_get_blocksizebits(format) > 32)
if (util_format_get_blocksizebits(format) > 64)
return false;
if (sample_count > 1) {