VkPhysicalDeviceImageDrmFormatModifierInfoEXT
To query the image capabilities that are compatible with a
Linux DRM format modifier, set
VkPhysicalDeviceImageFormatInfo2::tiling
to
VK_IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT
and add a
VkPhysicalDeviceImageDrmFormatModifierInfoEXT structure to the
pNext
chain of VkPhysicalDeviceImageFormatInfo2.
The VkPhysicalDeviceImageDrmFormatModifierInfoEXT structure is defined as:
typedef struct VkPhysicalDeviceImageDrmFormatModifierInfoEXT {
VkStructureType sType;
const void* pNext;
uint64_t drmFormatModifier;
VkSharingMode sharingMode;
uint32_t queueFamilyIndexCount;
const uint32_t* pQueueFamilyIndices;
} VkPhysicalDeviceImageDrmFormatModifierInfoEXT;
sType
is a VkStructureType value identifying this structure.pNext
isNULL
or a pointer to a structure extending this structure.drmFormatModifier
is the image’s Linux DRM format modifier, corresponding to VkImageDrmFormatModifierExplicitCreateInfoEXT::modifier
or to VkImageDrmFormatModifierListCreateInfoEXT::pModifiers
.sharingMode
specifies how the image will be accessed by multiple queue families.queueFamilyIndexCount
is the number of entries in thepQueueFamilyIndices
array.pQueueFamilyIndices
is a pointer to an array of queue families that will access the image. It is ignored ifsharingMode
is notVK_SHARING_MODE_CONCURRENT
.
If the drmFormatModifier
is incompatible with the parameters specified
in VkPhysicalDeviceImageFormatInfo2 and its pNext
chain, then
vkGetPhysicalDeviceImageFormatProperties2 returns
VK_ERROR_FORMAT_NOT_SUPPORTED
.
The implementation must support the query of any drmFormatModifier
,
including unknown and invalid modifier values.
Valid Usage
VUID-VkPhysicalDeviceImageDrmFormatModifierInfoEXT-sharingMode-02314
If sharingMode
is VK_SHARING_MODE_CONCURRENT
, then
pQueueFamilyIndices
must be a valid pointer to an array of
queueFamilyIndexCount
uint32_t
values
VUID-VkPhysicalDeviceImageDrmFormatModifierInfoEXT-sharingMode-02315
If sharingMode
is VK_SHARING_MODE_CONCURRENT
, then
queueFamilyIndexCount
must be greater than 1
VUID-VkPhysicalDeviceImageDrmFormatModifierInfoEXT-sharingMode-02316
If sharingMode
is VK_SHARING_MODE_CONCURRENT
, each element
of pQueueFamilyIndices
must be unique and must be less than the
pQueueFamilyPropertyCount
returned by
vkGetPhysicalDeviceQueueFamilyProperties2 for the
physicalDevice
that was used to create device
Valid Usage (Implicit)
VUID-VkPhysicalDeviceImageDrmFormatModifierInfoEXT-sType-sType
sType
must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT
VUID-VkPhysicalDeviceImageDrmFormatModifierInfoEXT-sharingMode-parameter
sharingMode
must be a valid VkSharingMode value