Mesa (master): freedreno/registers: teach gen_header.py about a3xx_regid
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Tue Feb 18 21:08:49 UTC 2020
Module: Mesa
Branch: master
Commit: 4fc31e7d33606f249bf984378cd49f0dcba6e325
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=4fc31e7d33606f249bf984378cd49f0dcba6e325
Author: Rob Clark <robdclark at chromium.org>
Date: Sat Feb 15 15:06:44 2020 -0800
freedreno/registers: teach gen_header.py about a3xx_regid
This is a builtin type (treated as uint, but with special type-aware
decoding) in envytools/cffdump. Lets teach gen_header.py about it and
drop the enum hack in the xml so I don't have to keep deleting the enum
when I sync the xml back to the freedreno envytools tree.
Signed-off-by: Rob Clark <robdclark at chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3833>
---
src/freedreno/registers/adreno_common.xml | 4 ----
src/freedreno/registers/gen_header.py | 4 ++--
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/src/freedreno/registers/adreno_common.xml b/src/freedreno/registers/adreno_common.xml
index 7c078a091cd..9d0a240c243 100644
--- a/src/freedreno/registers/adreno_common.xml
+++ b/src/freedreno/registers/adreno_common.xml
@@ -280,10 +280,6 @@ xsi:schemaLocation="http://nouveau.freedesktop.org/ rules-ng.xsd">
Common between A3xx and A4xx:
-->
-<enum name="a3xx_regid">
- <value name="REGID_UNUSED" value="0xfc"/>
-</enum>
-
<enum name="a3xx_rop_code">
<value name="ROP_CLEAR" value="0"/>
<value name="ROP_NOR" value="1"/>
diff --git a/src/freedreno/registers/gen_header.py b/src/freedreno/registers/gen_header.py
index 887656fd5d8..7e3bcd4f7d8 100644
--- a/src/freedreno/registers/gen_header.py
+++ b/src/freedreno/registers/gen_header.py
@@ -39,7 +39,7 @@ class Field(object):
self.shr = shr
self.type = type
- builtin_types = [ None, "boolean", "uint", "hex", "int", "fixed", "ufixed", "float", "address", "waddress" ]
+ builtin_types = [ None, "a3xx_regid", "boolean", "uint", "hex", "int", "fixed", "ufixed", "float", "address", "waddress" ]
if low < 0 or low > 31:
raise parser.error("low attribute out of range: %d" % low)
@@ -61,7 +61,7 @@ class Field(object):
elif self.type == "boolean":
type = "bool"
val = var_name
- elif self.type == "uint" or self.type == "hex":
+ elif self.type == "uint" or self.type == "hex" or self.type == "a3xx_regid":
type = "uint32_t"
val = var_name
elif self.type == "int":
More information about the mesa-commit
mailing list