From: Marek Olšák <marek.ol...@amd.com> GFX9 doesn't have (usable) mipmap offsets. --- src/gallium/drivers/radeonsi/si_state.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/src/gallium/drivers/radeonsi/si_state.c b/src/gallium/drivers/radeonsi/si_state.c index 1f1b4db..82f2793 100644 --- a/src/gallium/drivers/radeonsi/si_state.c +++ b/src/gallium/drivers/radeonsi/si_state.c @@ -4052,12 +4052,15 @@ static void si_query_opaque_metadata(struct r600_common_screen *rscreen, /* Dwords [2:9] contain the image descriptor. */ memcpy(&md->metadata[2], desc, sizeof(desc)); + md->size_metadata = 10 * 4; /* Dwords [10:..] contain the mipmap level offsets. */ - for (i = 0; i <= res->last_level; i++) - md->metadata[10+i] = rtex->surface.u.legacy.level[i].offset >> 8; + if (rscreen->chip_class <= VI) { + for (i = 0; i <= res->last_level; i++) + md->metadata[10+i] = rtex->surface.u.legacy.level[i].offset >> 8; - md->size_metadata = (11 + res->last_level) * 4; + md->size_metadata += (1 + res->last_level) * 4; + } } static void si_apply_opaque_metadata(struct r600_common_screen *rscreen, -- 2.7.4 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev