Mesa (main): panfrost: Update supported job types

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Tue Feb 8 20:35:40 UTC 2022


Module: Mesa
Branch: main
Commit: 8c51b54bd12ca15d9560804dfd565a98b9bff2c6
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=8c51b54bd12ca15d9560804dfd565a98b9bff2c6

Author: Alyssa Rosenzweig <alyssa at collabora.com>
Date:   Wed Feb  2 18:43:32 2022 -0500

panfrost: Update supported job types

Remove a few that no longer exist, and rename IDVS helper to Malloc Vertex. The
distinction between Malloc Vertex jobs and regular Indexed Vertex jobs is that
the hardware allocates varying buffers dynamically for Malloc Vertex jobs.
Regular IDVS and even legacy tiler jobs are also supported where desired.

Signed-off-by: Alyssa Rosenzweig <alyssa at collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14935>

---

 src/panfrost/lib/genxml/decode.c | 24 ++++++++++++------------
 src/panfrost/lib/genxml/v9.xml   |  7 ++-----
 2 files changed, 14 insertions(+), 17 deletions(-)

diff --git a/src/panfrost/lib/genxml/decode.c b/src/panfrost/lib/genxml/decode.c
index d65707c52b2..829030ff511 100644
--- a/src/panfrost/lib/genxml/decode.c
+++ b/src/panfrost/lib/genxml/decode.c
@@ -1287,21 +1287,21 @@ pandecode_dcd(const struct MALI_DRAW *p,
 }
 
 static void
-pandecode_idvs_helper_job(const struct pandecode_mapped_memory *mem,
+pandecode_malloc_vertex_job(const struct pandecode_mapped_memory *mem,
                           mali_ptr job, unsigned gpu_id)
 {
-        struct mali_idvs_helper_job_packed *PANDECODE_PTR_VAR(p, mem, job);
+        struct mali_malloc_vertex_job_packed *PANDECODE_PTR_VAR(p, mem, job);
 
-        DUMP_SECTION(IDVS_HELPER_JOB, PRIMITIVE, p, "Primitive:\n");
-        DUMP_SECTION(IDVS_HELPER_JOB, COUNTS, p, "Counts:\n");
-        DUMP_SECTION(IDVS_HELPER_JOB, TILER, p, "Tiler:\n");
-        DUMP_SECTION(IDVS_HELPER_JOB, SCISSOR, p, "Scissor:\n");
-        DUMP_SECTION(IDVS_HELPER_JOB, PRIMITIVE_SIZE, p, "Primitive Size:\n");
-        DUMP_SECTION(IDVS_HELPER_JOB, INDICES, p, "Indices:\n");
+        DUMP_SECTION(MALLOC_VERTEX_JOB, PRIMITIVE, p, "Primitive:\n");
+        DUMP_SECTION(MALLOC_VERTEX_JOB, COUNTS, p, "Counts:\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");
+        DUMP_SECTION(MALLOC_VERTEX_JOB, INDICES, p, "Indices:\n");
 
-        pan_section_unpack(p, IDVS_HELPER_JOB, DRAW, dcd);
+        pan_section_unpack(p, MALLOC_VERTEX_JOB, DRAW, dcd);
 
-        pan_section_unpack(p, IDVS_HELPER_JOB, TILER, tiler_ptr);
+        pan_section_unpack(p, MALLOC_VERTEX_JOB, TILER, tiler_ptr);
         pandecode_log("Tiler Job Payload:\n");
         pandecode_indent++;
         if (tiler_ptr.address)
@@ -1391,8 +1391,8 @@ GENX(pandecode_jc)(mali_ptr jc_gpu_va, unsigned gpu_id)
 			pandecode_compute_job(mem, jc_gpu_va, gpu_id);
 			break;
 
-		case MALI_JOB_TYPE_IDVS_HELPER:
-			pandecode_idvs_helper_job(mem, jc_gpu_va, gpu_id);
+		case MALI_JOB_TYPE_MALLOC_VERTEX:
+			pandecode_malloc_vertex_job(mem, jc_gpu_va, gpu_id);
 			break;
 #endif
 
diff --git a/src/panfrost/lib/genxml/v9.xml b/src/panfrost/lib/genxml/v9.xml
index 0b8500ec8ec..ff1ff6a6915 100644
--- a/src/panfrost/lib/genxml/v9.xml
+++ b/src/panfrost/lib/genxml/v9.xml
@@ -28,13 +28,10 @@
     <value name="Write value" value="2"/>
     <value name="Cache flush" value="3"/>
     <value name="Compute" value="4"/>
-    <!--- Traditional vertex jobs removed in Valhall, use compute job -->
-    <value name="Geometry" value="6"/>
     <value name="Tiler" value="7"/>
-    <value name="Fused" value="8"/>
     <value name="Fragment" value="9"/>
     <value name="Indexed vertex" value="10"/>
-    <value name="IDVS helper" value="11"/> 
+    <value name="Malloc vertex" value="11"/>
   </enum>
 
   <enum name="Shader stage">
@@ -1442,7 +1439,7 @@
     <field name="Address" size="64" start="0:0" type="address"/>
   </struct>
 
-  <aggregate name="IDVS Helper Job" size="384" align="128">
+  <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"/>



More information about the mesa-commit mailing list