v3dv: add a helper to get the Z/S buffer from an aspect mask

We will be using this when we need to implement other clearing commands.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6766>
diff --git a/src/broadcom/vulkan/v3dv_cmd_buffer.c b/src/broadcom/vulkan/v3dv_cmd_buffer.c
index efccbef..f480f68 100644
--- a/src/broadcom/vulkan/v3dv_cmd_buffer.c
+++ b/src/broadcom/vulkan/v3dv_cmd_buffer.c
@@ -741,23 +741,6 @@
    *rt_clamp = V3D_RENDER_TARGET_CLAMP_NONE;
 }
 
-static uint32_t
-zs_buffer_from_aspect_bits(VkImageAspectFlags aspects)
-{
-   const VkImageAspectFlags zs_aspects =
-      VK_IMAGE_ASPECT_DEPTH_BIT | VK_IMAGE_ASPECT_STENCIL_BIT;
-   const VkImageAspectFlags filtered_aspects = aspects & zs_aspects;
-
-   if (filtered_aspects == zs_aspects)
-      return ZSTENCIL;
-   else if (filtered_aspects == VK_IMAGE_ASPECT_DEPTH_BIT)
-      return Z;
-   else if (filtered_aspects == VK_IMAGE_ASPECT_STENCIL_BIT)
-      return STENCIL;
-   else
-      return NONE;
-}
-
 static void
 cmd_buffer_render_pass_emit_load(struct v3dv_cmd_buffer *cmd_buffer,
                                  struct v3dv_cl *cl,
@@ -849,7 +832,8 @@
       if (needs_load) {
          struct v3dv_image_view *iview =
             framebuffer->attachments[ds_attachment_idx];
-         const uint32_t zs_buffer = zs_buffer_from_aspect_bits(iview->aspects);
+         const uint32_t zs_buffer =
+            v3dv_zs_buffer_from_aspect_bits(iview->aspects);
          cmd_buffer_render_pass_emit_load(cmd_buffer, cl,
                                           iview, layer, zs_buffer);
       }
@@ -978,7 +962,8 @@
       if (needs_ds_store) {
          struct v3dv_image_view *iview =
             state->framebuffer->attachments[ds_attachment_idx];
-         const uint32_t zs_buffer = zs_buffer_from_aspect_bits(iview->aspects);
+         const uint32_t zs_buffer =
+            v3dv_zs_buffer_from_aspect_bits(iview->aspects);
          cmd_buffer_render_pass_emit_store(cmd_buffer, cl,
                                            ds_attachment_idx, layer,
                                            zs_buffer, needs_ds_clear);
diff --git a/src/broadcom/vulkan/v3dv_private.h b/src/broadcom/vulkan/v3dv_private.h
index fc7fb85..c3c4ae9 100644
--- a/src/broadcom/vulkan/v3dv_private.h
+++ b/src/broadcom/vulkan/v3dv_private.h
@@ -830,6 +830,23 @@
    uint8_t stencil_cfg[2][cl_packet_length(STENCIL_CFG)];
 };
 
+static inline uint32_t
+v3dv_zs_buffer_from_aspect_bits(VkImageAspectFlags aspects)
+{
+   const VkImageAspectFlags zs_aspects =
+      VK_IMAGE_ASPECT_DEPTH_BIT | VK_IMAGE_ASPECT_STENCIL_BIT;
+   const VkImageAspectFlags filtered_aspects = aspects & zs_aspects;
+
+   if (filtered_aspects == zs_aspects)
+      return ZSTENCIL;
+   else if (filtered_aspects == VK_IMAGE_ASPECT_DEPTH_BIT)
+      return Z;
+   else if (filtered_aspects == VK_IMAGE_ASPECT_STENCIL_BIT)
+      return STENCIL;
+   else
+      return NONE;
+}
+
 uint32_t v3dv_physical_device_api_version(struct v3dv_physical_device *dev);
 
 int v3dv_get_instance_entrypoint_index(const char *name);