From 1f056f229a7073cf922be10b3d7ab166dbd3917c Mon Sep 17 00:00:00 2001 From: Vlad Schiller Date: Mon, 11 Sep 2023 07:19:39 +0100 Subject: [PATCH] pvr: Implement VK_KHR_external_semaphore In order for the tests to pass, this commit also enables the VK_KHR_external_semaphore_fd extension. Signed-off-by: Vlad Schiller Reviewed-by: Matt Coster Part-of: --- docs/features.txt | 6 +++--- src/imagination/vulkan/pvr_device.c | 3 +++ 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/docs/features.txt b/docs/features.txt index 0873ac3280e..e607048cd9d 100644 --- a/docs/features.txt +++ b/docs/features.txt @@ -432,8 +432,8 @@ Vulkan 1.1 -- all DONE: anv, lvp, radv, tu, vn VK_KHR_external_fence_capabilities DONE (anv, hasvk, lvp, nvk, pvr, radv, tu, v3dv, vn) VK_KHR_external_memory DONE (anv, dzn, hasvk, lvp, nvk, pvr, radv, tu, v3dv, vn) VK_KHR_external_memory_capabilities DONE (anv, dzn, hasvk, lvp, nvk, pvr, radv, tu, v3dv, vn) - VK_KHR_external_semaphore DONE (anv, dzn, hasvk, lvp, nvk, radv, tu, v3dv, vn) - VK_KHR_external_semaphore_capabilities DONE (anv, dzn, hasvk, lvp, nvk, radv, tu, v3dv, vn) + VK_KHR_external_semaphore DONE (anv, dzn, hasvk, lvp, nvk, pvr, radv, tu, v3dv, vn) + VK_KHR_external_semaphore_capabilities DONE (anv, dzn, hasvk, lvp, nvk, pvr, radv, tu, v3dv, vn) VK_KHR_get_memory_requirements2 DONE (anv, dzn, hasvk, lvp, nvk, pvr, radv, tu, v3dv, vn) VK_KHR_get_physical_device_properties2 DONE (anv, dzn, hasvk, lvp, nvk, panvk, pvr, radv, tu, v3dv, vn) VK_KHR_maintenance1 DONE (anv, dzn, hasvk, lvp, nvk, radv, tu, v3dv, vn) @@ -510,7 +510,7 @@ Khronos extensions that are not part of any Vulkan version: VK_KHR_external_fence_win32 not started VK_KHR_external_memory_fd DONE (anv, dzn, hasvk, lvp, nvk, pvr, radv, tu, v3dv, vn) VK_KHR_external_memory_win32 DONE (dzn) - VK_KHR_external_semaphore_fd DONE (anv, dzn, hasvk, nvk, radv, tu, v3dv, vn) + VK_KHR_external_semaphore_fd DONE (anv, dzn, hasvk, nvk, pvr, radv, tu, v3dv, vn) VK_KHR_external_semaphore_win32 DONE (dzn) VK_KHR_fragment_shader_barycentric DONE (radv/gfx10.3+) VK_KHR_fragment_shading_rate DONE (anv/gen11+, radv/gfx10.3+) diff --git a/src/imagination/vulkan/pvr_device.c b/src/imagination/vulkan/pvr_device.c index 5f06cbbdbe9..7f64610b1d0 100644 --- a/src/imagination/vulkan/pvr_device.c +++ b/src/imagination/vulkan/pvr_device.c @@ -150,6 +150,7 @@ static const struct vk_instance_extension_table pvr_instance_extensions = { .KHR_display = PVR_USE_WSI_PLATFORM_DISPLAY, .KHR_external_fence_capabilities = true, .KHR_external_memory_capabilities = true, + .KHR_external_semaphore_capabilities = true, .KHR_get_display_properties2 = PVR_USE_WSI_PLATFORM_DISPLAY, .KHR_get_physical_device_properties2 = true, .KHR_get_surface_capabilities2 = PVR_USE_WSI_PLATFORM, @@ -174,6 +175,8 @@ static void pvr_physical_device_get_supported_extensions( .KHR_external_memory = true, .KHR_external_memory_fd = true, .KHR_format_feature_flags2 = true, + .KHR_external_semaphore = PVR_USE_WSI_PLATFORM, + .KHR_external_semaphore_fd = PVR_USE_WSI_PLATFORM, .KHR_get_memory_requirements2 = true, .KHR_image_format_list = true, .KHR_swapchain = PVR_USE_WSI_PLATFORM, -- 2.34.1