From: Samuel Pitoiset Date: Tue, 17 Apr 2018 14:05:15 +0000 (+0200) Subject: radv: allocate CMASK for DCC fast clear with MSAA X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=373fa0b599ca3b2904433e413fd6e24fc37292b7;p=mesa.git radv: allocate CMASK for DCC fast clear with MSAA CMASK is required because it should be cleared to 0xCCCCCCCC for MSAA textures. Signed-off-by: Samuel Pitoiset Reviewed-by: Bas Nieuwenhuizen --- diff --git a/src/amd/vulkan/radv_image.c b/src/amd/vulkan/radv_image.c index a14e7c18b29..ba8f14d91bd 100644 --- a/src/amd/vulkan/radv_image.c +++ b/src/amd/vulkan/radv_image.c @@ -997,6 +997,13 @@ radv_image_create(VkDevice _device, /* Try to enable DCC first. */ if (radv_image_can_enable_dcc(image)) { radv_image_alloc_dcc(image); + if (image->info.samples > 1) { + /* CMASK should be enabled because DCC fast + * clear with MSAA needs it. + */ + assert(radv_image_can_enable_cmask(image)); + radv_image_alloc_cmask(device, image); + } } else { /* When DCC cannot be enabled, try CMASK. */ image->surface.dcc_size = 0;