From 31875e92aaeb82236d0737b27bc94605ad0b8cdd Mon Sep 17 00:00:00 2001 From: Samuel Pitoiset Date: Mon, 9 Sep 2024 15:22:26 +0200 Subject: [PATCH] radv: make the helper that uploads indirect descriptors non-static It will be used by DGC. Signed-off-by: Samuel Pitoiset Part-of: --- src/amd/vulkan/radv_cmd_buffer.c | 8 ++++---- src/amd/vulkan/radv_cmd_buffer.h | 3 +++ 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/src/amd/vulkan/radv_cmd_buffer.c b/src/amd/vulkan/radv_cmd_buffer.c index c90024b549a..cec9ae9f558 100644 --- a/src/amd/vulkan/radv_cmd_buffer.c +++ b/src/amd/vulkan/radv_cmd_buffer.c @@ -5909,10 +5909,10 @@ radv_flush_push_descriptors(struct radv_cmd_buffer *cmd_buffer, struct radv_desc set->header.va += bo_offset; } -static void -radv_flush_indirect_descriptor_sets(struct radv_cmd_buffer *cmd_buffer, VkPipelineBindPoint bind_point) +void +radv_upload_indirect_descriptor_sets(struct radv_cmd_buffer *cmd_buffer, + struct radv_descriptor_state *descriptors_state) { - struct radv_descriptor_state *descriptors_state = radv_get_descriptors_state(cmd_buffer, bind_point); uint32_t size = MAX_SETS * 4; uint32_t offset; void *ptr; @@ -5946,7 +5946,7 @@ radv_flush_descriptors(struct radv_cmd_buffer *cmd_buffer, VkShaderStageFlags st flush_indirect_descriptors = descriptors_state->need_indirect_descriptor_sets; if (flush_indirect_descriptors) - radv_flush_indirect_descriptor_sets(cmd_buffer, bind_point); + radv_upload_indirect_descriptor_sets(cmd_buffer, descriptors_state); ASSERTED unsigned cdw_max = radeon_check_space(device->ws, cs, MAX_SETS * MESA_VULKAN_SHADER_STAGES * 4); diff --git a/src/amd/vulkan/radv_cmd_buffer.h b/src/amd/vulkan/radv_cmd_buffer.h index fb1c9ac72a8..ebcd8211d1f 100644 --- a/src/amd/vulkan/radv_cmd_buffer.h +++ b/src/amd/vulkan/radv_cmd_buffer.h @@ -801,4 +801,7 @@ void radv_get_vbo_info(const struct radv_cmd_buffer *cmd_buffer, uint32_t vbo_id void radv_emit_compute_shader(const struct radv_physical_device *pdev, struct radeon_cmdbuf *cs, const struct radv_shader *shader); +void radv_upload_indirect_descriptor_sets(struct radv_cmd_buffer *cmd_buffer, + struct radv_descriptor_state *descriptors_state); + #endif /* RADV_CMD_BUFFER_H */