diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/amd/vulkan/radv_image.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/amd/vulkan/radv_image.c b/src/amd/vulkan/radv_image.c index 5cdffe1627f..07618853049 100644 --- a/src/amd/vulkan/radv_image.c +++ b/src/amd/vulkan/radv_image.c @@ -110,6 +110,8 @@ radv_use_dcc_for_image(struct radv_device *device, { bool dcc_compatible_formats; bool blendable; + bool shareable = vk_find_struct_const(pCreateInfo->pNext, + EXTERNAL_MEMORY_IMAGE_CREATE_INFO_KHR) != NULL; /* DCC (Delta Color Compression) is only available for GFX8+. */ if (device->physical_device->rad_info.chip_class < VI) @@ -118,6 +120,11 @@ radv_use_dcc_for_image(struct radv_device *device, if (device->instance->debug_flags & RADV_DEBUG_NO_DCC) return false; + /* FIXME: DCC is broken for shareable images starting with GFX9 */ + if (device->physical_device->rad_info.chip_class >= GFX9 && + shareable) + return false; + /* TODO: Enable DCC for storage images. */ if ((pCreateInfo->usage & VK_IMAGE_USAGE_STORAGE_BIT) || (pCreateInfo->flags & VK_IMAGE_CREATE_EXTENDED_USAGE_BIT_KHR)) |