freedreno/fdl: Expose view offset
authorConnor Abbott <cwabbott0@gmail.com>
Wed, 16 Nov 2022 15:12:33 +0000 (16:12 +0100)
committerMarge Bot <emma+marge@anholt.net>
Mon, 8 May 2023 19:59:25 +0000 (19:59 +0000)
Will be used by CPU sampling.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20304>

src/freedreno/fdl/fd6_view.c
src/freedreno/fdl/freedreno_layout.h

index a698e3f..b227c24 100644 (file)
@@ -200,8 +200,8 @@ fdl6_view_init(struct fdl6_view *view, const struct fdl_layout **layouts,
       depth /= 6;
    }
 
-   uint64_t base_addr = args->iova +
-      fdl_surface_offset(layout, args->base_miplevel, args->base_array_layer);
+   view->offset = fdl_surface_offset(layout, args->base_miplevel, args->base_array_layer);
+   uint64_t base_addr = args->iova + view->offset;
    uint64_t ubwc_addr = args->iova +
       fdl_ubwc_offset(layout, args->base_miplevel, args->base_array_layer);
 
index 7886523..97631e7 100644 (file)
@@ -294,6 +294,8 @@ struct fdl6_view {
    uint32_t layer_size;
    uint32_t ubwc_layer_size;
 
+   uint32_t offset;
+
    uint32_t width, height;
    bool need_y2_align;