turnip: Depth/stencil formats should not expose any bufferFeatures

From the Vulkan 1.3.205 spec, section 19.3 "43.3. Required Format Support":

   Mandatory format support: depth/stencil with VkImageType
   VK_IMAGE_TYPE_2D
   [...]
   bufferFeatures must not support any features for these formats

See https://gitlab.khronos.org/vulkan/vulkan/-/merge_requests/4849

Fixes CTS tests: dEQP-VK.api.buffer.invalid_buffer_features.*

Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14927>
This commit is contained in:
Danylo Piliaiev 2022-02-08 13:11:34 +02:00 committed by Marge Bot
parent 53dc5f774d
commit 97c90c514f
3 changed files with 10 additions and 14 deletions

View File

@ -9,17 +9,9 @@ dEQP-VK.glsl.builtin.precision_fp16_storage16b.inverse.compute.mat4,Fail
dEQP-VK.subgroups.multiple_dispatches.uniform_subgroup_size,Fail
# CTS 1.3.1.0 uprev:
dEQP-VK.api.buffer.invalid_buffer_features.vk_format_d16_unorm,Fail
dEQP-VK.api.buffer.invalid_buffer_features.vk_format_d24_unorm_s8_uint,Fail
dEQP-VK.api.buffer.invalid_buffer_features.vk_format_d32_sfloat_s8_uint,Fail
dEQP-VK.api.buffer.invalid_buffer_features.vk_format_d32_sfloat,Fail
dEQP-VK.api.buffer.invalid_buffer_features.vk_format_s8_uint,Fail
dEQP-VK.api.buffer.invalid_buffer_features.vk_format_x8_d24_unorm_pack32,Fail
dEQP-VK.image.sample_texture.128_bit_compressed_format_cubemap,Fail
dEQP-VK.image.sample_texture.64_bit_compressed_format_cubemap,Fail
gmem-dEQP-VK.api.buffer.invalid_buffer_features.vk_format_d16_unorm,Fail
gmem-dEQP-VK.api.buffer.invalid_buffer_features.vk_format_s8_uint,Fail
spill-dEQP-VK.graphicsfuzz.cov-function-two-loops-limit-using-arguments-array-element-copies,Fail
# Fails when TU_DEBUG=forcebin is set

View File

@ -44,12 +44,6 @@ dEQP-VK.glsl.builtin.precision_fp16_storage16b.inverse.compute.mat4,Fail
dEQP-VK.subgroups.multiple_dispatches.uniform_subgroup_size,Fail
# Showed up with VK-GL-CTS 1.3.1.0:
dEQP-VK.api.buffer.invalid_buffer_features.vk_format_d32_sfloat,Fail
dEQP-VK.api.buffer.invalid_buffer_features.vk_format_s8_uint,Fail
dEQP-VK.api.buffer.invalid_buffer_features.vk_format_x8_d24_unorm_pack32,Fail
dEQP-VK.api.buffer.invalid_buffer_features.vk_format_d16_unorm,Fail
dEQP-VK.api.buffer.invalid_buffer_features.vk_format_d24_unorm_s8_uint,Fail
dEQP-VK.api.buffer.invalid_buffer_features.vk_format_d32_sfloat_s8_uint,Fail
spill-dEQP-VK.graphicsfuzz.cov-function-two-loops-limit-using-arguments-array-element-copies,Fail
# Fails when TU_DEBUG=forcebin is set

View File

@ -274,6 +274,16 @@ tu_physical_device_get_format_properties(
buffer = 0;
}
/* From the Vulkan 1.3.205 spec, section 19.3 "43.3. Required Format Support":
*
* Mandatory format support: depth/stencil with VkImageType
* VK_IMAGE_TYPE_2D
* [...]
* bufferFeatures must not support any features for these formats
*/
if (vk_format_is_depth_or_stencil(vk_format))
buffer = 0;
/* D32_SFLOAT_S8_UINT is tiled as two images, so no linear format
* blob enables some linear features, but its not useful, so don't bother.
*/