Module: Mesa
Branch: main
Commit: 2f38adda6383f426195f435fadb5c3b0c9fc1659
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=2f38adda6383f426195f435fadb5c3b0c9fc1659

Author: Jason Ekstrand <[email protected]>
Date:   Wed May 18 12:49:45 2022 -0500

v3dv: Loosen an assert in copy_buffer_to_image_shader

In f99ac7f2de19 ("v3dv: Don't use color aspects for depth/stencil
images"), we stopped using color aspects for depth/stencil images in a
bunch of cases.  This causes us to trigger an assert in
copy_buffer_to_image_shader where it assumes 16-bit is always color but
now it can also be D16_UNORM.  The assert isn't protecting us from
anything we weren't already doing before so we can just loosen it a bit.

Fixes: f99ac7f2de19 ("v3dv: Don't use color aspects for depth/stencil images")
Reviewed-by: Alejandro PiƱeiro <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16592>

---

 src/broadcom/vulkan/v3dv_meta_copy.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/broadcom/vulkan/v3dv_meta_copy.c 
b/src/broadcom/vulkan/v3dv_meta_copy.c
index 82061839243..67a6e51d280 100644
--- a/src/broadcom/vulkan/v3dv_meta_copy.c
+++ b/src/broadcom/vulkan/v3dv_meta_copy.c
@@ -2604,7 +2604,8 @@ copy_buffer_to_image_shader(struct v3dv_cmd_buffer 
*cmd_buffer,
       };
       break;
    case 2:
-      assert(aspect == VK_IMAGE_ASPECT_COLOR_BIT);
+      assert(aspect == VK_IMAGE_ASPECT_COLOR_BIT ||
+             aspect == VK_IMAGE_ASPECT_DEPTH_BIT);
       src_format = VK_FORMAT_R16_UINT;
       dst_format = src_format;
       break;

Reply via email to