summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDave Airlie <airlied@redhat.com>2018-05-11 14:55:29 +1000
committerDave Airlie <airlied@redhat.com>2018-05-14 08:57:54 +1000
commit5978d54a09e6ad151c0bd365de0e2c82bbf493d1 (patch)
tree79d8de047476d1b184df4d6fb1965d862761683e
parent98dbaa445a83108b59bd56e8f3224c13c36ba1d5 (diff)
radv: use compute path for multi-layer images.
I don't think the hw resolve path can't handle multi-layer images. This fixes all the: dEQP-VK.renderpass.multisample_resolve.layers_* tests on my VI card. Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Cc: <mesa-stable@lists.freedesktop.org>
-rw-r--r--src/amd/vulkan/radv_meta_resolve.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/amd/vulkan/radv_meta_resolve.c b/src/amd/vulkan/radv_meta_resolve.c
index 75916713c0..d4d3552f31 100644
--- a/src/amd/vulkan/radv_meta_resolve.c
+++ b/src/amd/vulkan/radv_meta_resolve.c
@@ -358,6 +358,8 @@ static void radv_pick_resolve_method_images(struct radv_image *src_image,
*method = RESOLVE_COMPUTE;
else if (vk_format_is_int(src_image->vk_format))
*method = RESOLVE_COMPUTE;
+ else if (src_image->info.array_size > 1)
+ *method = RESOLVE_COMPUTE;
if (radv_layout_dcc_compressed(dest_image, dest_image_layout, queue_mask)) {
*method = RESOLVE_FRAGMENT;