radv: fix reporting mesh/task/rt as supported dgc indirect stages

Fixes: 8300378bf3 ("radv: advertise VK_EXT_device_generated_commands on GFX8+")

Acked-by: Konstantin Seurer <konstantin.seurer@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32457>
This commit is contained in:
Georg Lehmann
2024-12-03 14:59:22 +01:00
committed by Marge Bot
parent 03b527ea92
commit b961537a17

View File

@@ -1395,6 +1395,10 @@ radv_get_physical_device_properties(struct radv_physical_device *pdev)
device_type = VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU; device_type = VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU;
} }
VkShaderStageFlags taskmesh_stages =
radv_taskmesh_enabled(pdev) ? VK_SHADER_STAGE_MESH_BIT_EXT | VK_SHADER_STAGE_TASK_BIT_EXT : 0;
VkShaderStageFlags rt_stages = radv_enable_rt(pdev, true) ? RADV_RT_STAGE_BITS : 0;
pdev->vk.properties = (struct vk_properties){ pdev->vk.properties = (struct vk_properties){
#ifdef ANDROID_STRICT #ifdef ANDROID_STRICT
.apiVersion = RADV_API_VERSION, .apiVersion = RADV_API_VERSION,
@@ -2052,7 +2056,7 @@ radv_get_physical_device_properties(struct radv_physical_device *pdev)
p->supportedIndirectCommandsInputModes = p->supportedIndirectCommandsInputModes =
VK_INDIRECT_COMMANDS_INPUT_MODE_VULKAN_INDEX_BUFFER_EXT | VK_INDIRECT_COMMANDS_INPUT_MODE_DXGI_INDEX_BUFFER_EXT; VK_INDIRECT_COMMANDS_INPUT_MODE_VULKAN_INDEX_BUFFER_EXT | VK_INDIRECT_COMMANDS_INPUT_MODE_DXGI_INDEX_BUFFER_EXT;
p->supportedIndirectCommandsShaderStages = p->supportedIndirectCommandsShaderStages =
RADV_GRAPHICS_STAGE_BITS | VK_SHADER_STAGE_COMPUTE_BIT | RADV_RT_STAGE_BITS; VK_SHADER_STAGE_ALL_GRAPHICS | VK_SHADER_STAGE_COMPUTE_BIT | taskmesh_stages | rt_stages;
p->supportedIndirectCommandsShaderStagesPipelineBinding = VK_SHADER_STAGE_COMPUTE_BIT; p->supportedIndirectCommandsShaderStagesPipelineBinding = VK_SHADER_STAGE_COMPUTE_BIT;
p->supportedIndirectCommandsShaderStagesShaderBinding = 0; p->supportedIndirectCommandsShaderStagesShaderBinding = 0;
p->deviceGeneratedCommandsTransformFeedback = true; p->deviceGeneratedCommandsTransformFeedback = true;