summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCorbin Simpson <MostAwesomeDude@gmail.com>2009-10-14 13:25:25 -0700
committerCorbin Simpson <MostAwesomeDude@gmail.com>2009-10-14 13:25:25 -0700
commitb48d455bae68432ecfd29eeefd9723c42352d22c (patch)
treed77409b56d962488f18a01291f8e33efc8c6cf3a
parent0e1485ae63ce30518f93d2f291498a21dff49041 (diff)
Validation!
-rw-r--r--r300reg.xml74
-rwxr-xr-xradeonreg.py11
2 files changed, 12 insertions, 73 deletions
diff --git a/r300reg.xml b/r300reg.xml
index 75beac2..62fe6da 100644
--- a/r300reg.xml
+++ b/r300reg.xml
@@ -1462,21 +1462,12 @@ texel)</doc>
<value name="C" value="3">
<doc>C_</doc>
</value>
-<value name="" value="16">
-<doc>(S/U)</doc>
-</value>
<value name="C2" value="4">
<doc>C2_</doc>
</value>
-<value name="" value="16">
-<doc>(S/U)</doc>
-</value>
<value name="C4" value="5">
<doc>C4_</doc>
</value>
-<value name="" value="16">
-<doc>(S/U)</doc>
-</value>
<value name="C_16_MPEG" value="6">
<doc>C_16_MPEG - (S)</doc>
</value>
@@ -1486,39 +1477,21 @@ texel)</doc>
<value name="C2" value="8">
<doc>C2_</doc>
</value>
-<value name="" value="4">
-<doc>(U)</doc>
-</value>
<value name="C_3_3" value="9">
<doc>C_3_3_</doc>
</value>
-<value name="" value="2">
-<doc>(U)</doc>
-</value>
<value name="C_6_5" value="10">
<doc>C_6_5_</doc>
</value>
-<value name="" value="6">
-<doc>(S/U)</doc>
-</value>
<value name="C_11_11" value="11">
<doc>C_11_11_</doc>
</value>
-<value name="" value="10">
-<doc>(S/U)</doc>
-</value>
<value name="C_10_11" value="12">
<doc>C_10_11_</doc>
</value>
-<value name="" value="11">
-<doc>(S/U)</doc>
-</value>
<value name="C_2_10_10" value="13">
<doc>C_2_10_10_</doc>
</value>
-<value name="" value="10">
-<doc>(S/U)</doc>
-</value>
<value name="UNUSED" value="15">
<doc>UNUSED - Render target is not used</doc>
</value>
@@ -1563,20 +1536,7 @@ texel)</doc>
<doc>WSRC_RAS - W comes from rasterizer</doc>
</value>
</enum>
-<enum name="ENUM184">
-<value name="" value="0">
-<doc>-W &lt; X &lt; W, -W &lt; Y &lt; W, -W &lt; Z &lt; W (OpenGL
-Definition)</doc>
-</value>
-<value name="" value="1">
-<doc>-W &lt; X &lt; W, -W &lt; Y &lt; W, 0 &lt; Z &lt; W (DirectX
-Definition)</doc>
-</value>
-</enum>
<enum name="ENUM185">
-<value name="" value="0">
-<doc>(2^n - 1) (i.e. 8-bit -&gt; 0.</doc>
-</value>
<value name="255" value="0">
<doc>255.0) 0 1 0.</doc>
</value>
@@ -1732,14 +1692,6 @@ only</doc>
<doc>Decrement: New value-- (wrap)</doc>
</value>
</enum>
-<enum name="ENUM207">
-<value name="" value="0">
-<doc>&gt;PIO,</doc>
-</value>
-<value name="" value="1">
-<doc>&gt;BM</doc>
-</value>
-</enum>
<enum name="ENUM209">
<value name="PHYSICAL" value="0">
<doc>Physical (Default),</doc>
@@ -2069,23 +2021,7 @@ value.</doc>
<doc>Use A channel as Q coordinate</doc>
</value>
</enum>
-<enum name="ENUM313">
-<value name="" value="12">
-<doc>[8:0];2</doc>
-</value>
-<value name="" value="56">
-<doc>[7:0])</doc>
-</value>
-</enum>
-<enum name="ENUM314">
-<value name="" value="12">
-<doc>[23:15];2</doc>
-</value>
-<value name="" value="56">
-<doc>[22:15])</doc>
-</value>
-</enum>
-<group name="rX00_regs" prepend="R300_">
+<group name="rX00_regs">
<reg32 access="rw" name="RB3D_AARESOLVE_OFFSET" offset="0x4E80">
<doc>Resolve buffer destination address. The cache must be empty
before changing this register if the cb is in resolve mode.
@@ -3121,7 +3057,7 @@ register writes.</doc>
<doc />
</reg32>
</group>
-<group name="r300_regs" prepend="R300_">
+<group name="r300_regs">
<reg32 access="rw" name="RB3D_AARESOLVE_CTL" offset="0x4E88">
<doc>Resolve Buffer Control. Unpipelined</doc>
<bitfield high="0" low="0" name="AARESOLVE_MODE" />
@@ -5831,7 +5767,7 @@ be written if the stencil test passes and the Z test fails for back
faced quads, if STENCIL_FRONT_BACK =1</doc>
</reg32>
</group>
-<group name="r500_regs" prepend="R500_">
+<group name="r500_regs">
<reg32 access="r" name="CP_CSQ2_STAT" offset="0x07FC">
<doc>(RO) Command Stream Indirect Queue 2 Status</doc>
<bitfield high="9" low="0" name="CSQ_WPTR_INDIRECT" />
@@ -6236,10 +6172,6 @@ must be empty before changing this register.</doc>
<doc>Specifies the gamma and degamma to be applied to the samples
before and after filtering, respectively.</doc>
<bitfield high="2" low="2" name="AARESOLVE_ALPHA">
-<value name="" value="1">
-<doc>&gt; the resolved alpha value is a filtered (average) result
-of of the samples. POSSIBLE VALUES:</doc>
-</value>
<value name="RESOLVED_ALPHA_VALUE_IS_TAKEN_FROM_SAMPLE_0"
value="0">
<doc>Resolved alpha value is taken from sample 0.</doc>
diff --git a/radeonreg.py b/radeonreg.py
index c7b6a7e..ae875fc 100755
--- a/radeonreg.py
+++ b/radeonreg.py
@@ -232,18 +232,23 @@ before attempting to read it.
for i, enum in enumerate(enums):
if enum.refs > 1:
- enum_tag = ElementTree.SubElement(database, "enum")
+ enum_tag = ElementTree.Element("enum")
enum_tag.attrib["name"] = "ENUM%d" % i
for entry in enum.entries:
+ if not entry.name:
+ continue
value = ElementTree.SubElement(enum_tag, "value")
value.attrib["name"] = entry.name
value.attrib["value"] = str(entry.val)
doc = ElementTree.SubElement(value, "doc")
doc.text = entry.desc
+ if enum_tag:
+ database.append(enum_tag)
for (group, name, prepend) in regs:
group_tag = ElementTree.SubElement(database, "group", name=name)
- group_tag.attrib["prepend"] = "%s_" % prepend
+ # "prepend" isn't (yet) recognized by the schema
+ #group_tag.attrib["prepend"] = "%s_" % prepend
for reg in group:
if reg.count > 1:
stripe = ElementTree.SubElement(group_tag, "stripe")
@@ -268,6 +273,8 @@ before attempting to read it.
if field.enum:
if enums[field.enum].refs == 1:
for entry in enums[field.enum].entries:
+ if not entry.name:
+ continue
value = ElementTree.SubElement(bitfield, "value")
value.attrib["name"] = entry.name
value.attrib["value"] = str(entry.val)