Mesa (main): panfrost: Set defaults for deprecated DCD fields

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Wed Feb 23 13:10:16 UTC 2022


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

Author: Alyssa Rosenzweig <alyssa at collabora.com>
Date:   Tue Feb  8 13:49:40 2022 -0500

panfrost: Set defaults for deprecated DCD fields

There are always set to true. Don't pollute the driver code with them, make
their existence a local detail to pre-Valhall XML and that's it.

Functional change: "four components per vertex" is now set on vertex job DCDs.
This should be a no-op.

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

---

 src/gallium/drivers/panfrost/pan_cmdstream.c | 5 +----
 src/panfrost/lib/genxml/v4.xml               | 4 ++--
 src/panfrost/lib/genxml/v5.xml               | 4 ++--
 src/panfrost/lib/genxml/v6.xml               | 4 ++--
 src/panfrost/lib/genxml/v7.xml               | 4 ++--
 src/panfrost/lib/pan_blitter.c               | 4 ----
 src/panfrost/vulkan/panvk_vX_cs.c            | 2 --
 src/panfrost/vulkan/panvk_vX_meta_clear.c    | 2 --
 src/panfrost/vulkan/panvk_vX_meta_copy.c     | 2 --
 9 files changed, 9 insertions(+), 22 deletions(-)

diff --git a/src/gallium/drivers/panfrost/pan_cmdstream.c b/src/gallium/drivers/panfrost/pan_cmdstream.c
index c09bb95ea78..e7e67830fdf 100644
--- a/src/gallium/drivers/panfrost/pan_cmdstream.c
+++ b/src/gallium/drivers/panfrost/pan_cmdstream.c
@@ -2754,10 +2754,6 @@ panfrost_draw_emit_tiler(struct panfrost_batch *batch,
 
         section = pan_section_ptr(job, TILER_JOB, DRAW);
         pan_pack(section, DRAW, cfg) {
-                cfg.four_components_per_vertex = true;
-                cfg.draw_descriptor_is_64b = true;
-                cfg.front_face_ccw = rast->front_ccw;
-
                 /*
                  * From the Gallium documentation,
                  * pipe_rasterizer_state::cull_face "indicates which faces of
@@ -2768,6 +2764,7 @@ panfrost_draw_emit_tiler(struct panfrost_batch *batch,
                  */
                 cfg.cull_front_face = polygon && (rast->cull_face & PIPE_FACE_FRONT);
                 cfg.cull_back_face = polygon && (rast->cull_face & PIPE_FACE_BACK);
+                cfg.front_face_ccw = rast->front_ccw;
                 cfg.position = pos;
                 cfg.state = batch->rsd[PIPE_SHADER_FRAGMENT];
                 cfg.attributes = batch->attribs[PIPE_SHADER_FRAGMENT];
diff --git a/src/panfrost/lib/genxml/v4.xml b/src/panfrost/lib/genxml/v4.xml
index cbdfd1b4cc6..f34472e8ee4 100644
--- a/src/panfrost/lib/genxml/v4.xml
+++ b/src/panfrost/lib/genxml/v4.xml
@@ -524,8 +524,8 @@
   </struct>
 
   <struct name="Draw" size="30" align="64">
-    <field name="Four Components Per Vertex" size="1" start="0:0" type="bool"/>
-    <field name="Draw Descriptor Is 64b" size="1" start="0:1" type="bool"/>
+    <field name="Four Components Per Vertex" size="1" start="0:0" type="bool" default="true"/>
+    <field name="Draw Descriptor Is 64b" size="1" start="0:1" type="bool" default="true"/>
     <field name="Texture Descriptor Is 64b" size="1" start="0:2" type="bool" default="true"/>
     <field name="Occlusion query" size="2" start="0:3" type="Occlusion Mode" default="Disabled"/>
     <field name="Front face CCW" size="1" start="0:5" type="bool"/>
diff --git a/src/panfrost/lib/genxml/v5.xml b/src/panfrost/lib/genxml/v5.xml
index fb2e9c5400c..394918eb0f5 100644
--- a/src/panfrost/lib/genxml/v5.xml
+++ b/src/panfrost/lib/genxml/v5.xml
@@ -545,8 +545,8 @@
   </struct>
 
   <struct name="Draw" size="30" align="64">
-    <field name="Four Components Per Vertex" size="1" start="0:0" type="bool"/>
-    <field name="Draw Descriptor Is 64b" size="1" start="0:1" type="bool"/>
+    <field name="Four Components Per Vertex" size="1" start="0:0" type="bool" default="true"/>
+    <field name="Draw Descriptor Is 64b" size="1" start="0:1" type="bool" default="true"/>
     <field name="Texture Descriptor Is 64b" size="1" start="0:2" type="bool" default="true"/>
     <field name="Occlusion query" size="2" start="0:3" type="Occlusion Mode" default="Disabled"/>
     <field name="Front face CCW" size="1" start="0:5" type="bool"/>
diff --git a/src/panfrost/lib/genxml/v6.xml b/src/panfrost/lib/genxml/v6.xml
index f5e7039f2bd..8bd9790955e 100644
--- a/src/panfrost/lib/genxml/v6.xml
+++ b/src/panfrost/lib/genxml/v6.xml
@@ -601,8 +601,8 @@
   </struct>
 
   <struct name="Draw" size="32" align="64">
-    <field name="Four Components Per Vertex" size="1" start="0:0" type="bool"/>
-    <field name="Draw Descriptor Is 64b" size="1" start="0:1" type="bool"/>
+    <field name="Four Components Per Vertex" size="1" start="0:0" type="bool" default="true"/>
+    <field name="Draw Descriptor Is 64b" size="1" start="0:1" type="bool" default="true"/>
     <field name="Occlusion query" size="2" start="0:3" type="Occlusion Mode" default="Disabled"/>
     <field name="Front face CCW" size="1" start="0:5" type="bool"/>
     <field name="Cull front face" size="1" start="0:6" type="bool"/>
diff --git a/src/panfrost/lib/genxml/v7.xml b/src/panfrost/lib/genxml/v7.xml
index 5722dbc7da2..c2e021c244f 100644
--- a/src/panfrost/lib/genxml/v7.xml
+++ b/src/panfrost/lib/genxml/v7.xml
@@ -644,8 +644,8 @@
   </struct>
 
   <struct name="Draw" size="32" align="64">
-    <field name="Four Components Per Vertex" size="1" start="0:0" type="bool"/>
-    <field name="Draw Descriptor Is 64b" size="1" start="0:1" type="bool"/>
+    <field name="Four Components Per Vertex" size="1" start="0:0" type="bool" default="true"/>
+    <field name="Draw Descriptor Is 64b" size="1" start="0:1" type="bool" default="true"/>
     <field name="Occlusion query" size="2" start="0:3" type="Occlusion Mode" default="Disabled"/>
     <field name="Front face CCW" size="1" start="0:5" type="bool"/>
     <field name="Cull front face" size="1" start="0:6" type="bool"/>
diff --git a/src/panfrost/lib/pan_blitter.c b/src/panfrost/lib/pan_blitter.c
index 4fcaa9368d3..e30c3f00124 100644
--- a/src/panfrost/lib/pan_blitter.c
+++ b/src/panfrost/lib/pan_blitter.c
@@ -955,8 +955,6 @@ pan_preload_emit_dcd(struct pan_pool *pool,
                      void *out, bool always_write)
 {
         pan_pack(out, DRAW, cfg) {
-                cfg.four_components_per_vertex = true;
-                cfg.draw_descriptor_is_64b = true;
                 cfg.thread_storage = tsd;
                 cfg.state = rsd;
 
@@ -999,8 +997,6 @@ pan_blit_emit_dcd(struct pan_pool *pool,
                   void *out)
 {
         pan_pack(out, DRAW, cfg) {
-                cfg.four_components_per_vertex = true;
-                cfg.draw_descriptor_is_64b = true;
                 cfg.thread_storage = tsd;
                 cfg.state = rsd;
 
diff --git a/src/panfrost/vulkan/panvk_vX_cs.c b/src/panfrost/vulkan/panvk_vX_cs.c
index 7431061d27d..46cc615b282 100644
--- a/src/panfrost/vulkan/panvk_vX_cs.c
+++ b/src/panfrost/vulkan/panvk_vX_cs.c
@@ -451,8 +451,6 @@ panvk_emit_tiler_dcd(const struct panvk_pipeline *pipeline,
                      void *dcd)
 {
    pan_pack(dcd, DRAW, cfg) {
-      cfg.four_components_per_vertex = true;
-      cfg.draw_descriptor_is_64b = true;
       cfg.front_face_ccw = pipeline->rast.front_ccw;
       cfg.cull_front_face = pipeline->rast.cull_front_face;
       cfg.cull_back_face = pipeline->rast.cull_back_face;
diff --git a/src/panfrost/vulkan/panvk_vX_meta_clear.c b/src/panfrost/vulkan/panvk_vX_meta_clear.c
index 95aedcde229..340d43c77a7 100644
--- a/src/panfrost/vulkan/panvk_vX_meta_clear.c
+++ b/src/panfrost/vulkan/panvk_vX_meta_clear.c
@@ -282,8 +282,6 @@ panvk_meta_clear_attachment_emit_dcd(struct pan_pool *pool,
                                      void *out)
 {
    pan_pack(out, DRAW, cfg) {
-      cfg.four_components_per_vertex = true;
-      cfg.draw_descriptor_is_64b = true;
       cfg.thread_storage = tsd;
       cfg.state = rsd;
       cfg.push_uniforms = push_constants;
diff --git a/src/panfrost/vulkan/panvk_vX_meta_copy.c b/src/panfrost/vulkan/panvk_vX_meta_copy.c
index 1a1fc7eaa5a..005077c356a 100644
--- a/src/panfrost/vulkan/panvk_vX_meta_copy.c
+++ b/src/panfrost/vulkan/panvk_vX_meta_copy.c
@@ -128,8 +128,6 @@ panvk_meta_copy_emit_dcd(struct pan_pool *pool,
                          void *out)
 {
    pan_pack(out, DRAW, cfg) {
-      cfg.four_components_per_vertex = true;
-      cfg.draw_descriptor_is_64b = true;
       cfg.thread_storage = tsd;
       cfg.state = rsd;
       cfg.uniform_buffers = ubos;



More information about the mesa-commit mailing list