The WSI core code does all the hard work.  Just add the wrappers and
turn it on.
---
 src/amd/vulkan/radv_extensions.py |  1 +
 src/amd/vulkan/radv_wsi.c         | 26 ++++++++++++++++++++++++++
 2 files changed, 27 insertions(+)

diff --git a/src/amd/vulkan/radv_extensions.py 
b/src/amd/vulkan/radv_extensions.py
index eeb679d..edb132d 100644
--- a/src/amd/vulkan/radv_extensions.py
+++ b/src/amd/vulkan/radv_extensions.py
@@ -61,6 +61,7 @@ EXTENSIONS = [
     Extension('VK_KHR_external_semaphore_fd',             1, 
'device->rad_info.has_syncobj'),
     Extension('VK_KHR_get_memory_requirements2',          1, True),
     Extension('VK_KHR_get_physical_device_properties2',   1, True),
+    Extension('VK_KHR_get_surface_capabilities2',         1, True),
     Extension('VK_KHR_image_format_list',                 1, True),
     Extension('VK_KHR_incremental_present',               1, True),
     Extension('VK_KHR_maintenance1',                      1, True),
diff --git a/src/amd/vulkan/radv_wsi.c b/src/amd/vulkan/radv_wsi.c
index cb61eb6..51e8ec6 100644
--- a/src/amd/vulkan/radv_wsi.c
+++ b/src/amd/vulkan/radv_wsi.c
@@ -90,6 +90,18 @@ VkResult radv_GetPhysicalDeviceSurfaceCapabilitiesKHR(
                                                   pSurfaceCapabilities);
 }
 
+VkResult radv_GetPhysicalDeviceSurfaceCapabilities2KHR(
+       VkPhysicalDevice                            physicalDevice,
+       const VkPhysicalDeviceSurfaceInfo2KHR*      pSurfaceInfo,
+       VkSurfaceCapabilities2KHR*                  pSurfaceCapabilities)
+{
+       RADV_FROM_HANDLE(radv_physical_device, device, physicalDevice);
+
+       return wsi_common_get_surface_capabilities2(&device->wsi_device,
+                                                   pSurfaceInfo,
+                                                   pSurfaceCapabilities);
+}
+
 VkResult radv_GetPhysicalDeviceSurfaceFormatsKHR(
        VkPhysicalDevice                            physicalDevice,
        VkSurfaceKHR                                surface,
@@ -104,6 +116,20 @@ VkResult radv_GetPhysicalDeviceSurfaceFormatsKHR(
                                              pSurfaceFormats);
 }
 
+VkResult radv_GetPhysicalDeviceSurfaceFormats2KHR(
+       VkPhysicalDevice                            physicalDevice,
+       const VkPhysicalDeviceSurfaceInfo2KHR*      pSurfaceInfo,
+       uint32_t*                                   pSurfaceFormatCount,
+       VkSurfaceFormat2KHR*                        pSurfaceFormats)
+{
+       RADV_FROM_HANDLE(radv_physical_device, device, physicalDevice);
+
+       return wsi_common_get_surface_formats2(&device->wsi_device,
+                                              pSurfaceInfo,
+                                              pSurfaceFormatCount,
+                                              pSurfaceFormats);
+}
+
 VkResult radv_GetPhysicalDeviceSurfacePresentModesKHR(
        VkPhysicalDevice                            physicalDevice,
        VkSurfaceKHR                                surface,
-- 
2.5.0.400.gff86faf

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to