etnaviv: drop ts_offset from etna_surface

TS is only allocated for single layer surfaces, so there is no need to
cache a ts_offset taking into account the layer offset in etna_surface.

Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Reviewed-by: Christian Gmeiner <cgmeiner@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34488>
This commit is contained in:
Lucas Stach
2025-04-11 21:59:48 +02:00
committed by Marge Bot
parent 50940ce393
commit 4717022cb0
3 changed files with 4 additions and 7 deletions
+2 -2
View File
@@ -245,7 +245,7 @@ etna_blit_clear_color_blt(struct pipe_context *pctx, unsigned idx,
if (surf->level->ts_size) {
clr.dest.use_ts = 1;
clr.dest.ts_addr.bo = res->ts_bo;
clr.dest.ts_addr.offset = surf->ts_offset;
clr.dest.ts_addr.offset = surf->level->ts_offset;
clr.dest.ts_addr.flags = ETNA_RELOC_WRITE;
clr.dest.ts_clear_value[0] = new_clear_value;
clr.dest.ts_clear_value[1] = new_clear_value >> 32;
@@ -340,7 +340,7 @@ etna_blit_clear_zs_blt(struct pipe_context *pctx, struct pipe_surface *dst,
if (surf->level->ts_size) {
clr.dest.use_ts = 1;
clr.dest.ts_addr.bo = res->ts_bo;
clr.dest.ts_addr.offset = surf->ts_offset;
clr.dest.ts_addr.offset = surf->level->ts_offset;
clr.dest.ts_addr.flags = ETNA_RELOC_WRITE;
clr.dest.ts_clear_value[0] = surf->level->clear_value;
clr.dest.ts_clear_value[1] = surf->level->clear_value;
@@ -146,10 +146,8 @@ etna_create_surface(struct pipe_context *pctx, struct pipe_resource *prsc,
if (surf->level->ts_size) {
assert(layer == 0);
surf->ts_offset = surf->level->ts_offset;
surf->ts_reloc.bo = rsc->ts_bo;
surf->ts_reloc.offset = surf->ts_offset;
surf->ts_reloc.offset = surf->level->ts_offset;
surf->ts_reloc.flags = 0;
if (!screen->specs.use_blt) {
@@ -161,7 +159,7 @@ etna_create_surface(struct pipe_context *pctx, struct pipe_resource *prsc,
.source_format = RS_FORMAT_A8R8G8B8,
.dest_format = RS_FORMAT_A8R8G8B8,
.dest = ts_bo,
.dest_offset = surf->ts_offset,
.dest_offset = surf->level->ts_offset,
.dest_stride = 0x40,
.dest_tiling = ETNA_LAYOUT_TILED,
.dither = {0xffffffff, 0xffffffff},
@@ -42,7 +42,6 @@ struct etna_surface {
struct etna_reloc reloc[ETNA_MAX_PIXELPIPES];
struct etna_reloc ts_reloc;
uint32_t offset; /* pre-calculated level + layer offset */
uint32_t ts_offset; /* pre-calculated level + layer TS offset */
/* keep pointer to original resource (for when a render compatible resource is used) */
struct pipe_resource *prsc;
};