From 8556b3db71683fc0393b7f75b0317890c8c0ae4e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Tue, 24 Jan 2023 05:52:17 -0500 Subject: [PATCH] radeonsi: fix RB+ blending with sRGB formats The epsilon for 8bpc is for the linear colorspace. There is no epsilon for sRGB. Fixes: 17021efc742 - radeonsi: adjust RB+ blend optimization settings Acked-by: Pierre-Eric Pelloux-Prayer Part-of: --- src/gallium/drivers/radeonsi/si_state.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/radeonsi/si_state.c b/src/gallium/drivers/radeonsi/si_state.c index 9129d417271..bab7039d40e 100644 --- a/src/gallium/drivers/radeonsi/si_state.c +++ b/src/gallium/drivers/radeonsi/si_state.c @@ -193,7 +193,8 @@ static void si_emit_cb_render_state(struct si_context *sctx) spi_format == V_028714_SPI_SHADER_UINT16_ABGR || spi_format == V_028714_SPI_SHADER_SINT16_ABGR) { sx_ps_downconvert |= V_028754_SX_RT_EXPORT_8_8_8_8 << (i * 4); - sx_blend_opt_epsilon |= V_028758_8BIT_FORMAT << (i * 4); + if (G_028C70_NUMBER_TYPE(surf->cb_color_info) != V_028C70_NUMBER_SRGB) + sx_blend_opt_epsilon |= V_028758_8BIT_FORMAT << (i * 4); } break;