1a8c21a54SThe etnaviv authors #ifndef CMDSTREAM_XML
2a8c21a54SThe etnaviv authors #define CMDSTREAM_XML
3a8c21a54SThe etnaviv authors 
4a8c21a54SThe etnaviv authors /* Autogenerated file, DO NOT EDIT manually!
5a8c21a54SThe etnaviv authors 
6a8c21a54SThe etnaviv authors This file was generated by the rules-ng-ng headergen tool in this git repository:
7a8c21a54SThe etnaviv authors http://0x04.net/cgit/index.cgi/rules-ng-ng
8a8c21a54SThe etnaviv authors git clone git://0x04.net/rules-ng-ng
9a8c21a54SThe etnaviv authors 
10a8c21a54SThe etnaviv authors The rules-ng-ng source files this header was generated from are:
1155780053SWladimir J. van der Laan - cmdstream.xml (  14094 bytes, from 2016-11-11 06:55:14)
1255780053SWladimir J. van der Laan - copyright.xml (   1597 bytes, from 2016-10-29 07:29:22)
1355780053SWladimir J. van der Laan - common.xml    (  23344 bytes, from 2016-11-10 15:14:07)
14a8c21a54SThe etnaviv authors 
1555780053SWladimir J. van der Laan Copyright (C) 2012-2016 by the following authors:
1655780053SWladimir J. van der Laan - Wladimir J. van der Laan <laanwj@gmail.com>
1755780053SWladimir J. van der Laan - Christian Gmeiner <christian.gmeiner@gmail.com>
1855780053SWladimir J. van der Laan - Lucas Stach <l.stach@pengutronix.de>
1955780053SWladimir J. van der Laan - Russell King <rmk@arm.linux.org.uk>
2055780053SWladimir J. van der Laan 
2155780053SWladimir J. van der Laan Permission is hereby granted, free of charge, to any person obtaining a
2255780053SWladimir J. van der Laan copy of this software and associated documentation files (the "Software"),
2355780053SWladimir J. van der Laan to deal in the Software without restriction, including without limitation
2455780053SWladimir J. van der Laan the rights to use, copy, modify, merge, publish, distribute, sub license,
2555780053SWladimir J. van der Laan and/or sell copies of the Software, and to permit persons to whom the
2655780053SWladimir J. van der Laan Software is furnished to do so, subject to the following conditions:
2755780053SWladimir J. van der Laan 
2855780053SWladimir J. van der Laan The above copyright notice and this permission notice (including the
2955780053SWladimir J. van der Laan next paragraph) shall be included in all copies or substantial portions
3055780053SWladimir J. van der Laan of the Software.
3155780053SWladimir J. van der Laan 
3255780053SWladimir J. van der Laan THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
3355780053SWladimir J. van der Laan IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
3455780053SWladimir J. van der Laan FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL
3555780053SWladimir J. van der Laan THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
3655780053SWladimir J. van der Laan LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
3755780053SWladimir J. van der Laan FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
3855780053SWladimir J. van der Laan DEALINGS IN THE SOFTWARE.
39a8c21a54SThe etnaviv authors */
40a8c21a54SThe etnaviv authors 
41a8c21a54SThe etnaviv authors 
42a8c21a54SThe etnaviv authors #define FE_OPCODE_LOAD_STATE					0x00000001
43a8c21a54SThe etnaviv authors #define FE_OPCODE_END						0x00000002
44a8c21a54SThe etnaviv authors #define FE_OPCODE_NOP						0x00000003
45a8c21a54SThe etnaviv authors #define FE_OPCODE_DRAW_2D					0x00000004
46a8c21a54SThe etnaviv authors #define FE_OPCODE_DRAW_PRIMITIVES				0x00000005
47a8c21a54SThe etnaviv authors #define FE_OPCODE_DRAW_INDEXED_PRIMITIVES			0x00000006
48a8c21a54SThe etnaviv authors #define FE_OPCODE_WAIT						0x00000007
49a8c21a54SThe etnaviv authors #define FE_OPCODE_LINK						0x00000008
50a8c21a54SThe etnaviv authors #define FE_OPCODE_STALL						0x00000009
51a8c21a54SThe etnaviv authors #define FE_OPCODE_CALL						0x0000000a
52a8c21a54SThe etnaviv authors #define FE_OPCODE_RETURN					0x0000000b
5355780053SWladimir J. van der Laan #define FE_OPCODE_DRAW_INSTANCED				0x0000000c
54a8c21a54SThe etnaviv authors #define FE_OPCODE_CHIP_SELECT					0x0000000d
55a8c21a54SThe etnaviv authors #define PRIMITIVE_TYPE_POINTS					0x00000001
56a8c21a54SThe etnaviv authors #define PRIMITIVE_TYPE_LINES					0x00000002
57a8c21a54SThe etnaviv authors #define PRIMITIVE_TYPE_LINE_STRIP				0x00000003
58a8c21a54SThe etnaviv authors #define PRIMITIVE_TYPE_TRIANGLES				0x00000004
59a8c21a54SThe etnaviv authors #define PRIMITIVE_TYPE_TRIANGLE_STRIP				0x00000005
60a8c21a54SThe etnaviv authors #define PRIMITIVE_TYPE_TRIANGLE_FAN				0x00000006
61a8c21a54SThe etnaviv authors #define PRIMITIVE_TYPE_LINE_LOOP				0x00000007
62a8c21a54SThe etnaviv authors #define PRIMITIVE_TYPE_QUADS					0x00000008
63a8c21a54SThe etnaviv authors #define VIV_FE_LOAD_STATE					0x00000000
64a8c21a54SThe etnaviv authors 
65a8c21a54SThe etnaviv authors #define VIV_FE_LOAD_STATE_HEADER				0x00000000
66a8c21a54SThe etnaviv authors #define VIV_FE_LOAD_STATE_HEADER_OP__MASK			0xf8000000
67a8c21a54SThe etnaviv authors #define VIV_FE_LOAD_STATE_HEADER_OP__SHIFT			27
68a8c21a54SThe etnaviv authors #define VIV_FE_LOAD_STATE_HEADER_OP_LOAD_STATE			0x08000000
69a8c21a54SThe etnaviv authors #define VIV_FE_LOAD_STATE_HEADER_FIXP				0x04000000
70a8c21a54SThe etnaviv authors #define VIV_FE_LOAD_STATE_HEADER_COUNT__MASK			0x03ff0000
71a8c21a54SThe etnaviv authors #define VIV_FE_LOAD_STATE_HEADER_COUNT__SHIFT			16
72a8c21a54SThe etnaviv authors #define VIV_FE_LOAD_STATE_HEADER_COUNT(x)			(((x) << VIV_FE_LOAD_STATE_HEADER_COUNT__SHIFT) & VIV_FE_LOAD_STATE_HEADER_COUNT__MASK)
73a8c21a54SThe etnaviv authors #define VIV_FE_LOAD_STATE_HEADER_OFFSET__MASK			0x0000ffff
74a8c21a54SThe etnaviv authors #define VIV_FE_LOAD_STATE_HEADER_OFFSET__SHIFT			0
75a8c21a54SThe etnaviv authors #define VIV_FE_LOAD_STATE_HEADER_OFFSET(x)			(((x) << VIV_FE_LOAD_STATE_HEADER_OFFSET__SHIFT) & VIV_FE_LOAD_STATE_HEADER_OFFSET__MASK)
76a8c21a54SThe etnaviv authors #define VIV_FE_LOAD_STATE_HEADER_OFFSET__SHR			2
77a8c21a54SThe etnaviv authors 
78a8c21a54SThe etnaviv authors #define VIV_FE_END						0x00000000
79a8c21a54SThe etnaviv authors 
80a8c21a54SThe etnaviv authors #define VIV_FE_END_HEADER					0x00000000
81a8c21a54SThe etnaviv authors #define VIV_FE_END_HEADER_EVENT_ID__MASK			0x0000001f
82a8c21a54SThe etnaviv authors #define VIV_FE_END_HEADER_EVENT_ID__SHIFT			0
83a8c21a54SThe etnaviv authors #define VIV_FE_END_HEADER_EVENT_ID(x)				(((x) << VIV_FE_END_HEADER_EVENT_ID__SHIFT) & VIV_FE_END_HEADER_EVENT_ID__MASK)
84a8c21a54SThe etnaviv authors #define VIV_FE_END_HEADER_EVENT_ENABLE				0x00000100
85a8c21a54SThe etnaviv authors #define VIV_FE_END_HEADER_OP__MASK				0xf8000000
86a8c21a54SThe etnaviv authors #define VIV_FE_END_HEADER_OP__SHIFT				27
87a8c21a54SThe etnaviv authors #define VIV_FE_END_HEADER_OP_END				0x10000000
88a8c21a54SThe etnaviv authors 
89a8c21a54SThe etnaviv authors #define VIV_FE_NOP						0x00000000
90a8c21a54SThe etnaviv authors 
91a8c21a54SThe etnaviv authors #define VIV_FE_NOP_HEADER					0x00000000
92a8c21a54SThe etnaviv authors #define VIV_FE_NOP_HEADER_OP__MASK				0xf8000000
93a8c21a54SThe etnaviv authors #define VIV_FE_NOP_HEADER_OP__SHIFT				27
94a8c21a54SThe etnaviv authors #define VIV_FE_NOP_HEADER_OP_NOP				0x18000000
95a8c21a54SThe etnaviv authors 
96a8c21a54SThe etnaviv authors #define VIV_FE_DRAW_2D						0x00000000
97a8c21a54SThe etnaviv authors 
98a8c21a54SThe etnaviv authors #define VIV_FE_DRAW_2D_HEADER					0x00000000
99a8c21a54SThe etnaviv authors #define VIV_FE_DRAW_2D_HEADER_COUNT__MASK			0x0000ff00
100a8c21a54SThe etnaviv authors #define VIV_FE_DRAW_2D_HEADER_COUNT__SHIFT			8
101a8c21a54SThe etnaviv authors #define VIV_FE_DRAW_2D_HEADER_COUNT(x)				(((x) << VIV_FE_DRAW_2D_HEADER_COUNT__SHIFT) & VIV_FE_DRAW_2D_HEADER_COUNT__MASK)
102a8c21a54SThe etnaviv authors #define VIV_FE_DRAW_2D_HEADER_DATA_COUNT__MASK			0x07ff0000
103a8c21a54SThe etnaviv authors #define VIV_FE_DRAW_2D_HEADER_DATA_COUNT__SHIFT			16
104a8c21a54SThe etnaviv authors #define VIV_FE_DRAW_2D_HEADER_DATA_COUNT(x)			(((x) << VIV_FE_DRAW_2D_HEADER_DATA_COUNT__SHIFT) & VIV_FE_DRAW_2D_HEADER_DATA_COUNT__MASK)
105a8c21a54SThe etnaviv authors #define VIV_FE_DRAW_2D_HEADER_OP__MASK				0xf8000000
106a8c21a54SThe etnaviv authors #define VIV_FE_DRAW_2D_HEADER_OP__SHIFT				27
107a8c21a54SThe etnaviv authors #define VIV_FE_DRAW_2D_HEADER_OP_DRAW_2D			0x20000000
108a8c21a54SThe etnaviv authors 
109a8c21a54SThe etnaviv authors #define VIV_FE_DRAW_2D_TOP_LEFT					0x00000008
110a8c21a54SThe etnaviv authors #define VIV_FE_DRAW_2D_TOP_LEFT_X__MASK				0x0000ffff
111a8c21a54SThe etnaviv authors #define VIV_FE_DRAW_2D_TOP_LEFT_X__SHIFT			0
112a8c21a54SThe etnaviv authors #define VIV_FE_DRAW_2D_TOP_LEFT_X(x)				(((x) << VIV_FE_DRAW_2D_TOP_LEFT_X__SHIFT) & VIV_FE_DRAW_2D_TOP_LEFT_X__MASK)
113a8c21a54SThe etnaviv authors #define VIV_FE_DRAW_2D_TOP_LEFT_Y__MASK				0xffff0000
114a8c21a54SThe etnaviv authors #define VIV_FE_DRAW_2D_TOP_LEFT_Y__SHIFT			16
115a8c21a54SThe etnaviv authors #define VIV_FE_DRAW_2D_TOP_LEFT_Y(x)				(((x) << VIV_FE_DRAW_2D_TOP_LEFT_Y__SHIFT) & VIV_FE_DRAW_2D_TOP_LEFT_Y__MASK)
116a8c21a54SThe etnaviv authors 
117a8c21a54SThe etnaviv authors #define VIV_FE_DRAW_2D_BOTTOM_RIGHT				0x0000000c
118a8c21a54SThe etnaviv authors #define VIV_FE_DRAW_2D_BOTTOM_RIGHT_X__MASK			0x0000ffff
119a8c21a54SThe etnaviv authors #define VIV_FE_DRAW_2D_BOTTOM_RIGHT_X__SHIFT			0
120a8c21a54SThe etnaviv authors #define VIV_FE_DRAW_2D_BOTTOM_RIGHT_X(x)			(((x) << VIV_FE_DRAW_2D_BOTTOM_RIGHT_X__SHIFT) & VIV_FE_DRAW_2D_BOTTOM_RIGHT_X__MASK)
121a8c21a54SThe etnaviv authors #define VIV_FE_DRAW_2D_BOTTOM_RIGHT_Y__MASK			0xffff0000
122a8c21a54SThe etnaviv authors #define VIV_FE_DRAW_2D_BOTTOM_RIGHT_Y__SHIFT			16
123a8c21a54SThe etnaviv authors #define VIV_FE_DRAW_2D_BOTTOM_RIGHT_Y(x)			(((x) << VIV_FE_DRAW_2D_BOTTOM_RIGHT_Y__SHIFT) & VIV_FE_DRAW_2D_BOTTOM_RIGHT_Y__MASK)
124a8c21a54SThe etnaviv authors 
125a8c21a54SThe etnaviv authors #define VIV_FE_DRAW_PRIMITIVES					0x00000000
126a8c21a54SThe etnaviv authors 
127a8c21a54SThe etnaviv authors #define VIV_FE_DRAW_PRIMITIVES_HEADER				0x00000000
128a8c21a54SThe etnaviv authors #define VIV_FE_DRAW_PRIMITIVES_HEADER_OP__MASK			0xf8000000
129a8c21a54SThe etnaviv authors #define VIV_FE_DRAW_PRIMITIVES_HEADER_OP__SHIFT			27
130a8c21a54SThe etnaviv authors #define VIV_FE_DRAW_PRIMITIVES_HEADER_OP_DRAW_PRIMITIVES	0x28000000
131a8c21a54SThe etnaviv authors 
132a8c21a54SThe etnaviv authors #define VIV_FE_DRAW_PRIMITIVES_COMMAND				0x00000004
133a8c21a54SThe etnaviv authors #define VIV_FE_DRAW_PRIMITIVES_COMMAND_TYPE__MASK		0x000000ff
134a8c21a54SThe etnaviv authors #define VIV_FE_DRAW_PRIMITIVES_COMMAND_TYPE__SHIFT		0
135a8c21a54SThe etnaviv authors #define VIV_FE_DRAW_PRIMITIVES_COMMAND_TYPE(x)			(((x) << VIV_FE_DRAW_PRIMITIVES_COMMAND_TYPE__SHIFT) & VIV_FE_DRAW_PRIMITIVES_COMMAND_TYPE__MASK)
136a8c21a54SThe etnaviv authors 
137a8c21a54SThe etnaviv authors #define VIV_FE_DRAW_PRIMITIVES_START				0x00000008
138a8c21a54SThe etnaviv authors 
139a8c21a54SThe etnaviv authors #define VIV_FE_DRAW_PRIMITIVES_COUNT				0x0000000c
140a8c21a54SThe etnaviv authors 
141a8c21a54SThe etnaviv authors #define VIV_FE_DRAW_INDEXED_PRIMITIVES				0x00000000
142a8c21a54SThe etnaviv authors 
143a8c21a54SThe etnaviv authors #define VIV_FE_DRAW_INDEXED_PRIMITIVES_HEADER			0x00000000
144a8c21a54SThe etnaviv authors #define VIV_FE_DRAW_INDEXED_PRIMITIVES_HEADER_OP__MASK		0xf8000000
145a8c21a54SThe etnaviv authors #define VIV_FE_DRAW_INDEXED_PRIMITIVES_HEADER_OP__SHIFT		27
146a8c21a54SThe etnaviv authors #define VIV_FE_DRAW_INDEXED_PRIMITIVES_HEADER_OP_DRAW_INDEXED_PRIMITIVES	0x30000000
147a8c21a54SThe etnaviv authors 
148a8c21a54SThe etnaviv authors #define VIV_FE_DRAW_INDEXED_PRIMITIVES_COMMAND			0x00000004
149a8c21a54SThe etnaviv authors #define VIV_FE_DRAW_INDEXED_PRIMITIVES_COMMAND_TYPE__MASK	0x000000ff
150a8c21a54SThe etnaviv authors #define VIV_FE_DRAW_INDEXED_PRIMITIVES_COMMAND_TYPE__SHIFT	0
151a8c21a54SThe etnaviv authors #define VIV_FE_DRAW_INDEXED_PRIMITIVES_COMMAND_TYPE(x)		(((x) << VIV_FE_DRAW_INDEXED_PRIMITIVES_COMMAND_TYPE__SHIFT) & VIV_FE_DRAW_INDEXED_PRIMITIVES_COMMAND_TYPE__MASK)
152a8c21a54SThe etnaviv authors 
153a8c21a54SThe etnaviv authors #define VIV_FE_DRAW_INDEXED_PRIMITIVES_START			0x00000008
154a8c21a54SThe etnaviv authors 
155a8c21a54SThe etnaviv authors #define VIV_FE_DRAW_INDEXED_PRIMITIVES_COUNT			0x0000000c
156a8c21a54SThe etnaviv authors 
157a8c21a54SThe etnaviv authors #define VIV_FE_DRAW_INDEXED_PRIMITIVES_OFFSET			0x00000010
158a8c21a54SThe etnaviv authors 
159a8c21a54SThe etnaviv authors #define VIV_FE_WAIT						0x00000000
160a8c21a54SThe etnaviv authors 
161a8c21a54SThe etnaviv authors #define VIV_FE_WAIT_HEADER					0x00000000
162a8c21a54SThe etnaviv authors #define VIV_FE_WAIT_HEADER_DELAY__MASK				0x0000ffff
163a8c21a54SThe etnaviv authors #define VIV_FE_WAIT_HEADER_DELAY__SHIFT				0
164a8c21a54SThe etnaviv authors #define VIV_FE_WAIT_HEADER_DELAY(x)				(((x) << VIV_FE_WAIT_HEADER_DELAY__SHIFT) & VIV_FE_WAIT_HEADER_DELAY__MASK)
165a8c21a54SThe etnaviv authors #define VIV_FE_WAIT_HEADER_OP__MASK				0xf8000000
166a8c21a54SThe etnaviv authors #define VIV_FE_WAIT_HEADER_OP__SHIFT				27
167a8c21a54SThe etnaviv authors #define VIV_FE_WAIT_HEADER_OP_WAIT				0x38000000
168a8c21a54SThe etnaviv authors 
169a8c21a54SThe etnaviv authors #define VIV_FE_LINK						0x00000000
170a8c21a54SThe etnaviv authors 
171a8c21a54SThe etnaviv authors #define VIV_FE_LINK_HEADER					0x00000000
172a8c21a54SThe etnaviv authors #define VIV_FE_LINK_HEADER_PREFETCH__MASK			0x0000ffff
173a8c21a54SThe etnaviv authors #define VIV_FE_LINK_HEADER_PREFETCH__SHIFT			0
174a8c21a54SThe etnaviv authors #define VIV_FE_LINK_HEADER_PREFETCH(x)				(((x) << VIV_FE_LINK_HEADER_PREFETCH__SHIFT) & VIV_FE_LINK_HEADER_PREFETCH__MASK)
175a8c21a54SThe etnaviv authors #define VIV_FE_LINK_HEADER_OP__MASK				0xf8000000
176a8c21a54SThe etnaviv authors #define VIV_FE_LINK_HEADER_OP__SHIFT				27
177a8c21a54SThe etnaviv authors #define VIV_FE_LINK_HEADER_OP_LINK				0x40000000
178a8c21a54SThe etnaviv authors 
179a8c21a54SThe etnaviv authors #define VIV_FE_LINK_ADDRESS					0x00000004
180a8c21a54SThe etnaviv authors 
181a8c21a54SThe etnaviv authors #define VIV_FE_STALL						0x00000000
182a8c21a54SThe etnaviv authors 
183a8c21a54SThe etnaviv authors #define VIV_FE_STALL_HEADER					0x00000000
184a8c21a54SThe etnaviv authors #define VIV_FE_STALL_HEADER_OP__MASK				0xf8000000
185a8c21a54SThe etnaviv authors #define VIV_FE_STALL_HEADER_OP__SHIFT				27
186a8c21a54SThe etnaviv authors #define VIV_FE_STALL_HEADER_OP_STALL				0x48000000
187a8c21a54SThe etnaviv authors 
188a8c21a54SThe etnaviv authors #define VIV_FE_STALL_TOKEN					0x00000004
189a8c21a54SThe etnaviv authors #define VIV_FE_STALL_TOKEN_FROM__MASK				0x0000001f
190a8c21a54SThe etnaviv authors #define VIV_FE_STALL_TOKEN_FROM__SHIFT				0
191a8c21a54SThe etnaviv authors #define VIV_FE_STALL_TOKEN_FROM(x)				(((x) << VIV_FE_STALL_TOKEN_FROM__SHIFT) & VIV_FE_STALL_TOKEN_FROM__MASK)
192a8c21a54SThe etnaviv authors #define VIV_FE_STALL_TOKEN_TO__MASK				0x00001f00
193a8c21a54SThe etnaviv authors #define VIV_FE_STALL_TOKEN_TO__SHIFT				8
194a8c21a54SThe etnaviv authors #define VIV_FE_STALL_TOKEN_TO(x)				(((x) << VIV_FE_STALL_TOKEN_TO__SHIFT) & VIV_FE_STALL_TOKEN_TO__MASK)
195a8c21a54SThe etnaviv authors 
196a8c21a54SThe etnaviv authors #define VIV_FE_CALL						0x00000000
197a8c21a54SThe etnaviv authors 
198a8c21a54SThe etnaviv authors #define VIV_FE_CALL_HEADER					0x00000000
199a8c21a54SThe etnaviv authors #define VIV_FE_CALL_HEADER_PREFETCH__MASK			0x0000ffff
200a8c21a54SThe etnaviv authors #define VIV_FE_CALL_HEADER_PREFETCH__SHIFT			0
201a8c21a54SThe etnaviv authors #define VIV_FE_CALL_HEADER_PREFETCH(x)				(((x) << VIV_FE_CALL_HEADER_PREFETCH__SHIFT) & VIV_FE_CALL_HEADER_PREFETCH__MASK)
202a8c21a54SThe etnaviv authors #define VIV_FE_CALL_HEADER_OP__MASK				0xf8000000
203a8c21a54SThe etnaviv authors #define VIV_FE_CALL_HEADER_OP__SHIFT				27
204a8c21a54SThe etnaviv authors #define VIV_FE_CALL_HEADER_OP_CALL				0x50000000
205a8c21a54SThe etnaviv authors 
206a8c21a54SThe etnaviv authors #define VIV_FE_CALL_ADDRESS					0x00000004
207a8c21a54SThe etnaviv authors 
208a8c21a54SThe etnaviv authors #define VIV_FE_CALL_RETURN_PREFETCH				0x00000008
209a8c21a54SThe etnaviv authors 
210a8c21a54SThe etnaviv authors #define VIV_FE_CALL_RETURN_ADDRESS				0x0000000c
211a8c21a54SThe etnaviv authors 
212a8c21a54SThe etnaviv authors #define VIV_FE_RETURN						0x00000000
213a8c21a54SThe etnaviv authors 
214a8c21a54SThe etnaviv authors #define VIV_FE_RETURN_HEADER					0x00000000
215a8c21a54SThe etnaviv authors #define VIV_FE_RETURN_HEADER_OP__MASK				0xf8000000
216a8c21a54SThe etnaviv authors #define VIV_FE_RETURN_HEADER_OP__SHIFT				27
217a8c21a54SThe etnaviv authors #define VIV_FE_RETURN_HEADER_OP_RETURN				0x58000000
218a8c21a54SThe etnaviv authors 
219a8c21a54SThe etnaviv authors #define VIV_FE_CHIP_SELECT					0x00000000
220a8c21a54SThe etnaviv authors 
221a8c21a54SThe etnaviv authors #define VIV_FE_CHIP_SELECT_HEADER				0x00000000
222a8c21a54SThe etnaviv authors #define VIV_FE_CHIP_SELECT_HEADER_OP__MASK			0xf8000000
223a8c21a54SThe etnaviv authors #define VIV_FE_CHIP_SELECT_HEADER_OP__SHIFT			27
224a8c21a54SThe etnaviv authors #define VIV_FE_CHIP_SELECT_HEADER_OP_CHIP_SELECT		0x68000000
225a8c21a54SThe etnaviv authors #define VIV_FE_CHIP_SELECT_HEADER_ENABLE_CHIP15			0x00008000
226a8c21a54SThe etnaviv authors #define VIV_FE_CHIP_SELECT_HEADER_ENABLE_CHIP14			0x00004000
227a8c21a54SThe etnaviv authors #define VIV_FE_CHIP_SELECT_HEADER_ENABLE_CHIP13			0x00002000
228a8c21a54SThe etnaviv authors #define VIV_FE_CHIP_SELECT_HEADER_ENABLE_CHIP12			0x00001000
229a8c21a54SThe etnaviv authors #define VIV_FE_CHIP_SELECT_HEADER_ENABLE_CHIP11			0x00000800
230a8c21a54SThe etnaviv authors #define VIV_FE_CHIP_SELECT_HEADER_ENABLE_CHIP10			0x00000400
231a8c21a54SThe etnaviv authors #define VIV_FE_CHIP_SELECT_HEADER_ENABLE_CHIP9			0x00000200
232a8c21a54SThe etnaviv authors #define VIV_FE_CHIP_SELECT_HEADER_ENABLE_CHIP8			0x00000100
233a8c21a54SThe etnaviv authors #define VIV_FE_CHIP_SELECT_HEADER_ENABLE_CHIP7			0x00000080
234a8c21a54SThe etnaviv authors #define VIV_FE_CHIP_SELECT_HEADER_ENABLE_CHIP6			0x00000040
235a8c21a54SThe etnaviv authors #define VIV_FE_CHIP_SELECT_HEADER_ENABLE_CHIP5			0x00000020
236a8c21a54SThe etnaviv authors #define VIV_FE_CHIP_SELECT_HEADER_ENABLE_CHIP4			0x00000010
237a8c21a54SThe etnaviv authors #define VIV_FE_CHIP_SELECT_HEADER_ENABLE_CHIP3			0x00000008
238a8c21a54SThe etnaviv authors #define VIV_FE_CHIP_SELECT_HEADER_ENABLE_CHIP2			0x00000004
239a8c21a54SThe etnaviv authors #define VIV_FE_CHIP_SELECT_HEADER_ENABLE_CHIP1			0x00000002
240a8c21a54SThe etnaviv authors #define VIV_FE_CHIP_SELECT_HEADER_ENABLE_CHIP0			0x00000001
241a8c21a54SThe etnaviv authors 
24255780053SWladimir J. van der Laan #define VIV_FE_DRAW_INSTANCED					0x00000000
24355780053SWladimir J. van der Laan 
24455780053SWladimir J. van der Laan #define VIV_FE_DRAW_INSTANCED_HEADER				0x00000000
24555780053SWladimir J. van der Laan #define VIV_FE_DRAW_INSTANCED_HEADER_OP__MASK			0xf8000000
24655780053SWladimir J. van der Laan #define VIV_FE_DRAW_INSTANCED_HEADER_OP__SHIFT			27
24755780053SWladimir J. van der Laan #define VIV_FE_DRAW_INSTANCED_HEADER_OP_DRAW_INSTANCED		0x60000000
24855780053SWladimir J. van der Laan #define VIV_FE_DRAW_INSTANCED_HEADER_INDEXED			0x00100000
24955780053SWladimir J. van der Laan #define VIV_FE_DRAW_INSTANCED_HEADER_TYPE__MASK			0x000f0000
25055780053SWladimir J. van der Laan #define VIV_FE_DRAW_INSTANCED_HEADER_TYPE__SHIFT		16
25155780053SWladimir J. van der Laan #define VIV_FE_DRAW_INSTANCED_HEADER_TYPE(x)			(((x) << VIV_FE_DRAW_INSTANCED_HEADER_TYPE__SHIFT) & VIV_FE_DRAW_INSTANCED_HEADER_TYPE__MASK)
25255780053SWladimir J. van der Laan #define VIV_FE_DRAW_INSTANCED_HEADER_INSTANCE_COUNT_LO__MASK	0x0000ffff
25355780053SWladimir J. van der Laan #define VIV_FE_DRAW_INSTANCED_HEADER_INSTANCE_COUNT_LO__SHIFT	0
25455780053SWladimir J. van der Laan #define VIV_FE_DRAW_INSTANCED_HEADER_INSTANCE_COUNT_LO(x)	(((x) << VIV_FE_DRAW_INSTANCED_HEADER_INSTANCE_COUNT_LO__SHIFT) & VIV_FE_DRAW_INSTANCED_HEADER_INSTANCE_COUNT_LO__MASK)
25555780053SWladimir J. van der Laan 
25655780053SWladimir J. van der Laan #define VIV_FE_DRAW_INSTANCED_COUNT				0x00000004
25755780053SWladimir J. van der Laan #define VIV_FE_DRAW_INSTANCED_COUNT_INSTANCE_COUNT_HI__MASK	0xff000000
25855780053SWladimir J. van der Laan #define VIV_FE_DRAW_INSTANCED_COUNT_INSTANCE_COUNT_HI__SHIFT	24
25955780053SWladimir J. van der Laan #define VIV_FE_DRAW_INSTANCED_COUNT_INSTANCE_COUNT_HI(x)	(((x) << VIV_FE_DRAW_INSTANCED_COUNT_INSTANCE_COUNT_HI__SHIFT) & VIV_FE_DRAW_INSTANCED_COUNT_INSTANCE_COUNT_HI__MASK)
26055780053SWladimir J. van der Laan #define VIV_FE_DRAW_INSTANCED_COUNT_VERTEX_COUNT__MASK		0x00ffffff
26155780053SWladimir J. van der Laan #define VIV_FE_DRAW_INSTANCED_COUNT_VERTEX_COUNT__SHIFT		0
26255780053SWladimir J. van der Laan #define VIV_FE_DRAW_INSTANCED_COUNT_VERTEX_COUNT(x)		(((x) << VIV_FE_DRAW_INSTANCED_COUNT_VERTEX_COUNT__SHIFT) & VIV_FE_DRAW_INSTANCED_COUNT_VERTEX_COUNT__MASK)
26355780053SWladimir J. van der Laan 
26455780053SWladimir J. van der Laan #define VIV_FE_DRAW_INSTANCED_START				0x00000008
26555780053SWladimir J. van der Laan #define VIV_FE_DRAW_INSTANCED_START_INDEX__MASK			0xffffffff
26655780053SWladimir J. van der Laan #define VIV_FE_DRAW_INSTANCED_START_INDEX__SHIFT		0
26755780053SWladimir J. van der Laan #define VIV_FE_DRAW_INSTANCED_START_INDEX(x)			(((x) << VIV_FE_DRAW_INSTANCED_START_INDEX__SHIFT) & VIV_FE_DRAW_INSTANCED_START_INDEX__MASK)
26855780053SWladimir J. van der Laan 
269a8c21a54SThe etnaviv authors 
270a8c21a54SThe etnaviv authors #endif /* CMDSTREAM_XML */
271