vulkan-wsi-layer/layer/VkLayer_window_system_integration.json
Maged Elnaggar fb23a9b14e Support VK_KHR_swapchain_mutable_format extension
- Add support for VK_KHR_swapchain_mutable_format extension to the Layer.
- Expose support for the VK_KHR_swapchain_mutable_format extension.
- Improve find_extension helper API to be spec-correct, const-correct,
  and clearer by using the right base type (VkBaseInStructure for input,
  VkBaseOutStructure for output),
  and concise docs explaining it returns the first matching struct or nullptr.
- Correctly use image_create_info instead of m_image_create_info in
  create_swapchain_image function for Wayland.

Signed-off-by: Maged Elnaggar <maged.elnaggar@arm.com>
Change-Id: Id40b28977e63ba76012d3a8f693327f757d75dcd
2025-09-11 09:28:03 +01:00

86 lines
3.4 KiB
JSON

{
"$schema": "https://raw.githubusercontent.com/LunarG/VulkanTools/refs/heads/main/vkconfig_core/layers/layers_schema.json",
"file_format_version": "1.1.2",
"layer": {
"name": "VK_LAYER_window_system_integration",
"type": "GLOBAL",
"library_path": "./libVkLayer_window_system_integration.so",
"api_version": "1.4.299",
"implementation_version": "1",
"description": "Window system integration layer",
"functions": {
"vkNegotiateLoaderLayerInterfaceVersion": "wsi_layer_vkNegotiateLoaderLayerInterfaceVersion"
},
"instance_extensions": [
{"name" : "VK_EXT_headless_surface", "spec_version" : "1"},
{"name" : "VK_KHR_wayland_surface", "spec_version" : "6"},
{"name" : "VK_KHR_surface", "spec_version" : "25"},
{"name" : "VK_KHR_display", "spec_version" : "23"},
{"name" : "VK_KHR_get_surface_capabilities2", "spec_version" : "1"},
{"name" : "VK_EXT_surface_maintenance1", "spec_version" : "1"}
],
"device_extensions": [
{"name": "VK_KHR_shared_presentable_image", "spec_version": "1", "entrypoints": ["vkGetSwapchainStatusKHR"]},
{"name": "VK_EXT_image_compression_control_swapchain", "spec_version": "1"},
{
"name": "VK_KHR_swapchain",
"spec_version": "70",
"entrypoints": [
"vkAcquireNextImageKHR",
"vkCreateSwapchainKHR",
"vkDestroySwapchainKHR",
"vkGetSwapchainImagesKHR",
"vkQueuePresentKHR",
"vkAcquireNextImage2KHR",
"vkGetDeviceGroupPresentCapabilitiesKHR",
"vkGetDeviceGroupSurfacePresentModesKHR",
"vkGetPhysicalDevicePresentRectanglesKHR"
]
},
{"name": "VK_KHR_present_id", "spec_version": "1"},
{"name": "VK_KHR_present_id2", "spec_version": "1"},
{
"name": "VK_EXT_swapchain_maintenance1",
"spec_version": "1",
"entrypoints": [
"vkReleaseSwapchainImagesEXT"
]
},
{
"name": "VK_EXT_present_timing",
"spec_version": "1",
"entrypoints": [
"vkSetSwapchainPresentTimingQueueSizeEXT",
"vkGetSwapchainTimingPropertiesEXT",
"vkGetSwapchainTimeDomainPropertiesEXT",
"vkGetPastPresentationTimingEXT"
]
},
{
"name": "VK_KHR_present_wait",
"spec_version": "1",
"entrypoints": [
"vkWaitForPresentKHR"
]
},
{
"name": "VK_KHR_present_wait2",
"spec_version": "1",
"entrypoints": [
"vkWaitForPresent2KHR"
]
},
{
"name": "VK_EXT_present_mode_fifo_latest_ready",
"spec_version": "1"
},
{
"name": "VK_KHR_swapchain_mutable_format",
"spec_version": "1"
}
],
"disable_environment": {
"DISABLE_WSI_LAYER": "1"
}
}
}