From 52fcd0412abc8bb508f0e4d890261bfb032d0113 Mon Sep 17 00:00:00 2001 From: Alyssa Rosenzweig Date: Tue, 3 Sep 2024 20:06:11 -0400 Subject: [PATCH] hk: disable mods on funny float formats Honeykrisp version of b78a691ce2a ("nil,nvk: Disable modifiers for B10G11R11_UFLOAT and E5B9G9R9_UFLOAT"). Signed-off-by: Alyssa Rosenzweig Part-of: --- src/asahi/vulkan/hk_format.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/asahi/vulkan/hk_format.c b/src/asahi/vulkan/hk_format.c index b08edc4a0ac..63f8285ed97 100644 --- a/src/asahi/vulkan/hk_format.c +++ b/src/asahi/vulkan/hk_format.c @@ -8,6 +8,7 @@ * SPDX-License-Identifier: MIT */ #include "drm-uapi/drm_fourcc.h" +#include "vulkan/vulkan_core.h" #include "hk_buffer_view.h" #include "hk_entrypoints.h" @@ -27,6 +28,12 @@ static VkFormatFeatureFlags2 hk_modifier_features(uint64_t mod, VkFormat vk_format, const VkFormatProperties *props) { + /* There's no corresponding fourcc, so don't advertise modifiers */ + if (vk_format == VK_FORMAT_B10G11R11_UFLOAT_PACK32 || + vk_format == VK_FORMAT_E5B9G9R9_UFLOAT_PACK32) { + return 0; + } + if (mod == DRM_FORMAT_MOD_LINEAR) return props->linearTilingFeatures; else