turnip: disable 8x msaa

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>
This commit is contained in:
Jonathan Marek
2020-04-07 22:20:10 -04:00
committed by Marge Bot
parent f03e63cd99
commit 0637eab678
2 changed files with 6 additions and 5 deletions

View File

@@ -729,8 +729,8 @@ tu_GetPhysicalDeviceProperties(VkPhysicalDevice physicalDevice,
VkPhysicalDeviceProperties *pProperties) VkPhysicalDeviceProperties *pProperties)
{ {
TU_FROM_HANDLE(tu_physical_device, pdevice, physicalDevice); TU_FROM_HANDLE(tu_physical_device, pdevice, physicalDevice);
VkSampleCountFlags sample_counts = VK_SAMPLE_COUNT_1_BIT | VkSampleCountFlags sample_counts =
VK_SAMPLE_COUNT_2_BIT | VK_SAMPLE_COUNT_4_BIT | VK_SAMPLE_COUNT_8_BIT; 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 /* 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 * 32-bit int. So the sum of all limits scaled by descriptor size has to

View File

@@ -921,9 +921,10 @@ tu_get_image_format_properties(
!(info->flags & VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT) && !(info->flags & VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT) &&
!(info->usage & VK_IMAGE_USAGE_STORAGE_BIT)) { !(info->usage & VK_IMAGE_USAGE_STORAGE_BIT)) {
sampleCounts |= VK_SAMPLE_COUNT_2_BIT | VK_SAMPLE_COUNT_4_BIT; sampleCounts |= VK_SAMPLE_COUNT_2_BIT | VK_SAMPLE_COUNT_4_BIT;
/* 8x MSAA on 128bpp formats doesn't seem to work */ /* note: most operations support 8 samples (GMEM render/resolve do at least)
if (vk_format_get_blocksize(info->format) <= 8) * but some do not (which ones?), just disable 8 samples completely,
sampleCounts |= VK_SAMPLE_COUNT_8_BIT; * (no 8x msaa matches the blob driver behavior)
*/
} }
if (info->usage & VK_IMAGE_USAGE_SAMPLED_BIT) { if (info->usage & VK_IMAGE_USAGE_SAMPLED_BIT) {