Module: Mesa Branch: 17.3 Commit: 220b67ffa13d9a74d067ce6789c10621bd6be89c URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=220b67ffa13d9a74d067ce6789c10621bd6be89c
Author: Lionel Landwerlin <[email protected]> Date: Thu Apr 12 11:06:47 2018 -0700 anv: fix number of planes for depth & stencil We're not counting correctly with depth & stencil images. Additionally we need to move an assert that is meant just for color attachments. v2: Move an assert() (Reported by Craig) Change aspect mask checks (Francesco) Signed-off-by: Lionel Landwerlin <[email protected]> Fixes: a62a97933578a ("anv: enable multiple planes per image/imageView") Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=105994 Reviewed-by: Nanley Chery <[email protected]> (cherry picked from commit 0a6547014fbe5371f5b7253f2c2640ad0026b184) [Juan A. Suarez: resolve trivial conflicts] Signed-off-by: Juan A. Suarez Romero <[email protected]> Conflicts: src/intel/vulkan/genX_cmd_buffer.c --- src/intel/vulkan/anv_private.h | 4 ++++ src/intel/vulkan/genX_cmd_buffer.c | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/intel/vulkan/anv_private.h b/src/intel/vulkan/anv_private.h index 8de5103453..e9c03e1762 100644 --- a/src/intel/vulkan/anv_private.h +++ b/src/intel/vulkan/anv_private.h @@ -2246,6 +2246,10 @@ anv_image_aspect_get_planes(VkImageAspectFlags aspect_mask) if (aspect_mask & VK_IMAGE_ASPECT_PLANE_2_BIT_KHR) planes++; + if ((aspect_mask & VK_IMAGE_ASPECT_DEPTH_BIT) != 0 && + (aspect_mask & VK_IMAGE_ASPECT_STENCIL_BIT) != 0) + planes++; + return planes; } diff --git a/src/intel/vulkan/genX_cmd_buffer.c b/src/intel/vulkan/genX_cmd_buffer.c index 9eba585d5d..67114a1dc0 100644 --- a/src/intel/vulkan/genX_cmd_buffer.c +++ b/src/intel/vulkan/genX_cmd_buffer.c @@ -968,10 +968,10 @@ genX(cmd_buffer_setup_attachments)(struct anv_cmd_buffer *cmd_buffer, struct anv_image_view *iview = framebuffer->attachments[i]; anv_assert(iview->vk_format == att->format); - anv_assert(iview->n_planes == 1); union isl_color_value clear_color = { .u32 = { 0, } }; if (att_aspects & VK_IMAGE_ASPECT_ANY_COLOR_BIT) { + anv_assert(iview->n_planes == 1); assert(att_aspects == VK_IMAGE_ASPECT_COLOR_BIT); color_attachment_compute_aux_usage(cmd_buffer->device, state, i, begin->renderArea, _______________________________________________ mesa-commit mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/mesa-commit
