Function Prototype

vkGetDrmDisplayEXT

Query the VkDisplayKHR corresponding to a DRM connector ID

Before acquiring a display from the DRM interface, the caller may want to select a specific VkDisplayKHR handle by identifying it using a connectorId. To do so, call:

VkResult vkGetDrmDisplayEXT(
    VkPhysicalDevice physicalDevice,
    int32_t drmFd,
    uint32_t connectorId,
    VkDisplayKHR* display);
  • physicalDevice The physical device to query the display from.
  • drmFd DRM primary file descriptor.
  • connectorId Identifier of the specified DRM connector.
  • display The corresponding VkDisplayKHR handle will be returned here.

If there is no VkDisplayKHR corresponding to the connectorId on the physicalDevice, the returning display must be VK_NULL_HANDLE. The provided drmFd must correspond to the one owned by the physicalDevice. If not, the error code VK_ERROR_UNKNOWN must be returned. Master permissions are not required, because the file descriptor is just used for information gathering purposes. The given connectorId must be a resource owned by the provided drmFd. If not, the error code VK_ERROR_UNKNOWN must be returned. If any error is encountered during the identification of the display, the call must return the error code VK_ERROR_INITIALIZATION_FAILED.

Valid Usage (Implicit)

VUID-vkGetDrmDisplayEXT-display-parameter

display must be a valid pointer to a VkDisplayKHR handle