Mesa (master): Revert "anv/image: Define anv_image_get_aux_addr (v3)"

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Wed Nov 18 05:37:32 UTC 2020


Module: Mesa
Branch: master
Commit: 802fabdaa4be7fd1847ec35920663064689a253c
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=802fabdaa4be7fd1847ec35920663064689a253c

Author: Jason Ekstrand <jason at jlekstrand.net>
Date:   Tue Nov 17 23:22:58 2020 -0600

Revert "anv/image: Define anv_image_get_aux_addr (v3)"

This reverts commit 87dc3106b077199b829a082e32ec33d0c6d400ab.

Fixes: 87dc3106b077 "anv/image: Define anv_image_get_aux_addr (v3)"
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/3826
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7670>

---

 src/intel/vulkan/anv_blorp.c       |  8 +++-----
 src/intel/vulkan/anv_image.c       |  3 ++-
 src/intel/vulkan/anv_private.h     | 13 -------------
 src/intel/vulkan/genX_cmd_buffer.c | 11 +++++------
 4 files changed, 10 insertions(+), 25 deletions(-)

diff --git a/src/intel/vulkan/anv_blorp.c b/src/intel/vulkan/anv_blorp.c
index eab86a0807a..7e6fb39cf7e 100644
--- a/src/intel/vulkan/anv_blorp.c
+++ b/src/intel/vulkan/anv_blorp.c
@@ -227,13 +227,11 @@ get_blorp_surf_for_anv_image(const struct anv_device *device,
 
    if (aux_usage != ISL_AUX_USAGE_NONE) {
       const struct anv_surface *aux_surface = &image->planes[plane].aux_surface;
-      const struct anv_address aux_addr = anv_image_get_aux_addr(device, image, plane);
-
       blorp_surf->aux_surf = &aux_surface->isl,
       blorp_surf->aux_addr = (struct blorp_address) {
-         .buffer = aux_addr.bo,
-         .offset = aux_addr.offset,
-         .mocs = anv_mocs(device, aux_addr.bo, 0),
+         .buffer = image->planes[plane].address.bo,
+         .offset = image->planes[plane].address.offset + aux_surface->offset,
+         .mocs = anv_mocs(device, image->planes[plane].address.bo, 0),
       };
       blorp_surf->aux_usage = aux_usage;
 
diff --git a/src/intel/vulkan/anv_image.c b/src/intel/vulkan/anv_image.c
index 53bc8d1abf5..fcebe0f770f 100644
--- a/src/intel/vulkan/anv_image.c
+++ b/src/intel/vulkan/anv_image.c
@@ -1880,7 +1880,8 @@ anv_image_fill_surface_state(struct anv_device *device,
 
       struct anv_address aux_address = ANV_NULL_ADDRESS;
       if (aux_usage != ISL_AUX_USAGE_NONE) {
-         aux_address = anv_image_get_aux_addr(device, image, plane);
+         aux_address = anv_address_add(image->planes[plane].address,
+                                       aux_surface->offset);
       }
       state_inout->aux_address = aux_address;
 
diff --git a/src/intel/vulkan/anv_private.h b/src/intel/vulkan/anv_private.h
index c1b0d5f4d34..f4abf6bfb82 100644
--- a/src/intel/vulkan/anv_private.h
+++ b/src/intel/vulkan/anv_private.h
@@ -3894,19 +3894,6 @@ anv_image_aux_layers(const struct anv_image * const image,
    return MAX2(image->array_size, image->extent.depth >> miplevel);
 }
 
-static inline struct anv_address
-anv_image_get_aux_addr(UNUSED const struct anv_device *device,
-                       const struct anv_image *image,
-                       uint32_t plane)
-{
-   const struct anv_image_plane *p = &image->planes[plane];
-
-   if (p->aux_surface.isl.size_B == 0)
-      return ANV_NULL_ADDRESS;
-
-   return anv_address_add(p->address, p->aux_surface.offset);
-}
-
 static inline struct anv_address
 anv_image_get_clear_color_addr(UNUSED const struct anv_device *device,
                                const struct anv_image *image,
diff --git a/src/intel/vulkan/genX_cmd_buffer.c b/src/intel/vulkan/genX_cmd_buffer.c
index 7eb901b6418..6fb09bba4d8 100644
--- a/src/intel/vulkan/genX_cmd_buffer.c
+++ b/src/intel/vulkan/genX_cmd_buffer.c
@@ -5087,16 +5087,15 @@ cmd_buffer_emit_depth_stencil(struct anv_cmd_buffer *cmd_buffer)
       info.hiz_usage = cmd_buffer->state.attachments[ds].aux_usage;
       if (info.hiz_usage != ISL_AUX_USAGE_NONE) {
          assert(isl_aux_usage_has_hiz(info.hiz_usage));
-
-         struct anv_address hiz_addr =
-            anv_image_get_aux_addr(device, image, depth_plane);
-
          info.hiz_surf = &image->planes[depth_plane].aux_surface.isl;
+
          info.hiz_address =
             anv_batch_emit_reloc(&cmd_buffer->batch,
                                  dw + device->isl_dev.ds.hiz_offset / 4,
-                                 hiz_addr.bo,
-                                 hiz_addr.offset);
+                                 image->planes[depth_plane].address.bo,
+                                 image->planes[depth_plane].address.offset +
+                                 image->planes[depth_plane].aux_surface.offset);
+
          info.depth_clear_value = ANV_HZ_FC_VAL;
       }
    }



More information about the mesa-commit mailing list