summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSamuel Pitoiset <[email protected]>2019-06-27 15:06:17 +0200
committerSamuel Pitoiset <[email protected]>2019-07-01 14:59:22 +0200
commit17cb7ea6fced033d4b8daaf8311d09aa693c7fd7 (patch)
tree2cdf4a90dfd15c9bf3ade8ca7ead63889eaa6d0d
parentf4d2c47cf60d6c1c99852c8d0eff7860c41764ba (diff)
radv: fix decompressing DCC levels with compute
Signed-off-by: Samuel Pitoiset <[email protected]> Reviewed-by: Bas Nieuwenhuizen <[email protected]>
-rw-r--r--src/amd/vulkan/radv_meta_fast_clear.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/amd/vulkan/radv_meta_fast_clear.c b/src/amd/vulkan/radv_meta_fast_clear.c
index f18f7637593..a642d6243d4 100644
--- a/src/amd/vulkan/radv_meta_fast_clear.c
+++ b/src/amd/vulkan/radv_meta_fast_clear.c
@@ -807,11 +807,17 @@ radv_decompress_dcc_compute(struct radv_cmd_buffer *cmd_buffer,
device->meta_state.fast_clear_flush.dcc_decompress_compute_pipeline);
for (uint32_t l = 0; l < radv_get_levelCount(image, subresourceRange); l++) {
+ uint32_t width, height;
/* Do not decompress levels without DCC. */
if (!radv_dcc_enabled(image, subresourceRange->baseMipLevel + l))
continue;
+ width = radv_minify(image->info.width,
+ subresourceRange->baseMipLevel + l);
+ height = radv_minify(image->info.height,
+ subresourceRange->baseMipLevel + l);
+
radv_image_view_init(&iview, cmd_buffer->device,
&(VkImageViewCreateInfo) {
.sType = VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO,
@@ -863,7 +869,7 @@ radv_decompress_dcc_compute(struct radv_cmd_buffer *cmd_buffer,
}
});
- radv_unaligned_dispatch(cmd_buffer, image->info.width, image->info.height, 1);
+ radv_unaligned_dispatch(cmd_buffer, width, height, 1);
}
/* Mark this image as actually being decompressed. */