Mesa (master): radv: Allow DCC for images with modifiers that are read-only.
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Wed Mar 24 00:37:22 UTC 2021
Module: Mesa
Branch: master
Commit: d248c911624e33fdf66d703a38ad9ae8626294a6
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=d248c911624e33fdf66d703a38ad9ae8626294a6
Author: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
Date: Tue Feb 2 04:19:54 2021 +0100
radv: Allow DCC for images with modifiers that are read-only.
If we avoid writing anything or decompressing this should be fine,
and allows gamescope to work without nodcc for radeonsi.
Reviewed-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8817>
---
src/amd/vulkan/radv_formats.c | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/src/amd/vulkan/radv_formats.c b/src/amd/vulkan/radv_formats.c
index cb45af34082..cb2e4c34da8 100644
--- a/src/amd/vulkan/radv_formats.c
+++ b/src/amd/vulkan/radv_formats.c
@@ -1128,8 +1128,8 @@ void radv_GetPhysicalDeviceFormatProperties(
}
static const struct ac_modifier_options radv_modifier_options = {
- .dcc = false,
- .dcc_retile = false,
+ .dcc = true,
+ .dcc_retile = true,
};
static VkFormatFeatureFlags
@@ -1151,7 +1151,10 @@ radv_get_modifier_flags(struct radv_physical_device *dev,
return 0;
if (ac_modifier_has_dcc(modifier)) {
- features &= ~VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT;
+ features &= ~(VK_FORMAT_FEATURE_TRANSFER_DST_BIT |
+ VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT |
+ VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT |
+ VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT);
if (dev->instance->debug_flags & (RADV_DEBUG_NO_DCC | RADV_DEBUG_NO_DISPLAY_DCC))
return 0;
More information about the mesa-commit
mailing list