anv,radv: Add support for VK_KHR_get_display_properties2
[mesa.git] / src / amd / vulkan / radv_wsi_display.c
index 3a4774e2f566cc540baabe39eb8ef5a84c399e88..d8743a06e3ba5b218c3afd7f0228364c7bd12229 100644 (file)
@@ -56,6 +56,20 @@ radv_GetPhysicalDeviceDisplayPropertiesKHR(VkPhysicalDevice physical_device,
                properties);
 }
 
+VkResult
+radv_GetPhysicalDeviceDisplayProperties2KHR(VkPhysicalDevice physical_device,
+                                            uint32_t *property_count,
+                                            VkDisplayProperties2KHR *properties)
+{
+       RADV_FROM_HANDLE(radv_physical_device, pdevice, physical_device);
+
+       return wsi_display_get_physical_device_display_properties2(
+               physical_device,
+               &pdevice->wsi_device,
+               property_count,
+               properties);
+}
+
 VkResult
 radv_GetPhysicalDeviceDisplayPlanePropertiesKHR(
        VkPhysicalDevice physical_device,
@@ -71,6 +85,21 @@ radv_GetPhysicalDeviceDisplayPlanePropertiesKHR(
                properties);
 }
 
+VkResult
+radv_GetPhysicalDeviceDisplayPlaneProperties2KHR(
+       VkPhysicalDevice physical_device,
+       uint32_t *property_count,
+       VkDisplayPlaneProperties2KHR *properties)
+{
+       RADV_FROM_HANDLE(radv_physical_device, pdevice, physical_device);
+
+       return wsi_display_get_physical_device_display_plane_properties2(
+               physical_device,
+               &pdevice->wsi_device,
+               property_count,
+               properties);
+}
+
 VkResult
 radv_GetDisplayPlaneSupportedDisplaysKHR(VkPhysicalDevice physical_device,
                                          uint32_t plane_index,
@@ -103,6 +132,21 @@ radv_GetDisplayModePropertiesKHR(VkPhysicalDevice physical_device,
                                                       properties);
 }
 
+VkResult
+radv_GetDisplayModeProperties2KHR(VkPhysicalDevice physical_device,
+                                  VkDisplayKHR display,
+                                  uint32_t *property_count,
+                                  VkDisplayModeProperties2KHR *properties)
+{
+       RADV_FROM_HANDLE(radv_physical_device, pdevice, physical_device);
+
+       return wsi_display_get_display_mode_properties2(physical_device,
+                                                       &pdevice->wsi_device,
+                                                       display,
+                                                       property_count,
+                                                       properties);
+}
+
 VkResult
 radv_CreateDisplayModeKHR(VkPhysicalDevice physical_device,
                           VkDisplayKHR display,
@@ -135,6 +179,19 @@ radv_GetDisplayPlaneCapabilitiesKHR(VkPhysicalDevice physical_device,
                                                  capabilities);
 }
 
+VkResult
+radv_GetDisplayPlaneCapabilities2KHR(VkPhysicalDevice physical_device,
+                                     const VkDisplayPlaneInfo2KHR *pDisplayPlaneInfo,
+                                     VkDisplayPlaneCapabilities2KHR *capabilities)
+{
+       RADV_FROM_HANDLE(radv_physical_device, pdevice, physical_device);
+
+       return wsi_get_display_plane_capabilities2(physical_device,
+                                                  &pdevice->wsi_device,
+                                                  pDisplayPlaneInfo,
+                                                  capabilities);
+}
+
 VkResult
 radv_CreateDisplayPlaneSurfaceKHR(
        VkInstance _instance,