diff --git a/docs/features.txt b/docs/features.txt index d7d4038961b..bc57eba78ee 100644 --- a/docs/features.txt +++ b/docs/features.txt @@ -500,6 +500,7 @@ Khronos extensions that are not part of any Vulkan version: VK_KHR_shared_presentable_image not started VK_KHR_surface DONE (anv, lvp, radv, tu, v3dv, vn) VK_KHR_surface_protected_capabilities DONE (anv, lvp, radv, v3dv, vn) + VK_KHR_synchronization2 DONE (anv, radv) VK_KHR_swapchain DONE (anv, lvp, radv, tu, v3dv, vn) VK_KHR_swapchain_mutable_format DONE (anv, radv, v3dv, vn) VK_KHR_wayland_surface DONE (anv, lvp, radv, tu, v3dv, vn) diff --git a/docs/relnotes/new_features.txt b/docs/relnotes/new_features.txt index d13a66f1211..996508bca51 100644 --- a/docs/relnotes/new_features.txt +++ b/docs/relnotes/new_features.txt @@ -1,2 +1,3 @@ lavapipe KHR_dynamic_rendering radv EXT_image_view_min_lod +VK_KHR_synchronization2 on RADV. diff --git a/src/amd/vulkan/radv_device.c b/src/amd/vulkan/radv_device.c index b2f0b633753..0c21a34e5a4 100644 --- a/src/amd/vulkan/radv_device.c +++ b/src/amd/vulkan/radv_device.c @@ -461,6 +461,7 @@ radv_physical_device_get_supported_extensions(const struct radv_physical_device .KHR_swapchain = true, .KHR_swapchain_mutable_format = true, #endif + .KHR_synchronization2 = true, .KHR_timeline_semaphore = true, .KHR_uniform_buffer_standard_layout = true, .KHR_variable_pointers = true, @@ -1637,6 +1638,12 @@ radv_GetPhysicalDeviceFeatures2(VkPhysicalDevice physicalDevice, features->minLod = true; break; } + case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES_KHR: { + VkPhysicalDeviceSynchronization2FeaturesKHR *features = + (VkPhysicalDeviceSynchronization2FeaturesKHR *)ext; + features->synchronization2 = true; + break; + } default: break; }