diff --git a/src/panfrost/genxml/decode.c b/src/panfrost/genxml/decode.c index 440a1e368f7..d255d6e499b 100644 --- a/src/panfrost/genxml/decode.c +++ b/src/panfrost/genxml/decode.c @@ -313,6 +313,48 @@ pandecode_texture_payload(struct pandecode_context *ctx, uint64_t payload, } #endif +#if PAN_ARCH >= 9 +static void +pandecode_tex_plane(struct pandecode_context *ctx, uint64_t u, unsigned idx) +{ + const struct mali_plane_header_packed *cl = + pandecode_fetch_gpu_mem(ctx, u, pan_size(PLANE_HEADER)); + + pan_unpack(cl, PLANE_HEADER, temp); + + switch (temp.plane_type) { + case MALI_PLANE_TYPE_NULL: + DUMP_ADDR(ctx, NULL_PLANE, u, "Plane %u:\n", idx); + break; + case MALI_PLANE_TYPE_GENERIC: + DUMP_ADDR(ctx, GENERIC_PLANE, u, "Plane %u:\n", idx); + break; + case MALI_PLANE_TYPE_CHROMA_2P: + DUMP_ADDR(ctx, CHROMA_2P_PLANE, u, "Plane %u:\n", idx); + break; + case MALI_PLANE_TYPE_ASTC_2D: + DUMP_ADDR(ctx, ASTC_2D_PLANE, u, "Plane %u:\n", idx); + break; + case MALI_PLANE_TYPE_ASTC_3D: + DUMP_ADDR(ctx, ASTC_3D_PLANE, u, "Plane %u:\n", idx); + break; + case MALI_PLANE_TYPE_AFBC: + DUMP_ADDR(ctx, AFBC_PLANE, u, "Plane %u:\n", idx); + break; +#if PAN_ARCH >= 10 + case MALI_PLANE_TYPE_AFRC: + DUMP_ADDR(ctx, AFRC_PLANE, u, "Plane %u:\n", idx); + break; + case MALI_PLANE_TYPE_AFRC_CHROMA_2P: + DUMP_ADDR(ctx, AFRC_CHROMA_2P_PLANE, u, "Plane %u:\n", idx); + break; +#endif + default: + unreachable("Unknown plane type"); + } +} +#endif + #if PAN_ARCH <= 5 void GENX(pandecode_texture)(struct pandecode_context *ctx, uint64_t u, unsigned tex) @@ -345,8 +387,7 @@ GENX(pandecode_texture)(struct pandecode_context *ctx, plane_count *= 6; for (unsigned i = 0; i < plane_count; ++i) - DUMP_ADDR(ctx, PLANE, temp.surfaces + i * pan_size(PLANE), "Plane %u:\n", - i); + pandecode_tex_plane(ctx, temp.surfaces + i * pan_size(NULL_PLANE), i); #else pandecode_texture_payload(ctx, temp.surfaces, &temp); #endif diff --git a/src/panfrost/genxml/v10.xml b/src/panfrost/genxml/v10.xml index 031fc0ad441..20e9ebf7f58 100644 --- a/src/panfrost/genxml/v10.xml +++ b/src/panfrost/genxml/v10.xml @@ -1373,6 +1373,123 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/panfrost/genxml/v12.xml b/src/panfrost/genxml/v12.xml index 17b90132368..d3e9b7733d7 100644 --- a/src/panfrost/genxml/v12.xml +++ b/src/panfrost/genxml/v12.xml @@ -1634,6 +1634,135 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/panfrost/genxml/v13.xml b/src/panfrost/genxml/v13.xml index cd964c27eb3..e69cb1c128e 100644 --- a/src/panfrost/genxml/v13.xml +++ b/src/panfrost/genxml/v13.xml @@ -1936,6 +1936,135 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/panfrost/genxml/v9.xml b/src/panfrost/genxml/v9.xml index efdcc6a24f5..fac00147181 100644 --- a/src/panfrost/genxml/v9.xml +++ b/src/panfrost/genxml/v9.xml @@ -830,6 +830,85 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +