From 978d4b2a99f7940ea9258bf50aeaa9eafd2eebee Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Iv=C3=A1n=20Briano?= Date: Mon, 24 Nov 2025 13:24:28 -0800 Subject: [PATCH] anv: maxFragmentShadingRateCoverageSamples is 16 on all platforms But before ACM, we need to mis-report it to keep the CTS sane, as the implementation of coarse pixel seems to have all sorts of wrongs in older HW. Reviewed-by: Lionel Landwerlin Part-of: --- src/intel/vulkan/anv_physical_device.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/intel/vulkan/anv_physical_device.c b/src/intel/vulkan/anv_physical_device.c index 02e7f5aab28..11de4b1b066 100644 --- a/src/intel/vulkan/anv_physical_device.c +++ b/src/intel/vulkan/anv_physical_device.c @@ -1495,8 +1495,10 @@ get_properties(const struct anv_physical_device *pdevice, props->maxFragmentSizeAspectRatio = pdevice->info.has_coarse_pixel_primitive_and_cb ? 2 : 4; - props->maxFragmentShadingRateCoverageSamples = 4 * 4 * - (pdevice->info.has_coarse_pixel_primitive_and_cb ? 4 : 16); + props->maxFragmentShadingRateCoverageSamples = + devinfo->verx10 >= 125 ? 16: + 4 * 4 * 16; /* Technically wrong, but some CTS tests fail because of the rates we + report on prior platforms. Fixing all of that is a task for another day. */ props->maxFragmentShadingRateRasterizationSamples = pdevice->info.has_coarse_pixel_primitive_and_cb ? VK_SAMPLE_COUNT_4_BIT : VK_SAMPLE_COUNT_16_BIT;