turnip: disable 8x msaa
authorJonathan Marek <jonathan@marek.ca>
Wed, 8 Apr 2020 02:20:10 +0000 (22:20 -0400)
committerMarge Bot <eric+marge@anholt.net>
Thu, 9 Apr 2020 14:43:02 +0000 (14:43 +0000)
Not everything supports 8x msaa, and the blob doesn't support it at all.

Signed-off-by: Jonathan Marek <jonathan@marek.ca>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/3783>

src/freedreno/vulkan/tu_device.c
src/freedreno/vulkan/tu_formats.c

index ffadb3ce6b99a63ec0bfabea429c9590aeb68c41..394c3ce18009d18f06352dfb703ed0c9a39e4d43 100644 (file)
@@ -729,8 +729,8 @@ tu_GetPhysicalDeviceProperties(VkPhysicalDevice physicalDevice,
                                VkPhysicalDeviceProperties *pProperties)
 {
    TU_FROM_HANDLE(tu_physical_device, pdevice, physicalDevice);
-   VkSampleCountFlags sample_counts = VK_SAMPLE_COUNT_1_BIT |
-      VK_SAMPLE_COUNT_2_BIT | VK_SAMPLE_COUNT_4_BIT | VK_SAMPLE_COUNT_8_BIT;
+   VkSampleCountFlags sample_counts =
+      VK_SAMPLE_COUNT_1_BIT | VK_SAMPLE_COUNT_2_BIT | VK_SAMPLE_COUNT_4_BIT;
 
    /* make sure that the entire descriptor set is addressable with a signed
     * 32-bit int. So the sum of all limits scaled by descriptor size has to
index 021618ee8f44b8a57bd46751f28730fd98322c42..0d2351d0066dc52252c9462127e62ca55bc4584c 100644 (file)
@@ -921,9 +921,10 @@ tu_get_image_format_properties(
        !(info->flags & VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT) &&
        !(info->usage & VK_IMAGE_USAGE_STORAGE_BIT)) {
       sampleCounts |= VK_SAMPLE_COUNT_2_BIT | VK_SAMPLE_COUNT_4_BIT;
-      /* 8x MSAA on 128bpp formats doesn't seem to work */
-      if (vk_format_get_blocksize(info->format) <= 8)
-         sampleCounts |= VK_SAMPLE_COUNT_8_BIT;
+      /* note: most operations support 8 samples (GMEM render/resolve do at least)
+       * but some do not (which ones?), just disable 8 samples completely,
+       * (no 8x msaa matches the blob driver behavior)
+       */
    }
 
    if (info->usage & VK_IMAGE_USAGE_SAMPLED_BIT) {