panfrost: Refactor XML to permit non-IDVS jobs

Tiler jobs look similar, but don't have the Allocations fields. Refactor to make
this possible to express.

Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15461>
This commit is contained in:
Alyssa Rosenzweig 2022-03-17 13:22:10 -04:00 committed by Marge Bot
parent 53f1fa9219
commit e635dc9ea5
2 changed files with 11 additions and 7 deletions

View File

@ -1266,7 +1266,8 @@ pandecode_malloc_vertex_job(const struct pandecode_mapped_memory *mem,
struct mali_malloc_vertex_job_packed *PANDECODE_PTR_VAR(p, mem, job);
DUMP_SECTION(MALLOC_VERTEX_JOB, PRIMITIVE, p, "Primitive:\n");
DUMP_SECTION(MALLOC_VERTEX_JOB, COUNTS, p, "Counts:\n");
DUMP_SECTION(MALLOC_VERTEX_JOB, INSTANCE_COUNT, p, "Instance count:\n");
DUMP_SECTION(MALLOC_VERTEX_JOB, ALLOCATION, p, "Allocation:\n");
DUMP_SECTION(MALLOC_VERTEX_JOB, TILER, p, "Tiler:\n");
DUMP_SECTION(MALLOC_VERTEX_JOB, SCISSOR, p, "Scissor:\n");
DUMP_SECTION(MALLOC_VERTEX_JOB, PRIMITIVE_SIZE, p, "Primitive Size:\n");

View File

@ -1383,11 +1383,13 @@
<field name="Shader" start="16:0" size="512" type="Shader Environment"/>
</struct>
<struct name="IDVS Counts" size="4">
<field name="Instance count" start="0:0" size="32" type="uint"/>
<field name="Vertex packet stride" start="1:0" size="16" type="uint"/>
<field name="Vertex attribute stride" start="1:16" size="16" type="uint"/>
<field name="Tiler" size="64" start="2:0" type="address"/>
<struct name="Count" size="1">
<field name="Count" start="0:0" size="32" type="uint"/>
</struct>
<struct name="Allocation" size="1">
<field name="Vertex packet stride" start="0:0" size="16" type="uint"/>
<field name="Vertex attribute stride" start="0:16" size="16" type="uint"/>
</struct>
<struct name="Tiler Pointer" size="2">
@ -1406,7 +1408,8 @@
<aggregate name="Malloc Vertex Job" size="384" align="128">
<section name="Header" offset="0" type="Job Header"/>
<section name="Primitive" offset="32" type="Primitive"/>
<section name="Counts" offset="48" type="IDVS Counts"/>
<section name="Instance Count" offset="48" type="Count"/>
<section name="Allocation" offset="52" type="Allocation"/>
<section name="Tiler" offset="56" type="Tiler Pointer"/>
<section name="Scissor" offset="104" type="Scissor"/>
<section name="Primitive Size" offset="112" type="Primitive Size"/>