turnip: no 8x msaa on 128bpp formats
authorJonathan Marek <jonathan@marek.ca>
Thu, 12 Dec 2019 22:03:26 +0000 (17:03 -0500)
committerJonathan Marek <jonathan@marek.ca>
Fri, 13 Dec 2019 01:33:17 +0000 (20:33 -0500)
We don't have an entry for cpp 128 in the tile_alignment table, but I don't
think the HW supports this at all (blob driver just doesn't have 8x msaa).

Signed-off-by: Jonathan Marek <jonathan@marek.ca>
Reviewed-by: Eric Anholt <eric@anholt.net>
src/freedreno/vulkan/tu_formats.c

index 120672cf0a969fd15df72ea4ce468f0387643381..4f8833cf586c5da8f54f7cfafbb9b9b2b2d9398f 100644 (file)
@@ -868,8 +868,10 @@ tu_get_image_format_properties(
          VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT)) &&
        !(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 |
-                      VK_SAMPLE_COUNT_8_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;
    }
 
    if (info->usage & VK_IMAGE_USAGE_SAMPLED_BIT) {