mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-24 08:50:13 +01:00
v3dv: Enable VK_FORMAT_A2R10G10B10_UINT_PACK32 format
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38278>
This commit is contained in:
parent
8e2d054544
commit
5d24610d50
3 changed files with 5 additions and 0 deletions
|
|
@ -175,6 +175,7 @@ image_format_plane_features(struct v3dv_physical_device *pdevice,
|
|||
} else if (vk_format == VK_FORMAT_A2B10G10R10_UNORM_PACK32 ||
|
||||
vk_format == VK_FORMAT_A2R10G10B10_UNORM_PACK32 ||
|
||||
vk_format == VK_FORMAT_A2B10G10R10_UINT_PACK32 ||
|
||||
vk_format == VK_FORMAT_A2R10G10B10_UINT_PACK32 ||
|
||||
vk_format == VK_FORMAT_B10G11R11_UFLOAT_PACK32) {
|
||||
/* To comply with shaderStorageImageExtendedFormats */
|
||||
flags |= VK_FORMAT_FEATURE_2_STORAGE_IMAGE_BIT |
|
||||
|
|
@ -302,6 +303,7 @@ buffer_format_features(VkFormat vk_format, const struct v3dv_format *v3dv_format
|
|||
VK_FORMAT_FEATURE_2_UNIFORM_TEXEL_BUFFER_BIT |
|
||||
VK_FORMAT_FEATURE_2_STORAGE_TEXEL_BUFFER_BIT;
|
||||
} else if (vk_format == VK_FORMAT_A2B10G10R10_UINT_PACK32 ||
|
||||
vk_format == VK_FORMAT_A2R10G10B10_UINT_PACK32 ||
|
||||
vk_format == VK_FORMAT_B10G11R11_UFLOAT_PACK32) {
|
||||
flags |= VK_FORMAT_FEATURE_2_UNIFORM_TEXEL_BUFFER_BIT |
|
||||
VK_FORMAT_FEATURE_2_STORAGE_TEXEL_BUFFER_BIT;
|
||||
|
|
|
|||
|
|
@ -1394,6 +1394,7 @@ pipeline_populate_v3d_vs_key(struct v3d_vs_key *key,
|
|||
&vi_info->pVertexAttributeDescriptions[i];
|
||||
assert(desc->location < MAX_VERTEX_ATTRIBS);
|
||||
if (desc->format == VK_FORMAT_B8G8R8A8_UNORM ||
|
||||
desc->format == VK_FORMAT_A2R10G10B10_UINT_PACK32 ||
|
||||
desc->format == VK_FORMAT_A2R10G10B10_UNORM_PACK32) {
|
||||
key->va_swap_rb_mask |= 1 << (VERT_ATTRIB_GENERIC0 + desc->location);
|
||||
}
|
||||
|
|
@ -2096,6 +2097,7 @@ pipeline_populate_graphics_key(struct v3dv_pipeline *pipeline,
|
|||
&vi_info->pVertexAttributeDescriptions[i];
|
||||
assert(desc->location < MAX_VERTEX_ATTRIBS);
|
||||
if (desc->format == VK_FORMAT_B8G8R8A8_UNORM ||
|
||||
desc->format == VK_FORMAT_A2R10G10B10_UINT_PACK32 ||
|
||||
desc->format == VK_FORMAT_A2R10G10B10_UNORM_PACK32) {
|
||||
key->va_swap_rb_mask |= 1 << (VERT_ATTRIB_GENERIC0 + desc->location);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -189,6 +189,7 @@ static const struct v3dv_format format_table[] = {
|
|||
FORMAT(A2B10G10R10_UNORM_PACK32,RGB10_A2, RGB10_A2, SWIZ_XYZW, 16, true),
|
||||
FORMAT(A2B10G10R10_UINT_PACK32, RGB10_A2UI, RGB10_A2UI, SWIZ_XYZW, 16, false),
|
||||
FORMAT(A2R10G10B10_UNORM_PACK32,RGB10_A2, RGB10_A2, SWIZ_ZYXW, 16, true),
|
||||
FORMAT(A2R10G10B10_UINT_PACK32, RGB10_A2UI, RGB10_A2UI, SWIZ_ZYXW, 16, false),
|
||||
FORMAT(E5B9G9R9_UFLOAT_PACK32, NO, RGB9_E5, SWIZ_XYZ1, 16, true),
|
||||
FORMAT(B10G11R11_UFLOAT_PACK32, R11F_G11F_B10F,R11F_G11F_B10F, SWIZ_XYZ1, 16, true),
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue