diff --git a/src/freedreno/vulkan/tu_image.c b/src/freedreno/vulkan/tu_image.c index f5e4e3fb43c..0197ddc4bba 100644 --- a/src/freedreno/vulkan/tu_image.c +++ b/src/freedreno/vulkan/tu_image.c @@ -74,6 +74,14 @@ tu_format_for_aspect(enum pipe_format format, VkImageAspectFlags aspect_mask) { switch (format) { case PIPE_FORMAT_Z24_UNORM_S8_UINT: + /* VK_IMAGE_ASPECT_COLOR_BIT is used internally for blits (despite we + * also incorrectly advertise VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT for + * depth formats). Return PIPE_FORMAT_Z24_UNORM_S8_UINT_AS_R8G8B8A8 in + * this case. + * + * Otherwise, return the appropriate pipe format and let fdl6_view_init + * take care of the rest. + */ if (aspect_mask & VK_IMAGE_ASPECT_COLOR_BIT) return PIPE_FORMAT_Z24_UNORM_S8_UINT_AS_R8G8B8A8; if (aspect_mask & VK_IMAGE_ASPECT_STENCIL_BIT) {