From fa578f280ec94754f76af11cb2eb95bf125ada64 Mon Sep 17 00:00:00 2001 From: Friedrich Vock Date: Wed, 26 Oct 2022 12:23:04 +0200 Subject: [PATCH] radv: Add radv_indirect_unaligned_dispatch Reviewed-by: Konstantin Seurer Part-of: --- src/amd/vulkan/radv_cmd_buffer.c | 13 +++++++++++++ src/amd/vulkan/radv_private.h | 2 ++ 2 files changed, 15 insertions(+) diff --git a/src/amd/vulkan/radv_cmd_buffer.c b/src/amd/vulkan/radv_cmd_buffer.c index f7cbd2d33c5..4a51481c1aa 100644 --- a/src/amd/vulkan/radv_cmd_buffer.c +++ b/src/amd/vulkan/radv_cmd_buffer.c @@ -8885,6 +8885,19 @@ radv_unaligned_dispatch(struct radv_cmd_buffer *cmd_buffer, uint32_t x, uint32_t radv_compute_dispatch(cmd_buffer, &info); } +void +radv_indirect_unaligned_dispatch(struct radv_cmd_buffer *cmd_buffer, struct radeon_winsys_bo *bo, + uint64_t va) +{ + struct radv_dispatch_info info = {0}; + + info.indirect = bo; + info.va = va; + info.unaligned = 1; + + radv_compute_dispatch(cmd_buffer, &info); +} + void radv_indirect_dispatch(struct radv_cmd_buffer *cmd_buffer, struct radeon_winsys_bo *bo, uint64_t va) { diff --git a/src/amd/vulkan/radv_private.h b/src/amd/vulkan/radv_private.h index e0ce26a2bdb..c708b112249 100644 --- a/src/amd/vulkan/radv_private.h +++ b/src/amd/vulkan/radv_private.h @@ -1882,6 +1882,8 @@ radv_get_viewport_xform(const VkViewport *viewport, float scale[3], float transl */ void radv_unaligned_dispatch(struct radv_cmd_buffer *cmd_buffer, uint32_t x, uint32_t y, uint32_t z); +void radv_indirect_unaligned_dispatch(struct radv_cmd_buffer *cmd_buffer, + struct radeon_winsys_bo *bo, uint64_t va); void radv_indirect_dispatch(struct radv_cmd_buffer *cmd_buffer, struct radeon_winsys_bo *bo, uint64_t va);