tu: Support VK_FORMAT_FEATURE_BLIT_SRC_BIT for texture-only formats
authorConnor Abbott <cwabbott0@gmail.com>
Mon, 18 May 2020 17:16:48 +0000 (19:16 +0200)
committerMarge Bot <eric+marge@anholt.net>
Tue, 19 May 2020 19:55:11 +0000 (19:55 +0000)
It turns out this is required for compressed formats, and we might as
well enable it for the one other texture-only format too.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5098>

src/freedreno/vulkan/tu_formats.c

index 8ae18433826e0a50ff6e4e6cbcf078bc6f98154b..3dadbe1315b5e28f782590e312a0a0ce10dbc505 100644 (file)
@@ -379,7 +379,8 @@ tu_physical_device_get_format_properties(
       buffer |= VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT;
 
    if (native_fmt.supported & FMT_TEXTURE) {
-      optimal |= VK_FORMAT_FEATURE_TRANSFER_SRC_BIT |
+      optimal |= VK_FORMAT_FEATURE_BLIT_SRC_BIT |
+                 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 |
@@ -393,7 +394,6 @@ tu_physical_device_get_format_properties(
    if (native_fmt.supported & FMT_COLOR) {
       assert(native_fmt.supported & FMT_TEXTURE);
       optimal |= VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT |
-                 VK_FORMAT_FEATURE_BLIT_SRC_BIT |
                  VK_FORMAT_FEATURE_BLIT_DST_BIT;
 
       if (vk_format_is_float(format) ||