From: Jason Ekstrand Date: Mon, 17 Jun 2019 02:36:21 +0000 (-0500) Subject: anv/blorp: Take an aspect in anv_image_copy_to_shadow X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=86fc268142d16cfd5d9ae60b7d58ae9d089673c9;p=mesa.git anv/blorp: Take an aspect in anv_image_copy_to_shadow Reviewed-by: Lionel Landwerlin --- diff --git a/src/intel/vulkan/anv_blorp.c b/src/intel/vulkan/anv_blorp.c index 0d3d3f948e6..4943250cf49 100644 --- a/src/intel/vulkan/anv_blorp.c +++ b/src/intel/vulkan/anv_blorp.c @@ -1319,17 +1319,16 @@ fast_clear_aux_usage(const struct anv_image *image, void anv_image_copy_to_shadow(struct anv_cmd_buffer *cmd_buffer, const struct anv_image *image, + VkImageAspectFlagBits aspect, uint32_t base_level, uint32_t level_count, uint32_t base_layer, uint32_t layer_count) { struct blorp_batch batch; blorp_batch_init(&cmd_buffer->device->blorp, &batch, cmd_buffer, 0); - assert(image->aspects == VK_IMAGE_ASPECT_COLOR_BIT && image->n_planes == 1); - struct blorp_surf surf; get_blorp_surf_for_anv_image(cmd_buffer->device, - image, VK_IMAGE_ASPECT_COLOR_BIT, + image, aspect, VK_IMAGE_LAYOUT_GENERAL, ISL_AUX_USAGE_NONE, &surf); assert(surf.aux_usage == ISL_AUX_USAGE_NONE); diff --git a/src/intel/vulkan/anv_private.h b/src/intel/vulkan/anv_private.h index e86561adf97..0cd66e0eadb 100644 --- a/src/intel/vulkan/anv_private.h +++ b/src/intel/vulkan/anv_private.h @@ -3285,6 +3285,7 @@ anv_image_ccs_op(struct anv_cmd_buffer *cmd_buffer, void anv_image_copy_to_shadow(struct anv_cmd_buffer *cmd_buffer, const struct anv_image *image, + VkImageAspectFlagBits aspect, uint32_t base_level, uint32_t level_count, uint32_t base_layer, uint32_t layer_count); diff --git a/src/intel/vulkan/genX_cmd_buffer.c b/src/intel/vulkan/genX_cmd_buffer.c index c57c02a08da..5c53ed98a8c 100644 --- a/src/intel/vulkan/genX_cmd_buffer.c +++ b/src/intel/vulkan/genX_cmd_buffer.c @@ -927,6 +927,7 @@ transition_color_buffer(struct anv_cmd_buffer *cmd_buffer, assert(isl_format_is_compressed(image->planes[plane].surface.isl.format)); assert(plane == 0); anv_image_copy_to_shadow(cmd_buffer, image, + VK_IMAGE_ASPECT_COLOR_BIT, base_level, level_count, base_layer, layer_count); }