panvk: fix VkDrmFormatModifierPropertiesListEXT query
Do not advertise unsupported formats. Fix the array type and init drmFormatModifierTilingFeatures. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31719>
This commit is contained in:
@@ -1068,16 +1068,18 @@ panvk_GetPhysicalDeviceFormatProperties2(VkPhysicalDevice physicalDevice,
|
|||||||
|
|
||||||
VkDrmFormatModifierPropertiesListEXT *list = vk_find_struct(
|
VkDrmFormatModifierPropertiesListEXT *list = vk_find_struct(
|
||||||
pFormatProperties->pNext, DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT);
|
pFormatProperties->pNext, DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT);
|
||||||
if (list) {
|
if (list && pFormatProperties->formatProperties.linearTilingFeatures) {
|
||||||
VK_OUTARRAY_MAKE_TYPED(VkDrmFormatModifierPropertiesEXT, out,
|
VK_OUTARRAY_MAKE_TYPED(VkDrmFormatModifierPropertiesEXT, out,
|
||||||
list->pDrmFormatModifierProperties,
|
list->pDrmFormatModifierProperties,
|
||||||
&list->drmFormatModifierCount);
|
&list->drmFormatModifierCount);
|
||||||
|
|
||||||
vk_outarray_append_typed(VkDrmFormatModifierProperties2EXT, &out,
|
vk_outarray_append_typed(VkDrmFormatModifierPropertiesEXT, &out,
|
||||||
mod_props)
|
mod_props)
|
||||||
{
|
{
|
||||||
mod_props->drmFormatModifier = DRM_FORMAT_MOD_LINEAR;
|
mod_props->drmFormatModifier = DRM_FORMAT_MOD_LINEAR;
|
||||||
mod_props->drmFormatModifierPlaneCount = 1;
|
mod_props->drmFormatModifierPlaneCount = 1;
|
||||||
|
mod_props->drmFormatModifierTilingFeatures =
|
||||||
|
pFormatProperties->formatProperties.linearTilingFeatures;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user