diff --git a/.pick_status.json b/.pick_status.json index 90d9731135c..e069cc1ea24 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -2424,7 +2424,7 @@ "description": "radv: ignore radv_disable_dcc_stores on GFX12", "nominated": true, "nomination_type": 1, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": null, "notes": null diff --git a/src/amd/vulkan/radv_formats.c b/src/amd/vulkan/radv_formats.c index d036b56183d..28755aeae8d 100644 --- a/src/amd/vulkan/radv_formats.c +++ b/src/amd/vulkan/radv_formats.c @@ -631,7 +631,8 @@ radv_get_modifier_flags(struct radv_physical_device *pdev, VkFormat format, uint * do not support DCC image stores or when explicitly disabled. */ if (!ac_modifier_supports_dcc_image_stores(pdev->info.gfx_level, modifier) || - radv_is_atomic_format_supported(format) || instance->drirc.disable_dcc_stores) + radv_is_atomic_format_supported(format) || + (instance->drirc.disable_dcc_stores && pdev->info.gfx_level < GFX12)) features &= ~VK_FORMAT_FEATURE_2_STORAGE_IMAGE_BIT; if (instance->debug_flags & (RADV_DEBUG_NO_DCC | RADV_DEBUG_NO_DISPLAY_DCC)) diff --git a/src/amd/vulkan/radv_image.c b/src/amd/vulkan/radv_image.c index 19fc48dec27..0e1367b7d0c 100644 --- a/src/amd/vulkan/radv_image.c +++ b/src/amd/vulkan/radv_image.c @@ -298,7 +298,8 @@ radv_use_dcc_for_image_early(struct radv_device *device, struct radv_image *imag return false; /* Force disable DCC for stores to workaround game bugs. */ - if (instance->drirc.disable_dcc_stores && (pCreateInfo->usage & VK_IMAGE_USAGE_STORAGE_BIT)) + if (instance->drirc.disable_dcc_stores && pdev->info.gfx_level < GFX12 && + (pCreateInfo->usage & VK_IMAGE_USAGE_STORAGE_BIT)) return false; /* DCC MSAA can't work on GFX10.3 and earlier without FMASK. */ diff --git a/src/util/driconf.h b/src/util/driconf.h index 29826945996..bfc74fdb81c 100644 --- a/src/util/driconf.h +++ b/src/util/driconf.h @@ -705,7 +705,7 @@ #define DRI_CONF_RADV_DISABLE_DCC_STORES(def) \ DRI_CONF_OPT_B(radv_disable_dcc_stores, def, \ - "Disable DCC for color storage images") + "Disable DCC for color storage images on GFX10-GFX11.5") #define DRI_CONF_RADV_LOWER_TERMINATE_TO_DISCARD(def) \ DRI_CONF_OPT_B(radv_lower_terminate_to_discard, def, \