etnaviv: Handle 64-bit pixel formats in texture sampler TS setup
Set VIVS_TS_SAMPLER_CONFIG_64BPP_FORMAT when the texture format has 64 bits per pixel to ensure proper tile status handling for wide formats. Fixes at least the following CTS tests: - dEQP-GLES3.functional.fbo.color.repeated_clear.sample.tex2d.rg32i - dEQP-GLES3.functional.fbo.color.repeated_clear.sample.tex2d.rg32ui - dEQP-GLES3.functional.fbo.color.repeated_clear.sample.tex2d.rgba16i - dEQP-GLES3.functional.fbo.color.repeated_clear.sample.tex2d.rgba16ui 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/36270>
This commit is contained in:
committed by
Marge Bot
parent
3f55070152
commit
1946592e39
@@ -102,7 +102,8 @@ etna_configure_sampler_ts(struct etna_sampler_ts *sts, struct pipe_sampler_view
|
||||
sts->TS_SAMPLER_CONFIG =
|
||||
VIVS_TS_SAMPLER_CONFIG_ENABLE |
|
||||
COND(lev->ts_compress_fmt >= 0, VIVS_TS_SAMPLER_CONFIG_COMPRESSION) |
|
||||
VIVS_TS_SAMPLER_CONFIG_COMPRESSION_FORMAT(lev->ts_compress_fmt);
|
||||
VIVS_TS_SAMPLER_CONFIG_COMPRESSION_FORMAT(lev->ts_compress_fmt) |
|
||||
COND(util_format_get_blocksizebits(pview->format) == 64, VIVS_TS_SAMPLER_CONFIG_64BPP_FORMAT);
|
||||
sts->TS_SAMPLER_CLEAR_VALUE = lev->clear_value;
|
||||
sts->TS_SAMPLER_CLEAR_VALUE2 = lev->clear_value >> 32;
|
||||
sts->TS_SAMPLER_STATUS_BASE.bo = rsc->ts_bo;
|
||||
|
||||
Reference in New Issue
Block a user