Mesa (master): radv: don' t do format replacement on tc compat htile surfaces.

Dave Airlie airlied at kemper.freedesktop.org
Wed Dec 27 19:25:51 UTC 2017


Module: Mesa
Branch: master
Commit: d2acf97e49e104a45fd8aa0cbe3ad30d0dc37596
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=d2acf97e49e104a45fd8aa0cbe3ad30d0dc37596

Author: Dave Airlie <airlied at redhat.com>
Date:   Wed Dec 27 17:00:29 2017 +1000

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 <bas at basnieuwenhuizen.nl>
Signed-off-by: Dave Airlie <airlied at redhat.com>

---

 src/amd/vulkan/radv_meta_copy.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/amd/vulkan/radv_meta_copy.c b/src/amd/vulkan/radv_meta_copy.c
index de784d5305..29951f2ba4 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) {




More information about the mesa-commit mailing list