diff options
Diffstat (limited to 'src/amd')
-rw-r--r-- | src/amd/vulkan/radv_extensions.py | 1 | ||||
-rw-r--r-- | src/amd/vulkan/radv_wsi_display.c | 57 |
2 files changed, 58 insertions, 0 deletions
diff --git a/src/amd/vulkan/radv_extensions.py b/src/amd/vulkan/radv_extensions.py index a0f1038110b..c36559f48ef 100644 --- a/src/amd/vulkan/radv_extensions.py +++ b/src/amd/vulkan/radv_extensions.py @@ -66,6 +66,7 @@ EXTENSIONS = [ Extension('VK_KHR_external_semaphore', 1, 'device->rad_info.has_syncobj'), Extension('VK_KHR_external_semaphore_capabilities', 1, True), Extension('VK_KHR_external_semaphore_fd', 1, 'device->rad_info.has_syncobj'), + Extension('VK_KHR_get_display_properties2', 1, 'VK_USE_PLATFORM_DISPLAY_KHR'), Extension('VK_KHR_get_memory_requirements2', 1, True), Extension('VK_KHR_get_physical_device_properties2', 1, True), Extension('VK_KHR_get_surface_capabilities2', 1, 'RADV_HAS_SURFACE'), diff --git a/src/amd/vulkan/radv_wsi_display.c b/src/amd/vulkan/radv_wsi_display.c index 3a4774e2f56..d8743a06e3b 100644 --- a/src/amd/vulkan/radv_wsi_display.c +++ b/src/amd/vulkan/radv_wsi_display.c @@ -57,6 +57,20 @@ radv_GetPhysicalDeviceDisplayPropertiesKHR(VkPhysicalDevice physical_device, } 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, uint32_t *property_count, @@ -72,6 +86,21 @@ radv_GetPhysicalDeviceDisplayPlanePropertiesKHR( } 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, uint32_t *display_count, @@ -104,6 +133,21 @@ radv_GetDisplayModePropertiesKHR(VkPhysicalDevice physical_device, } 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, const VkDisplayModeCreateInfoKHR *create_info, @@ -136,6 +180,19 @@ radv_GetDisplayPlaneCapabilitiesKHR(VkPhysicalDevice physical_device, } 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, const VkDisplaySurfaceCreateInfoKHR *create_info, |