Mesa (master): turnip: fix integer render targets
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Wed Nov 27 00:17:24 UTC 2019
Module: Mesa
Branch: master
Commit: 62ff90cc5e444d173a92cb26da38a2ff252731df
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=62ff90cc5e444d173a92cb26da38a2ff252731df
Author: Jonathan Marek <jonathan at marek.ca>
Date: Mon Nov 18 23:01:18 2019 -0500
turnip: fix integer render targets
Add missing required bits. Fixes at least:
dEQP-VK.pipeline.render_to_image.dedicated_allocation.1d.small.r16g16_sint_d24_unorm_s8_uint
dEQP-VK.pipeline.render_to_image.dedicated_allocation.2d.mipmap.r16g16_sint_d24_unorm_s8_uint
dEQP-VK.renderpass.dedicated_allocation.attachment.4.401
dEQP-VK.renderpass2.suballocation.formats.r16_uint.load.draw
dEQP-VK.synchronization.op.single_queue.barrier.write_draw_read_copy_image_to_buffer.image_128x128_r16_uint
Signed-off-by: Jonathan Marek <jonathan at marek.ca>
Reviewed-by: Eric Anholt <eric at anholt.net>
---
src/freedreno/vulkan/tu_cmd_buffer.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/src/freedreno/vulkan/tu_cmd_buffer.c b/src/freedreno/vulkan/tu_cmd_buffer.c
index 29e2d872b6b..503067f1bc4 100644
--- a/src/freedreno/vulkan/tu_cmd_buffer.c
+++ b/src/freedreno/vulkan/tu_cmd_buffer.c
@@ -513,7 +513,9 @@ tu6_emit_mrt(struct tu_cmd_buffer *cmd, struct tu_cs *cs)
cs, tiling->gmem_offsets[gmem_index++]); /* RB_MRT[i].BASE_GMEM */
tu_cs_emit_pkt4(cs, REG_A6XX_SP_FS_MRT_REG(i), 1);
- tu_cs_emit(cs, A6XX_SP_FS_MRT_REG_COLOR_FORMAT(format->rb));
+ tu_cs_emit(cs, A6XX_SP_FS_MRT_REG_COLOR_FORMAT(format->rb) |
+ COND(vk_format_is_sint(iview->vk_format), A6XX_SP_FS_MRT_REG_COLOR_SINT) |
+ COND(vk_format_is_uint(iview->vk_format), A6XX_SP_FS_MRT_REG_COLOR_UINT));
tu_cs_emit_pkt4(cs, REG_A6XX_RB_MRT_FLAG_BUFFER(i), 3);
tu6_emit_flag_buffer(cs, iview);
More information about the mesa-commit
mailing list