radv: advertise VK_EXT_nested_command_buffer

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28826>
This commit is contained in:
Samuel Pitoiset 2024-04-19 10:26:07 +02:00 committed by Marge Bot
parent 7de95e7742
commit 8b8d194bfb
3 changed files with 11 additions and 2 deletions

View File

@ -601,7 +601,7 @@ Khronos extensions that are not part of any Vulkan version:
VK_EXT_mesh_shader DONE (anv/gfx12.5+, lvp, radv)
VK_EXT_multi_draw DONE (anv, hasvk, lvp, nvk, radv, tu, vn, v3dv)
VK_EXT_multisampled_render_to_single_sampled DONE (lvp)
VK_EXT_nested_command_buffer DONE (anv, lvp, nvk)
VK_EXT_nested_command_buffer DONE (anv, lvp, nvk, radv)
VK_EXT_non_seamless_cube_map DONE (anv, hasvk, lvp, nvk, radv, tu, vn)
VK_EXT_pageable_device_local_memory DONE (lvp)
VK_EXT_pci_bus_info DONE (anv, hasvk, nvk, radv, vn)

View File

@ -16,4 +16,4 @@ VK_EXT_device_address_binding_report on RADV
VK_EXT_external_memory_dma_buf for lavapipe
VK_EXT_queue_family_foreign for lavapipe
VK_EXT_shader_object on RADV
VK_EXT_nested_command_buffer on NVK
VK_EXT_nested_command_buffer on NVK and RADV

View File

@ -633,6 +633,7 @@ radv_physical_device_get_supported_extensions(const struct radv_physical_device
.EXT_mesh_shader = radv_taskmesh_enabled(pdev),
.EXT_multi_draw = true,
.EXT_mutable_descriptor_type = true, /* Trivial promotion from VALVE. */
.EXT_nested_command_buffer = true,
.EXT_non_seamless_cube_map = true,
.EXT_pci_bus_info = true,
#ifndef _WIN32
@ -1205,6 +1206,11 @@ radv_physical_device_get_features(const struct radv_physical_device *pdev, struc
/* VK_EXT_address_binding_report */
.reportAddressBinding = true,
/* VK_EXT_nested_command_buffer */
.nestedCommandBuffer = true,
.nestedCommandBufferRendering = true,
.nestedCommandBufferSimultaneousUse = true,
};
}
@ -1898,6 +1904,9 @@ radv_get_physical_device_properties(struct radv_physical_device *pdev)
uint64_t os_page_size = 4096;
os_get_page_size(&os_page_size);
p->minPlacedMemoryMapAlignment = os_page_size;
/* VK_EXT_nested_command_buffer */
p->maxCommandBufferNestingLevel = UINT32_MAX;
}
static VkResult