summaryrefslogtreecommitdiff
path: root/src/i810_reg.h
diff options
context:
space:
mode:
authorKeith his master's voice Packard <keithp@bw.jf.intel.com>2006-05-27 00:17:25 -0700
committerKeith his master's voice Packard <keithp@bw.jf.intel.com>2006-05-27 00:17:25 -0700
commit462a860af89ed855fe2b718342fcaf9c169af3fb (patch)
tree6f0be513186c12b67ef53b72aa0c8469bcefa84c /src/i810_reg.h
parent9ec7cf22e3f03c13524bb2d15711699dfcc02984 (diff)
Rename BRW instructions, check video instruction generation. Doesnt lock up, but doesnt display anything either
Diffstat (limited to 'src/i810_reg.h')
-rw-r--r--src/i810_reg.h66
1 files changed, 54 insertions, 12 deletions
diff --git a/src/i810_reg.h b/src/i810_reg.h
index 0e13932a..19edad46 100644
--- a/src/i810_reg.h
+++ b/src/i810_reg.h
@@ -1612,11 +1612,50 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
/*
* New regs for broadwater -- we need to split this file up sensibly somehow.
*/
-#define STATE3D_PIPELINE_SELECT (CMD_3D | (0x01<<24) | (0x04<<16))
+#define BRW_3D(Pipeline,Opcode,Subopcode) (CMD_3D | \
+ ((Pipeline) << 27) | \
+ ((Opcode) << 24) | \
+ ((Subopcode) << 16))
+
+#define BRW_URB_FENCE BRW_3D(0, 0, 0)
+#define BRW_CS_URB_STATE BRW_3D(0, 0, 1)
+#define BRW_CONSTANT_BUFFER BRW_3D(0, 0, 2)
+#define BRW_STATE_PREFETCH BRW_3D(0, 0, 3)
+
+#define BRW_STATE_BASE_ADDRESS BRW_3D(0, 1, 1)
+#define BRW_STATE_SIP BRW_3D(0, 1, 2)
+#define BRW_PIPELINE_SELECT BRW_3D(0, 1, 4)
+
+#define BRW_MEDIA_STATE_POINTERS BRW_3D(2, 0, 0)
+#define BRW_MEDIA_OBJECT BRW_3D(2, 1, 0)
+
+#define BRW_3DSTATE_PIPELINED_POINTERS BRW_3D(3, 0, 0)
+#define BRW_3DSTATE_BINDING_TABLE_POINTERS BRW_3D(3, 0, 1)
+#define BRW_3DSTATE_VERTEX_BUFFERS BRW_3D(3, 0, 8)
+#define BRW_3DSTATE_VERTEX_ELEMENTS BRW_3D(3, 0, 9)
+#define BRW_3DSTATE_INDEX_BUFFER BRW_3D(3, 0, 0xa)
+#define BRW_3DSTATE_VF_STATISTICS BRW_3D(3, 0, 0xb)
+
+#define BRW_3DSTATE_DRAWING_RECTANGLE BRW_3D(3, 1, 0)
+#define BRW_3DSTATE_CONSTANT_COLOR BRW_3D(3, 1, 1)
+#define BRW_3DSTATE_SAMPLER_PALETTE_LOAD BRW_3D(3, 1, 2)
+#define BRW_3DSTATE_CHROMA_KEY BRW_3D(3, 1, 4)
+#define BRW_3DSTATE_DEPTH_BUFFER BRW_3D(3, 1, 5)
+#define BRW_3DSTATE_POLY_STIPPLE_OFFSET BRW_3D(3, 1, 6)
+#define BRW_3DSTATE_POLY_STIPPLE_PATTERN BRW_3D(3, 1, 7)
+#define BRW_3DSTATE_LINE_STIPPLE BRW_3D(3, 1, 8)
+#define BRW_3DSTATE_GLOBAL_DEPTH_OFFSET_CLAMP BRW_3D(3, 1, 9)
+/* These two are BLC and CTG only, not BW or CL */
+#define BRW_3DSTATE_AA_LINE_PARAMS BRW_3D(3, 1, 0xa)
+#define BRW_3DSTATE_GS_SVB_INDEX BRW_3D(3, 1, 0xb)
+
+#define BRW_PIPE_CONTROL BRW_3D(3, 2, 0)
+
+#define BRW_3DPRIMITIVE BRW_3D(3, 3, 0)
+
#define PIPELINE_SELECT_3D 0
#define PIPELINE_SELECT_MEDIA 1
-#define STATE3D_URB_FENCE (CMD_3D | (0x00<<24) | (0x00<<16))
#define UF0_CS_REALLOC (1 << 13)
#define UF0_VFE_REALLOC (1 << 12)
#define UF0_SF_REALLOC (1 << 11)
@@ -1630,20 +1669,22 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#define UF2_VFE_FENCE_SHIFT 10
#define UF2_SF_FENCE_SHIFT 0
-#define STATE3D_DRAWING_RECTANGLE_BRW (CMD_3D | (0x01<<24) | (0x00<<16))
-
-#define STATE3D_BASE_ADDRESS (CMD_3D | (0x01<<24) | (0x01<<16))
+/* for BRW_STATE_BASE_ADDRESS */
#define BASE_ADDRESS_MODIFY (1 << 0)
-#define STATE3D_PIPELINED_POINTERS (CMD_3D | (0x00<<24) | (0x00<<16))
+/* for BRW_3DSTATE_PIPELINED_POINTERS */
+#define BRW_GS_DISABLE 0
+#define BRW_GS_ENABLE 1
+#define BRW_CLIP_DISABLE 0
+#define BRW_CLIP_ENABLE 1
-#define STATE3D_VERTEX_BUFFERS (CMD_3D | (0x03<<27) | (0x00<<24) | (0x08<<16))
+/* VERTEX_BUFFER_STATE Structure */
#define VB0_BUFFER_INDEX_SHIFT 27
#define VB0_VERTEXDATA (0 << 26)
#define VB0_INSTANCEDATA (1 << 26)
#define VB0_BUFFER_PITCH_SHIFT 0
-#define STATE3D_VERTEX_ELEMENTS (CMD_3D | (0x00<<24) | (0x09<<16))
+/* VERTEX_ELEMENT_STATE Structure */
#define VE0_VERTEX_BUFFER_INDEX_SHIFT 27
#define VE0_VALID (1 << 26)
#define VE0_FORMAT_SHIFT 16
@@ -1654,11 +1695,12 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#define VE1_VFCOMPONENT_3_SHIFT 16
#define VE1_DESTINATION_ELEMENT_OFFSET_SHIFT 0
-#define STATE3D_BINDING_TABLE_POINTERS (CMD_3D | (0x03<<27) | (0x00<<24) | (0x01<<16))
-
-#define PRIMITIVE3D_BRW (CMD_3D | (0x03<<27) | (0x03<<24) | (0x08<<16))
+/* 3DPRIMITIVE bits */
+#define BRW_3DPRIMITIVE_VERTEX_SEQUENTIAL (0 << 15)
+#define BRW_3DPRIMITIVE_VERTEX_RANDOM (1 << 15)
/* Primitive types are in brw_defines.h */
-#define P3D0_TOPO_SHIFT 10
+#define BRW_3DPRIMITIVE_TOPOLOGY_SHIFT 10
+
/* End regs for broadwater */