mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-05 03:08:05 +02:00
anv: Refactor get_image_format_properties() - ASTC
Teach it to calculate the format features for ASTC. The goal is to incrementally fix get_image_format_properties() to return a correct result. Currently, it returns incorrect VkFormatFeatureFlags which the caller must clean up. v2: New commit message Reviewed-by: Jason Ekstrand <jason@jlekstrand.net> (v1) Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
This commit is contained in:
parent
8ae4e97536
commit
096fc6915b
1 changed files with 5 additions and 4 deletions
|
|
@ -497,6 +497,11 @@ get_image_format_properties(const struct gen_device_info *devinfo,
|
|||
return flags;
|
||||
}
|
||||
|
||||
/* ASTC textures must be in Y-tiled memory */
|
||||
if (vk_tiling == VK_IMAGE_TILING_LINEAR &&
|
||||
isl_format_get_layout(format.isl_format)->txc == ISL_TXC_ASTC)
|
||||
return 0;
|
||||
|
||||
if (isl_format_supports_sampling(devinfo, format.isl_format)) {
|
||||
flags |= VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT |
|
||||
VK_FORMAT_FEATURE_BLIT_SRC_BIT;
|
||||
|
|
@ -615,10 +620,6 @@ anv_physical_device_get_format_properties(struct anv_physical_device *physical_d
|
|||
tiled &= ~VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT &
|
||||
~VK_FORMAT_FEATURE_BLIT_DST_BIT;
|
||||
}
|
||||
|
||||
/* ASTC textures must be in Y-tiled memory */
|
||||
if (isl_format_get_layout(linear_fmt.isl_format)->txc == ISL_TXC_ASTC)
|
||||
linear = 0;
|
||||
}
|
||||
|
||||
if (format && format->can_ycbcr) {
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue