diff --git a/.pick_status.json b/.pick_status.json index b8c57706eaf..414ed448de8 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -112,7 +112,7 @@ "description": "radv: disable VRS entirely on GFX11", "nominated": true, "nomination_type": 0, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": null }, diff --git a/src/amd/vulkan/radv_device.c b/src/amd/vulkan/radv_device.c index b1e816f3dfb..9b26685ac92 100644 --- a/src/amd/vulkan/radv_device.c +++ b/src/amd/vulkan/radv_device.c @@ -489,7 +489,7 @@ radv_physical_device_get_supported_extensions(const struct radv_physical_device .KHR_external_semaphore = true, .KHR_external_semaphore_fd = true, .KHR_format_feature_flags2 = true, - .KHR_fragment_shading_rate = device->rad_info.gfx_level >= GFX10_3, + .KHR_fragment_shading_rate = device->rad_info.gfx_level == GFX10_3, .KHR_get_memory_requirements2 = true, .KHR_global_priority = true, .KHR_image_format_list = true, @@ -3816,7 +3816,7 @@ radv_CreateDevice(VkPhysicalDevice physicalDevice, const VkDeviceCreateInfo *pCr } } - if (device->physical_device->rad_info.gfx_level >= GFX10_3) { + if (device->physical_device->rad_info.gfx_level == GFX10_3) { if (getenv("RADV_FORCE_VRS_CONFIG_FILE")) { const char *file = radv_get_force_vrs_config_file(); diff --git a/src/amd/vulkan/radv_pipeline.c b/src/amd/vulkan/radv_pipeline.c index d5c5b03743a..46b37e536df 100644 --- a/src/amd/vulkan/radv_pipeline.c +++ b/src/amd/vulkan/radv_pipeline.c @@ -5697,6 +5697,9 @@ gfx103_pipeline_vrs_coarse_shading(const struct radv_graphics_pipeline *pipeline struct radv_shader *ps = pipeline->base.shaders[MESA_SHADER_FRAGMENT]; struct radv_device *device = pipeline->base.device; + if (device->physical_device->rad_info.gfx_level != GFX10_3) + return false; + if (device->instance->debug_flags & RADV_DEBUG_NO_VRS_FLAT_SHADING) return false;