From b37bd5f89b4110e1038a4a6979d345f7b9f17e13 Mon Sep 17 00:00:00 2001 From: Jonathan Marek Date: Fri, 22 Jan 2021 22:04:45 -0500 Subject: [PATCH] turnip: IMAGE_FILTER_{LINEAR,CUBIC}_BIT only for non-integer formats Avoid CTS trying to use linear filtering for integer formats. Signed-off-by: Jonathan Marek Part-of: --- src/freedreno/vulkan/tu_formats.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/freedreno/vulkan/tu_formats.c b/src/freedreno/vulkan/tu_formats.c index 83a3ea8..d2e04cc 100644 --- a/src/freedreno/vulkan/tu_formats.c +++ b/src/freedreno/vulkan/tu_formats.c @@ -385,7 +385,6 @@ tu_physical_device_get_format_properties( optimal |= VK_FORMAT_FEATURE_TRANSFER_SRC_BIT | VK_FORMAT_FEATURE_TRANSFER_DST_BIT | VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT | - VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT | VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT | VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT | VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT; @@ -401,8 +400,12 @@ tu_physical_device_get_format_properties( if (desc->layout != UTIL_FORMAT_LAYOUT_SUBSAMPLED) optimal |= VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT; - if (physical_device->vk.supported_extensions.EXT_filter_cubic) - optimal |= VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT; + if (!vk_format_is_int(format)) { + optimal |= VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT; + + if (physical_device->vk.supported_extensions.EXT_filter_cubic) + optimal |= VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT; + } } if (native_fmt.supported & FMT_COLOR) { -- 2.7.4