radv: use the image view range when fast clearing depth
authorSamuel Pitoiset <samuel.pitoiset@gmail.com>
Wed, 16 Dec 2020 07:36:24 +0000 (08:36 +0100)
committerSamuel Pitoiset <samuel.pitoiset@gmail.com>
Wed, 27 Jan 2021 08:02:17 +0000 (09:02 +0100)
This doesn't change behevior since the driver currently doesn't
support HTILE for mipmaps and also because we can only clear the
whole array layers at once. This improves consistency regarding
the fast clear color path.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8124>

src/amd/vulkan/radv_meta_clear.c

index 62c7215..65f4590 100644 (file)
@@ -1052,12 +1052,12 @@ radv_fast_clear_depth(struct radv_cmd_buffer *cmd_buffer,
                *pre_flush |= cmd_buffer->state.flush_bits;
        }
 
-       struct VkImageSubresourceRange range = {
+       VkImageSubresourceRange range = {
                .aspectMask = aspects,
-               .baseMipLevel = 0,
-               .levelCount = VK_REMAINING_MIP_LEVELS,
-               .baseArrayLayer = 0,
-               .layerCount = VK_REMAINING_ARRAY_LAYERS,
+               .baseMipLevel = iview->base_mip,
+               .levelCount = iview->level_count,
+               .baseArrayLayer = iview->base_layer,
+               .layerCount = iview->layer_count,
        };
 
        flush_bits = radv_clear_htile(cmd_buffer, iview->image, &range, clear_word);