radv: fix RB+ for SRGB formats
authorSamuel Pitoiset <samuel.pitoiset@gmail.com>
Mon, 30 Jan 2023 08:16:50 +0000 (09:16 +0100)
committerMarge Bot <emma+marge@anholt.net>
Tue, 31 Jan 2023 11:43:10 +0000 (11:43 +0000)
This should be set for linear colorspace only.

Ported from RadeonSI.

Cc: mesa-stable
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20982>

src/amd/vulkan/radv_cmd_buffer.c

index 9b2a034..6ef49a9 100644 (file)
@@ -1708,7 +1708,9 @@ radv_emit_rbplus_state(struct radv_cmd_buffer *cmd_buffer)
              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(cb->cb_color_info) != V_028C70_NUMBER_SRGB)
+               sx_blend_opt_epsilon |= V_028758_8BIT_FORMAT << (i * 4);
          }
          break;