From: Dave Airlie Date: Wed, 27 Dec 2017 07:00:29 +0000 (+1000) Subject: radv: don't do format replacement on tc compat htile surfaces. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=d2acf97e49e104a45fd8aa0cbe3ad30d0dc37596;p=mesa.git radv: don't do format replacement on tc compat htile surfaces. For copies the texture unit needs to know the depth format so it can read the htile data properly. This fixes: dEQP-VK.renderpass.suballocation.formats.d32_sfloat_s8_uint.load.clear Fixes: ad3d98da9f (radv: enable tc compatible htile for d32s8 also.) Reviewed-by: Bas Nieuwenhuizen Signed-off-by: Dave Airlie --- diff --git a/src/amd/vulkan/radv_meta_copy.c b/src/amd/vulkan/radv_meta_copy.c index de784d53050..29951f2ba44 100644 --- a/src/amd/vulkan/radv_meta_copy.c +++ b/src/amd/vulkan/radv_meta_copy.c @@ -88,7 +88,8 @@ blit_surf_for_image_level_layer(struct radv_image *image, else if (subres->aspectMask & VK_IMAGE_ASPECT_STENCIL_BIT) format = vk_format_stencil_only(format); - if (!image->surface.dcc_size) + if (!image->surface.dcc_size && + !(image->surface.htile_size && image->tc_compatible_htile)) format = vk_format_for_size(vk_format_get_blocksize(format)); return (struct radv_meta_blit2d_surf) {