diff --git a/docs/features.txt b/docs/features.txt index 1a6605afed3..663bde7a72c 100644 --- a/docs/features.txt +++ b/docs/features.txt @@ -561,10 +561,10 @@ Khronos extensions that are not part of any Vulkan version: VK_KHR_pipeline_binary DONE (radv) VK_KHR_pipeline_executable_properties DONE (anv, hk, nvk, panvk, hasvk, radv, tu, v3dv) VK_KHR_pipeline_library DONE (anv, hk, lvp, nvk, panvk, radv, tu, vn) - VK_KHR_present_id DONE (anv, nvk, radv, tu, vn) - VK_KHR_present_id2 DONE (anv, nvk, panvk, pvr, radv, tu, v3dv, vn) - VK_KHR_present_wait DONE (anv, nvk, radv, tu, vn) - VK_KHR_present_wait2 DONE (anv, nvk, panvk, pvr, radv, tu, v3dv, vn) + VK_KHR_present_id DONE (anv, hk, nvk, radv, tu, vn) + VK_KHR_present_id2 DONE (anv, hk, nvk, panvk, pvr, radv, tu, v3dv, vn) + VK_KHR_present_wait DONE (anv, hk, nvk, radv, tu, vn) + VK_KHR_present_wait2 DONE (anv, hk, nvk, panvk, pvr, radv, tu, v3dv, vn) VK_KHR_ray_query DONE (anv/gfx12.5+, lvp, radv/gfx10.3+, tu/a740+, vn) VK_KHR_ray_tracing_maintenance1 DONE (anv/gfx12.5+, lvp, radv/gfx10.3+, tu/a740+, vn) VK_KHR_ray_tracing_pipeline DONE (anv/gfx12.5+, lvp, radv/gfx10.3+, vn) diff --git a/docs/relnotes/new_features.txt b/docs/relnotes/new_features.txt index e40e0aa7c03..8b214117f10 100644 --- a/docs/relnotes/new_features.txt +++ b/docs/relnotes/new_features.txt @@ -2,3 +2,7 @@ VK_KHR_relaxed_block_layout on pvr VK_KHR_storage_buffer_storage_class on pvr VK_EXT_external_memory_acquire_unmodified on panvk VK_EXT_discard_rectangles on NVK +VK_KHR_present_id on HoneyKrisp +VK_KHR_present_id2 on HoneyKrisp +VK_KHR_present_wait on HoneyKrisp +VK_KHR_present_wait2 on HoneyKrisp diff --git a/src/asahi/vulkan/hk_physical_device.c b/src/asahi/vulkan/hk_physical_device.c index 922d4eda2e1..7b5cf21d566 100644 --- a/src/asahi/vulkan/hk_physical_device.c +++ b/src/asahi/vulkan/hk_physical_device.c @@ -94,6 +94,12 @@ hk_get_device_extensions(const struct hk_instance *instance, .KHR_multiview = true, .KHR_pipeline_executable_properties = true, .KHR_pipeline_library = true, +#ifdef HK_USE_WSI_PLATFORM + .KHR_present_id = true, + .KHR_present_id2 = true, + .KHR_present_wait = true, + .KHR_present_wait2 = true, +#endif .KHR_push_descriptor = true, .KHR_relaxed_block_layout = true, .KHR_sampler_mirror_clamp_to_edge = true, @@ -401,10 +407,16 @@ hk_get_device_features( .pipelineExecutableInfo = true, /* VK_KHR_present_id */ - .presentId = false, + .presentId = true, + + /* VK_KHR_present_id2 */ + .presentId2 = true, /* VK_KHR_present_wait */ - .presentWait = false, + .presentWait = true, + + /* VK_KHR_present_wait2 */ + .presentWait2 = true, /* VK_KHR_shader_clock */ .shaderSubgroupClock = false,