[Nouveau] [PATCH 1/5] renouveau: completely describe POINT_SPRITE on nv30 and nv40

Luca Barbieri luca at luca-barbieri.com
Fri Feb 26 05:38:20 PST 2010


This matches the behavior of the Gallium drivers.

On nv20, only texture unit 3 is accelerated (according to the
NV_point_sprite spec, and that is probably why only bitfield 11 was
defined on nv30).
---
 renouveau.xml |   26 ++++++++++++++++++++++----
 1 files changed, 22 insertions(+), 4 deletions(-)

diff --git a/renouveau.xml b/renouveau.xml
index 81e996b..2bfa1d0 100644
--- a/renouveau.xml
+++ b/renouveau.xml
@@ -3884,9 +3884,16 @@
     <reg32 offset="0x1ee0" name="POINT_SIZE" type="float"/>
     <reg32 offset="0x1ee4" name="POINT_PARAMETERS_ENABLE" type="boolean"/>
     <reg32 offset="0x1ee8" name="POINT_SPRITE" type="bitfield">
-      <bitfield name="ENABLE" high="0" low="0" type="boolean"/>
-      <bitfield name="R_MODE" high="2" low="1" type="enum" enum_name="nv20_point_sprite_r_mode"/>
-      <bitfield name="COORD_REPLACE" high="11" low="11" type="boolean"/>
+      <bitfield high="0" low="0" name="ENABLE" type="boolean" />
+      <bitfield enum_name="nv20_point_sprite_r_mode" high="2" low="1" name="R_MODE" type="enum" />
+      <bitfield high="8" low="8" name="COORD_REPLACE_0" type="boolean" />
+      <bitfield high="9" low="9" name="COORD_REPLACE_1" type="boolean" />
+      <bitfield high="10" low="10" name="COORD_REPLACE_2" type="boolean" />
+      <bitfield high="11" low="11" name="COORD_REPLACE_3" type="boolean" />
+      <bitfield high="12" low="12" name="COORD_REPLACE_4" type="boolean" />
+      <bitfield high="13" low="13" name="COORD_REPLACE_5" type="boolean" />
+      <bitfield high="14" low="14" name="COORD_REPLACE_6" type="boolean" />
+      <bitfield high="15" low="15" name="COORD_REPLACE_7" type="boolean" />
     </reg32>
     <reg32 offset="0x1efc" name="VP_UPLOAD_CONST_ID" type="hexa"/>
     <reg32 offset="0x1f00" name="VP_UPLOAD_CONST_X" size="4" stride="16" type="float"/>
@@ -4270,7 +4277,18 @@
     <reg32 offset="0x1ea8"/>
     <reg32 offset="0x1eac"/>
     <reg32 offset="0x1ee0" name="POINT_SIZE" type="float"/>
-    <reg32 offset="0x1ee8" name="POINT_SPRITE"/>
+    <reg32 offset="0x1ee8" name="POINT_SPRITE" type="bitfield">
+      <bitfield high="0" low="0" name="ENABLE" type="boolean" />
+      <bitfield enum_name="nv20_point_sprite_r_mode" high="2" low="1" name="R_MODE" type="enum" />
+      <bitfield high="8" low="8" name="COORD_REPLACE_0" type="boolean" />
+      <bitfield high="9" low="9" name="COORD_REPLACE_1" type="boolean" />
+      <bitfield high="10" low="10" name="COORD_REPLACE_2" type="boolean" />
+      <bitfield high="11" low="11" name="COORD_REPLACE_3" type="boolean" />
+      <bitfield high="12" low="12" name="COORD_REPLACE_4" type="boolean" />
+      <bitfield high="13" low="13" name="COORD_REPLACE_5" type="boolean" />
+      <bitfield high="14" low="14" name="COORD_REPLACE_6" type="boolean" />
+      <bitfield high="15" low="15" name="COORD_REPLACE_7" type="boolean" />
+    </reg32>
     <reg32 offset="0x1ef8"/>
     <reg32 offset="0x1efc" name="VP_UPLOAD_CONST_ID" type="hexa"/>
     <reg32 offset="0x1f00" name="VP_UPLOAD_CONST_X" size="4" stride="16" type="float"/>
-- 
1.6.6.1.476.g01ddb



More information about the Nouveau mailing list