panfrost: Pass the texture payload through a panfrost_ptr

We want to be able to pass a payload allocated from the pool, so let's
change the function prototype to allow that.

Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7206>
diff --git a/src/gallium/drivers/panfrost/pan_context.c b/src/gallium/drivers/panfrost/pan_context.c
index 6f5742f..a09e4f8 100644
--- a/src/gallium/drivers/panfrost/pan_context.c
+++ b/src/gallium/drivers/panfrost/pan_context.c
@@ -1045,8 +1045,7 @@
                                 prsrc->cubemap_stride,
                                 panfrost_translate_swizzle_4(composed_swizzle),
                                 prsrc->bo->ptr.gpu,
-                                prsrc->slices,
-                                so->bo);
+                                prsrc->slices, &so->bo->ptr);
         } else {
                 unsigned size = panfrost_estimate_texture_payload_size(
                                 so->base.u.tex.first_level,
diff --git a/src/panfrost/lib/pan_texture.c b/src/panfrost/lib/pan_texture.c
index cda1802..8f3e4e9 100644
--- a/src/panfrost/lib/pan_texture.c
+++ b/src/panfrost/lib/pan_texture.c
@@ -401,7 +401,7 @@
         unsigned swizzle,
         mali_ptr base,
         struct panfrost_slice *slices,
-        struct panfrost_bo *payload)
+        const struct panfrost_ptr *payload)
 {
         const struct util_format_description *desc =
                 util_format_description(format);
@@ -410,7 +410,7 @@
         assert(mali_format);
 
         panfrost_emit_texture_payload(
-                payload->ptr.cpu,
+                payload->cpu,
                 desc,
                 mali_format,
                 dim,
@@ -437,7 +437,7 @@
                 cfg.swizzle = swizzle;
                 cfg.texel_ordering = panfrost_modifier_to_layout(modifier);
                 cfg.levels = last_level - first_level;
-                cfg.surfaces = payload->ptr.gpu;
+                cfg.surfaces = payload->gpu;
 
                 /* We specify API-level LOD clamps in the sampler descriptor
                  * and use these clamps simply for bounds checking */
diff --git a/src/panfrost/lib/pan_texture.h b/src/panfrost/lib/pan_texture.h
index fe25f96..c540012 100644
--- a/src/panfrost/lib/pan_texture.h
+++ b/src/panfrost/lib/pan_texture.h
@@ -127,7 +127,7 @@
         unsigned swizzle,
         mali_ptr base,
         struct panfrost_slice *slices,
-        struct panfrost_bo *payload);
+        const struct panfrost_ptr *payload);
 
 
 unsigned