Function Prototype

vkAcquireDrmDisplayEXT

Acquire access to a VkDisplayKHR using DRM

To acquire permission to directly a display in Vulkan from the Direct Rendering Manager (DRM) interface, call:

VkResult vkAcquireDrmDisplayEXT(
    VkPhysicalDevice physicalDevice,
    int32_t drmFd,
    VkDisplayKHR display);
  • physicalDevice The physical device the display is on.
  • drmFd DRM primary file descriptor.
  • display The display the caller wishes Vulkan to control.

All permissions necessary to control the display are granted to the Vulkan instance associated with the provided physicalDevice until the display is either released or the connector is unplugged. The provided drmFd must correspond to the one owned by the physicalDevice. If not, the error code VK_ERROR_UNKNOWN must be returned. The DRM FD must have DRM master permissions. If any error is encountered during the acquisition of the display, the call must return the error code VK_ERROR_INITIALIZATION_FAILED.

The provided DRM fd should not be closed before the display is released, attempting to do it may result in undefined: behavior.

Valid Usage (Implicit)

VUID-vkAcquireDrmDisplayEXT-display-parent

display must have been created, allocated, or retrieved from physicalDevice