diff options
author | Samuel Pitoiset <samuel.pitoiset@gmail.com> | 2018-04-11 21:34:43 +0200 |
---|---|---|
committer | Samuel Pitoiset <samuel.pitoiset@gmail.com> | 2018-04-12 09:58:46 +0200 |
commit | 9eac49246cdc501530418e8bd2a3e6d47173332b (patch) | |
tree | 7b25007a8dd14de384d02f8895eba4dee8d6cdce | |
parent | ab0e625a671d19bb6a736d663bbc6fa5fd9ecd06 (diff) |
radv: fix radv_layout_dcc_compressed() when image doesn't have DCC
num_dcc_levels means that DCC is supported, but this doesn't
mean that it's enabled by the driver. Instead, we should rely
on radv_image_has_dcc().
This fixes some multisample regressions since 0babc8e5d66
("radv: fix picking the method for resolve subpass") on Vega.
This is because the resolve method changed from HW to FS, but
those fails are totally unexpected, so there might some
differences between Polaris and Vega here.
Fixes: 44fcf587445 ("radv: Disable DCC for GENERAL layout and compute transfer dest.")
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
-rw-r--r-- | src/amd/vulkan/radv_image.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/amd/vulkan/radv_image.c b/src/amd/vulkan/radv_image.c index acb569203d..a14e7c18b2 100644 --- a/src/amd/vulkan/radv_image.c +++ b/src/amd/vulkan/radv_image.c @@ -1241,7 +1241,7 @@ bool radv_layout_dcc_compressed(const struct radv_image *image, (queue_mask & (1u << RADV_QUEUE_COMPUTE))) return false; - return image->surface.num_dcc_levels > 0 && layout != VK_IMAGE_LAYOUT_GENERAL; + return radv_image_has_dcc(image) && layout != VK_IMAGE_LAYOUT_GENERAL; } |