diff options
author | Iago Toral Quiroga <itoral@igalia.com> | 2020-06-30 13:19:01 +0200 |
---|---|---|
committer | Marge Bot <eric+marge@anholt.net> | 2020-10-13 21:21:31 +0000 |
commit | bf20a5e7b7d87245ac1c5a685b1d7942e30d072b (patch) | |
tree | fb515d73e7050518ff614192a77bb37662630d46 | |
parent | 6053e85ee4521b57a597b4f7ac4d3818e21a65a5 (diff) |
v3dv: fix srcSubresource description for image to buffer blits
We are emitting a loop copying layer by layer here.
Fixes:
dEQP-VK.pipeline.render_to_image.core.*.huge.*
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6766>
-rw-r--r-- | src/broadcom/vulkan/v3dv_cmd_buffer.c | 1 | ||||
-rw-r--r-- | src/broadcom/vulkan/v3dv_meta_copy.c | 4 |
2 files changed, 2 insertions, 3 deletions
diff --git a/src/broadcom/vulkan/v3dv_cmd_buffer.c b/src/broadcom/vulkan/v3dv_cmd_buffer.c index 95d17d5d12a..7926defa86f 100644 --- a/src/broadcom/vulkan/v3dv_cmd_buffer.c +++ b/src/broadcom/vulkan/v3dv_cmd_buffer.c @@ -3735,7 +3735,6 @@ cmd_buffer_emit_draw(struct v3dv_cmd_buffer *cmd_buffer, v3dv_cl_ensure_space_with_branch( &job->bcl, cl_packet_length(VERTEX_ARRAY_PRIMS)); v3dv_return_if_oom(cmd_buffer, NULL); - cl_emit(&job->bcl, VERTEX_ARRAY_PRIMS, prim) { prim.mode = hw_prim_type; prim.length = info->vertex_count; diff --git a/src/broadcom/vulkan/v3dv_meta_copy.c b/src/broadcom/vulkan/v3dv_meta_copy.c index c93d1b7fb0f..95be84d0f30 100644 --- a/src/broadcom/vulkan/v3dv_meta_copy.c +++ b/src/broadcom/vulkan/v3dv_meta_copy.c @@ -910,8 +910,8 @@ copy_image_to_buffer_blit(struct v3dv_cmd_buffer *cmd_buffer, .srcSubresource = { .aspectMask = copy_aspect, .mipLevel = region->imageSubresource.mipLevel, - .baseArrayLayer = region->imageSubresource.baseArrayLayer, - .layerCount = region->imageSubresource.layerCount, + .baseArrayLayer = region->imageSubresource.baseArrayLayer + i, + .layerCount = 1, }, .srcOffsets = { { |