1bf215546Sopenharmony_ci#ifndef NV50_COMPUTE_XML
2bf215546Sopenharmony_ci#define NV50_COMPUTE_XML
3bf215546Sopenharmony_ci
4bf215546Sopenharmony_ci/* Autogenerated file, DO NOT EDIT manually!
5bf215546Sopenharmony_ci
6bf215546Sopenharmony_ciThis file was generated by the rules-ng-ng headergen tool in this git repository:
7bf215546Sopenharmony_cihttp://github.com/envytools/envytools/
8bf215546Sopenharmony_cigit clone https://github.com/envytools/envytools.git
9bf215546Sopenharmony_ci
10bf215546Sopenharmony_ciThe rules-ng-ng source files this header was generated from are:
11bf215546Sopenharmony_ci- rnndb/graph/g80_compute.xml (  14027 bytes, from 2015-02-14 02:01:36)
12bf215546Sopenharmony_ci- rnndb/copyright.xml         (   6456 bytes, from 2015-02-14 02:01:36)
13bf215546Sopenharmony_ci- rnndb/nvchipsets.xml        (   2833 bytes, from 2015-04-28 16:28:33)
14bf215546Sopenharmony_ci- rnndb/fifo/nv_object.xml    (  15390 bytes, from 2015-04-22 20:36:09)
15bf215546Sopenharmony_ci- rnndb/g80_defs.xml          (  18210 bytes, from 2015-10-19 20:49:59)
16bf215546Sopenharmony_ci
17bf215546Sopenharmony_ciCopyright (C) 2006-2015 by the following authors:
18bf215546Sopenharmony_ci- Artur Huillet <arthur.huillet@free.fr> (ahuillet)
19bf215546Sopenharmony_ci- Ben Skeggs (darktama, darktama_)
20bf215546Sopenharmony_ci- B. R. <koala_br@users.sourceforge.net> (koala_br)
21bf215546Sopenharmony_ci- Carlos Martin <carlosmn@users.sf.net> (carlosmn)
22bf215546Sopenharmony_ci- Christoph Bumiller <e0425955@student.tuwien.ac.at> (calim, chrisbmr)
23bf215546Sopenharmony_ci- Dawid Gajownik <gajownik@users.sf.net> (gajownik)
24bf215546Sopenharmony_ci- Dmitry Baryshkov
25bf215546Sopenharmony_ci- Dmitry Eremin-Solenikov <lumag@users.sf.net> (lumag)
26bf215546Sopenharmony_ci- EdB <edb_@users.sf.net> (edb_)
27bf215546Sopenharmony_ci- Erik Waling <erikwailing@users.sf.net> (erikwaling)
28bf215546Sopenharmony_ci- Francisco Jerez <currojerez@riseup.net> (curro)
29bf215546Sopenharmony_ci- Ilia Mirkin <imirkin@alum.mit.edu> (imirkin)
30bf215546Sopenharmony_ci- jb17bsome <jb17bsome@bellsouth.net> (jb17bsome)
31bf215546Sopenharmony_ci- Jeremy Kolb <kjeremy@users.sf.net> (kjeremy)
32bf215546Sopenharmony_ci- Laurent Carlier <lordheavym@gmail.com> (lordheavy)
33bf215546Sopenharmony_ci- Luca Barbieri <luca@luca-barbieri.com> (lb, lb1)
34bf215546Sopenharmony_ci- Maarten Maathuis <madman2003@gmail.com> (stillunknown)
35bf215546Sopenharmony_ci- Marcin Kościelnicki <koriakin@0x04.net> (mwk, koriakin)
36bf215546Sopenharmony_ci- Mark Carey <mark.carey@gmail.com> (careym)
37bf215546Sopenharmony_ci- Matthieu Castet <matthieu.castet@parrot.com> (mat-c)
38bf215546Sopenharmony_ci- nvidiaman <nvidiaman@users.sf.net> (nvidiaman)
39bf215546Sopenharmony_ci- Patrice Mandin <patmandin@gmail.com> (pmandin, pmdata)
40bf215546Sopenharmony_ci- Pekka Paalanen <pq@iki.fi> (pq, ppaalanen)
41bf215546Sopenharmony_ci- Peter Popov <ironpeter@users.sf.net> (ironpeter)
42bf215546Sopenharmony_ci- Richard Hughes <hughsient@users.sf.net> (hughsient)
43bf215546Sopenharmony_ci- Rudi Cilibrasi <cilibrar@users.sf.net> (cilibrar)
44bf215546Sopenharmony_ci- Serge Martin
45bf215546Sopenharmony_ci- Simon Raffeiner
46bf215546Sopenharmony_ci- Stephane Loeuillet <leroutier@users.sf.net> (leroutier)
47bf215546Sopenharmony_ci- Stephane Marchesin <stephane.marchesin@gmail.com> (marcheu)
48bf215546Sopenharmony_ci- sturmflut <sturmflut@users.sf.net> (sturmflut)
49bf215546Sopenharmony_ci- Sylvain Munaut <tnt@246tNt.com>
50bf215546Sopenharmony_ci- Victor Stinner <victor.stinner@haypocalc.com> (haypo)
51bf215546Sopenharmony_ci- Wladmir van der Laan <laanwj@gmail.com> (miathan6)
52bf215546Sopenharmony_ci- Younes Manton <younes.m@gmail.com> (ymanton)
53bf215546Sopenharmony_ci
54bf215546Sopenharmony_ciPermission is hereby granted, free of charge, to any person obtaining
55bf215546Sopenharmony_cia copy of this software and associated documentation files (the
56bf215546Sopenharmony_ci"Software"), to deal in the Software without restriction, including
57bf215546Sopenharmony_ciwithout limitation the rights to use, copy, modify, merge, publish,
58bf215546Sopenharmony_cidistribute, sublicense, and/or sell copies of the Software, and to
59bf215546Sopenharmony_cipermit persons to whom the Software is furnished to do so, subject to
60bf215546Sopenharmony_cithe following conditions:
61bf215546Sopenharmony_ci
62bf215546Sopenharmony_ciThe above copyright notice and this permission notice (including the
63bf215546Sopenharmony_cinext paragraph) shall be included in all copies or substantial
64bf215546Sopenharmony_ciportions of the Software.
65bf215546Sopenharmony_ci
66bf215546Sopenharmony_ciTHE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
67bf215546Sopenharmony_ciEXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
68bf215546Sopenharmony_ciMERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
69bf215546Sopenharmony_ciIN NO EVENT SHALL THE COPYRIGHT OWNER(S) AND/OR ITS SUPPLIERS BE
70bf215546Sopenharmony_ciLIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
71bf215546Sopenharmony_ciOF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
72bf215546Sopenharmony_ciWITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
73bf215546Sopenharmony_ci*/
74bf215546Sopenharmony_ci
75bf215546Sopenharmony_ci
76bf215546Sopenharmony_ci
77bf215546Sopenharmony_ci#define NV50_COMPUTE_DMA_NOTIFY					0x00000180
78bf215546Sopenharmony_ci
79bf215546Sopenharmony_ci#define NV50_COMPUTE_DMA_GLOBAL					0x000001a0
80bf215546Sopenharmony_ci
81bf215546Sopenharmony_ci#define NV50_COMPUTE_DMA_QUERY					0x000001a4
82bf215546Sopenharmony_ci
83bf215546Sopenharmony_ci#define NV50_COMPUTE_DMA_LOCAL					0x000001b8
84bf215546Sopenharmony_ci
85bf215546Sopenharmony_ci#define NV50_COMPUTE_DMA_STACK					0x000001bc
86bf215546Sopenharmony_ci
87bf215546Sopenharmony_ci#define NV50_COMPUTE_DMA_CODE_CB					0x000001c0
88bf215546Sopenharmony_ci
89bf215546Sopenharmony_ci#define NV50_COMPUTE_DMA_TSC					0x000001c4
90bf215546Sopenharmony_ci
91bf215546Sopenharmony_ci#define NV50_COMPUTE_DMA_TIC					0x000001c8
92bf215546Sopenharmony_ci
93bf215546Sopenharmony_ci#define NV50_COMPUTE_DMA_TEXTURE					0x000001cc
94bf215546Sopenharmony_ci
95bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK0200					0x00000200
96bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK0200_UNK1__MASK				0x0000ffff
97bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK0200_UNK1__SHIFT				0
98bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK0200_UNK2__MASK				0x00ff0000
99bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK0200_UNK2__SHIFT				16
100bf215546Sopenharmony_ci
101bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK0204					0x00000204
102bf215546Sopenharmony_ci
103bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK0208					0x00000208
104bf215546Sopenharmony_ci
105bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK020C					0x0000020c
106bf215546Sopenharmony_ci
107bf215546Sopenharmony_ci#define NV50_COMPUTE_CP_ADDRESS_HIGH				0x00000210
108bf215546Sopenharmony_ci
109bf215546Sopenharmony_ci#define NV50_COMPUTE_CP_ADDRESS_LOW				0x00000214
110bf215546Sopenharmony_ci
111bf215546Sopenharmony_ci#define NV50_COMPUTE_STACK_ADDRESS_HIGH				0x00000218
112bf215546Sopenharmony_ci
113bf215546Sopenharmony_ci#define NV50_COMPUTE_STACK_ADDRESS_LOW				0x0000021c
114bf215546Sopenharmony_ci
115bf215546Sopenharmony_ci#define NV50_COMPUTE_STACK_SIZE_LOG				0x00000220
116bf215546Sopenharmony_ci
117bf215546Sopenharmony_ci#define NV50_COMPUTE_CALL_LIMIT_LOG				0x00000224
118bf215546Sopenharmony_ci
119bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK0228					0x00000228
120bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK0228_UNK0				0x00000001
121bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK0228_UNK4__MASK				0x00000ff0
122bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK0228_UNK4__SHIFT				4
123bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK0228_UNK12__MASK				0x000ff000
124bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK0228_UNK12__SHIFT			12
125bf215546Sopenharmony_ci
126bf215546Sopenharmony_ci#define NV50_COMPUTE_TSC_ADDRESS_HIGH				0x0000022c
127bf215546Sopenharmony_ci
128bf215546Sopenharmony_ci#define NV50_COMPUTE_TSC_ADDRESS_LOW				0x00000230
129bf215546Sopenharmony_ci#define NV50_COMPUTE_TSC_ADDRESS_LOW__ALIGN			0x00000020
130bf215546Sopenharmony_ci
131bf215546Sopenharmony_ci#define NV50_COMPUTE_TSC_LIMIT					0x00000234
132bf215546Sopenharmony_ci#define NV50_COMPUTE_TSC_LIMIT__MAX				0x00001fff
133bf215546Sopenharmony_ci
134bf215546Sopenharmony_ci#define NV50_COMPUTE_CB_ADDR					0x00000238
135bf215546Sopenharmony_ci#define NV50_COMPUTE_CB_ADDR_ID__MASK				0x003fff00
136bf215546Sopenharmony_ci#define NV50_COMPUTE_CB_ADDR_ID__SHIFT				8
137bf215546Sopenharmony_ci#define NV50_COMPUTE_CB_ADDR_BUFFER__MASK			0x0000007f
138bf215546Sopenharmony_ci#define NV50_COMPUTE_CB_ADDR_BUFFER__SHIFT			0
139bf215546Sopenharmony_ci
140bf215546Sopenharmony_ci#define NV50_COMPUTE_CB_DATA(i0)				       (0x0000023c + 0x4*(i0))
141bf215546Sopenharmony_ci#define NV50_COMPUTE_CB_DATA__ESIZE				0x00000004
142bf215546Sopenharmony_ci#define NV50_COMPUTE_CB_DATA__LEN				0x00000010
143bf215546Sopenharmony_ci
144bf215546Sopenharmony_ci#define NV50_COMPUTE_TSC_FLUSH					0x0000027c
145bf215546Sopenharmony_ci#define NV50_COMPUTE_TSC_FLUSH_SPECIFIC				0x00000001
146bf215546Sopenharmony_ci#define NV50_COMPUTE_TSC_FLUSH_ENTRY__MASK			0x03fffff0
147bf215546Sopenharmony_ci#define NV50_COMPUTE_TSC_FLUSH_ENTRY__SHIFT			4
148bf215546Sopenharmony_ci
149bf215546Sopenharmony_ci#define NV50_COMPUTE_TIC_FLUSH					0x00000280
150bf215546Sopenharmony_ci#define NV50_COMPUTE_TIC_FLUSH_SPECIFIC				0x00000001
151bf215546Sopenharmony_ci#define NV50_COMPUTE_TIC_FLUSH_ENTRY__MASK			0x03fffff0
152bf215546Sopenharmony_ci#define NV50_COMPUTE_TIC_FLUSH_ENTRY__SHIFT			4
153bf215546Sopenharmony_ci
154bf215546Sopenharmony_ci#define NV50_COMPUTE_DELAY1					0x00000284
155bf215546Sopenharmony_ci
156bf215546Sopenharmony_ci#define NV50_COMPUTE_WATCHDOG_TIMER				0x00000288
157bf215546Sopenharmony_ci
158bf215546Sopenharmony_ci#define NV50_COMPUTE_DELAY2					0x0000028c
159bf215546Sopenharmony_ci
160bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK0290					0x00000290
161bf215546Sopenharmony_ci
162bf215546Sopenharmony_ci#define NV50_COMPUTE_LOCAL_ADDRESS_HIGH				0x00000294
163bf215546Sopenharmony_ci
164bf215546Sopenharmony_ci#define NV50_COMPUTE_LOCAL_ADDRESS_LOW				0x00000298
165bf215546Sopenharmony_ci#define NV50_COMPUTE_LOCAL_ADDRESS_LOW__ALIGN			0x00000100
166bf215546Sopenharmony_ci
167bf215546Sopenharmony_ci#define NV50_COMPUTE_LOCAL_SIZE_LOG				0x0000029c
168bf215546Sopenharmony_ci
169bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK02A0					0x000002a0
170bf215546Sopenharmony_ci
171bf215546Sopenharmony_ci#define NV50_COMPUTE_CB_DEF_ADDRESS_HIGH				0x000002a4
172bf215546Sopenharmony_ci
173bf215546Sopenharmony_ci#define NV50_COMPUTE_CB_DEF_ADDRESS_LOW				0x000002a8
174bf215546Sopenharmony_ci
175bf215546Sopenharmony_ci#define NV50_COMPUTE_CB_DEF_SET					0x000002ac
176bf215546Sopenharmony_ci#define NV50_COMPUTE_CB_DEF_SET_SIZE__MASK			0x0000ffff
177bf215546Sopenharmony_ci#define NV50_COMPUTE_CB_DEF_SET_SIZE__SHIFT			0
178bf215546Sopenharmony_ci#define NV50_COMPUTE_CB_DEF_SET_BUFFER__MASK			0x007f0000
179bf215546Sopenharmony_ci#define NV50_COMPUTE_CB_DEF_SET_BUFFER__SHIFT			16
180bf215546Sopenharmony_ci
181bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK02B0					0x000002b0
182bf215546Sopenharmony_ci
183bf215546Sopenharmony_ci#define NV50_COMPUTE_BLOCK_ALLOC					0x000002b4
184bf215546Sopenharmony_ci#define NV50_COMPUTE_BLOCK_ALLOC_THREADS__MASK			0x0000ffff
185bf215546Sopenharmony_ci#define NV50_COMPUTE_BLOCK_ALLOC_THREADS__SHIFT			0
186bf215546Sopenharmony_ci#define NV50_COMPUTE_BLOCK_ALLOC_BARRIERS__MASK			0x00ff0000
187bf215546Sopenharmony_ci#define NV50_COMPUTE_BLOCK_ALLOC_BARRIERS__SHIFT			16
188bf215546Sopenharmony_ci
189bf215546Sopenharmony_ci#define NV50_COMPUTE_LANES32_ENABLE				0x000002b8
190bf215546Sopenharmony_ci
191bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK02BC					0x000002bc
192bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK02BC_UNK1__MASK				0x00000007
193bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK02BC_UNK1__SHIFT				0
194bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK02BC_UNK2__MASK				0x00000070
195bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK02BC_UNK2__SHIFT				4
196bf215546Sopenharmony_ci
197bf215546Sopenharmony_ci#define NV50_COMPUTE_CP_REG_ALLOC_TEMP				0x000002c0
198bf215546Sopenharmony_ci
199bf215546Sopenharmony_ci#define NV50_COMPUTE_TIC_ADDRESS_HIGH				0x000002c4
200bf215546Sopenharmony_ci
201bf215546Sopenharmony_ci#define NV50_COMPUTE_TIC_ADDRESS_LOW				0x000002c8
202bf215546Sopenharmony_ci
203bf215546Sopenharmony_ci#define NV50_COMPUTE_TIC_LIMIT					0x000002cc
204bf215546Sopenharmony_ci
205bf215546Sopenharmony_ci#define NV50_COMPUTE_MP_PM_SET(i0)			       (0x000002d0 + 0x4*(i0))
206bf215546Sopenharmony_ci#define NV50_COMPUTE_MP_PM_SET__ESIZE				0x00000004
207bf215546Sopenharmony_ci#define NV50_COMPUTE_MP_PM_SET__LEN				0x00000004
208bf215546Sopenharmony_ci
209bf215546Sopenharmony_ci#define NV50_COMPUTE_MP_PM_CONTROL(i0)			       (0x000002e0 + 0x4*(i0))
210bf215546Sopenharmony_ci#define NV50_COMPUTE_MP_PM_CONTROL__ESIZE			0x00000004
211bf215546Sopenharmony_ci#define NV50_COMPUTE_MP_PM_CONTROL__LEN				0x00000004
212bf215546Sopenharmony_ci#define NV50_COMPUTE_MP_PM_CONTROL_MODE__MASK			0x00000001
213bf215546Sopenharmony_ci#define NV50_COMPUTE_MP_PM_CONTROL_MODE__SHIFT			0
214bf215546Sopenharmony_ci#define NV50_COMPUTE_MP_PM_CONTROL_MODE_LOGOP			0x00000000
215bf215546Sopenharmony_ci#define NV50_COMPUTE_MP_PM_CONTROL_MODE_LOGOP_PULSE		0x00000001
216bf215546Sopenharmony_ci#define NV50_COMPUTE_MP_PM_CONTROL_UNIT__MASK			0x00000070
217bf215546Sopenharmony_ci#define NV50_COMPUTE_MP_PM_CONTROL_UNIT__SHIFT			4
218bf215546Sopenharmony_ci#define NV50_COMPUTE_MP_PM_CONTROL_UNIT_UNK0			0x00000000
219bf215546Sopenharmony_ci#define NV50_COMPUTE_MP_PM_CONTROL_UNIT_UNK1			0x00000010
220bf215546Sopenharmony_ci#define NV50_COMPUTE_MP_PM_CONTROL_UNIT_UNK2			0x00000020
221bf215546Sopenharmony_ci#define NV50_COMPUTE_MP_PM_CONTROL_UNIT_UNK3			0x00000030
222bf215546Sopenharmony_ci#define NV50_COMPUTE_MP_PM_CONTROL_UNIT_UNK4			0x00000040
223bf215546Sopenharmony_ci#define NV50_COMPUTE_MP_PM_CONTROL_UNIT_UNK5			0x00000050
224bf215546Sopenharmony_ci#define NV50_COMPUTE_MP_PM_CONTROL_FUNC__MASK			0x00ffff00
225bf215546Sopenharmony_ci#define NV50_COMPUTE_MP_PM_CONTROL_FUNC__SHIFT			8
226bf215546Sopenharmony_ci#define NV50_COMPUTE_MP_PM_CONTROL_SIG__MASK			0xff000000
227bf215546Sopenharmony_ci#define NV50_COMPUTE_MP_PM_CONTROL_SIG__SHIFT			24
228bf215546Sopenharmony_ci
229bf215546Sopenharmony_ci#define NV50_COMPUTE_MP_PM_OVERFLOW_TRAP_ENABLE			0x000002f0
230bf215546Sopenharmony_ci#define NV50_COMPUTE_MP_PM_OVERFLOW_TRAP_ENABLE_0		0x00000001
231bf215546Sopenharmony_ci#define NV50_COMPUTE_MP_PM_OVERFLOW_TRAP_ENABLE_1		0x00000002
232bf215546Sopenharmony_ci#define NV50_COMPUTE_MP_PM_OVERFLOW_TRAP_ENABLE_2		0x00000004
233bf215546Sopenharmony_ci#define NV50_COMPUTE_MP_PM_OVERFLOW_TRAP_ENABLE_3		0x00000008
234bf215546Sopenharmony_ci
235bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK02F4					0x000002f4
236bf215546Sopenharmony_ci
237bf215546Sopenharmony_ci#define NV50_COMPUTE_BLOCKDIM_LATCH				0x000002f8
238bf215546Sopenharmony_ci
239bf215546Sopenharmony_ci#define NV50_COMPUTE_LOCAL_WARPS_LOG_ALLOC			0x000002fc
240bf215546Sopenharmony_ci
241bf215546Sopenharmony_ci#define NV50_COMPUTE_LOCAL_WARPS_NO_CLAMP			0x00000300
242bf215546Sopenharmony_ci
243bf215546Sopenharmony_ci#define NV50_COMPUTE_STACK_WARPS_LOG_ALLOC			0x00000304
244bf215546Sopenharmony_ci
245bf215546Sopenharmony_ci#define NV50_COMPUTE_STACK_WARPS_NO_CLAMP			0x00000308
246bf215546Sopenharmony_ci
247bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK030C					0x0000030c
248bf215546Sopenharmony_ci
249bf215546Sopenharmony_ci#define NV50_COMPUTE_QUERY_ADDRESS_HIGH				0x00000310
250bf215546Sopenharmony_ci
251bf215546Sopenharmony_ci#define NV50_COMPUTE_QUERY_ADDRESS_LOW				0x00000314
252bf215546Sopenharmony_ci
253bf215546Sopenharmony_ci#define NV50_COMPUTE_QUERY_SEQUENCE				0x00000318
254bf215546Sopenharmony_ci
255bf215546Sopenharmony_ci#define NV50_COMPUTE_QUERY_GET					0x0000031c
256bf215546Sopenharmony_ci#define NV50_COMPUTE_QUERY_GET_INTR				0x00000200
257bf215546Sopenharmony_ci#define NV50_COMPUTE_QUERY_GET_SHORT				0x00008000
258bf215546Sopenharmony_ci
259bf215546Sopenharmony_ci#define NV50_COMPUTE_COND_ADDRESS_HIGH				0x00000320
260bf215546Sopenharmony_ci
261bf215546Sopenharmony_ci#define NV50_COMPUTE_COND_ADDRESS_LOW				0x00000324
262bf215546Sopenharmony_ci
263bf215546Sopenharmony_ci#define NV50_COMPUTE_COND_MODE					0x00000328
264bf215546Sopenharmony_ci#define NV50_COMPUTE_COND_MODE_NEVER				0x00000000
265bf215546Sopenharmony_ci#define NV50_COMPUTE_COND_MODE_ALWAYS				0x00000001
266bf215546Sopenharmony_ci#define NV50_COMPUTE_COND_MODE_RES_NON_ZERO			0x00000002
267bf215546Sopenharmony_ci#define NV50_COMPUTE_COND_MODE_EQUAL				0x00000003
268bf215546Sopenharmony_ci#define NV50_COMPUTE_COND_MODE_NOT_EQUAL				0x00000004
269bf215546Sopenharmony_ci
270bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK032C					0x0000032c
271bf215546Sopenharmony_ci
272bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK0330					0x00000330
273bf215546Sopenharmony_ci
274bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK0334(i0)				       (0x00000334 + 0x4*(i0))
275bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK0334__ESIZE				0x00000004
276bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK0334__LEN				0x00000003
277bf215546Sopenharmony_ci
278bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK0340(i0)				       (0x00000340 + 0x4*(i0))
279bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK0340__ESIZE				0x00000004
280bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK0340__LEN				0x00000002
281bf215546Sopenharmony_ci
282bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK0348(i0)				       (0x00000348 + 0x4*(i0))
283bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK0348__ESIZE				0x00000004
284bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK0348__LEN				0x00000002
285bf215546Sopenharmony_ci
286bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK0350(i0)				       (0x00000350 + 0x4*(i0))
287bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK0350__ESIZE				0x00000004
288bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK0350__LEN				0x00000002
289bf215546Sopenharmony_ci
290bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK0358					0x00000358
291bf215546Sopenharmony_ci
292bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK035C					0x0000035c
293bf215546Sopenharmony_ci
294bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK0360					0x00000360
295bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK0360_UNK0__MASK				0x000000f0
296bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK0360_UNK0__SHIFT				4
297bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK0360_UNK1__MASK				0x00000f00
298bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK0360_UNK1__SHIFT				8
299bf215546Sopenharmony_ci
300bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK0364					0x00000364
301bf215546Sopenharmony_ci
302bf215546Sopenharmony_ci#define NV50_COMPUTE_LAUNCH					0x00000368
303bf215546Sopenharmony_ci
304bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK036C					0x0000036c
305bf215546Sopenharmony_ci
306bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK0370					0x00000370
307bf215546Sopenharmony_ci
308bf215546Sopenharmony_ci#define NV50_COMPUTE_USER_PARAM_COUNT				0x00000374
309bf215546Sopenharmony_ci#define NV50_COMPUTE_USER_PARAM_COUNT_UNK0__MASK			0x000000ff
310bf215546Sopenharmony_ci#define NV50_COMPUTE_USER_PARAM_COUNT_UNK0__SHIFT		0
311bf215546Sopenharmony_ci#define NV50_COMPUTE_USER_PARAM_COUNT_COUNT__MASK		0x0000ff00
312bf215546Sopenharmony_ci#define NV50_COMPUTE_USER_PARAM_COUNT_COUNT__SHIFT		8
313bf215546Sopenharmony_ci#define NV50_COMPUTE_USER_PARAM_COUNT_COUNT__MAX			0x00000040
314bf215546Sopenharmony_ci
315bf215546Sopenharmony_ci#define NV50_COMPUTE_LINKED_TSC					0x00000378
316bf215546Sopenharmony_ci
317bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK037C					0x0000037c
318bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK037C_ALWAYS_DERIV			0x00000001
319bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK037C_UNK16				0x00010000
320bf215546Sopenharmony_ci
321bf215546Sopenharmony_ci#define NV50_COMPUTE_CODE_CB_FLUSH				0x00000380
322bf215546Sopenharmony_ci
323bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK0384					0x00000384
324bf215546Sopenharmony_ci
325bf215546Sopenharmony_ci#define NV50_COMPUTE_GRIDID					0x00000388
326bf215546Sopenharmony_ci
327bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK038C(i0)				       (0x0000038c + 0x4*(i0))
328bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK038C__ESIZE				0x00000004
329bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK038C__LEN				0x00000003
330bf215546Sopenharmony_ci
331bf215546Sopenharmony_ci#define NV50_COMPUTE_WRCACHE_FLUSH				0x00000398
332bf215546Sopenharmony_ci
333bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK039C(i0)				       (0x0000039c + 0x4*(i0))
334bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK039C__ESIZE				0x00000004
335bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK039C__LEN				0x00000002
336bf215546Sopenharmony_ci
337bf215546Sopenharmony_ci#define NV50_COMPUTE_GRIDDIM					0x000003a4
338bf215546Sopenharmony_ci#define NV50_COMPUTE_GRIDDIM_X__MASK				0x0000ffff
339bf215546Sopenharmony_ci#define NV50_COMPUTE_GRIDDIM_X__SHIFT				0
340bf215546Sopenharmony_ci#define NV50_COMPUTE_GRIDDIM_Y__MASK				0xffff0000
341bf215546Sopenharmony_ci#define NV50_COMPUTE_GRIDDIM_Y__SHIFT				16
342bf215546Sopenharmony_ci
343bf215546Sopenharmony_ci#define NV50_COMPUTE_SHARED_SIZE					0x000003a8
344bf215546Sopenharmony_ci#define NV50_COMPUTE_SHARED_SIZE__MAX				0x00004000
345bf215546Sopenharmony_ci#define NV50_COMPUTE_SHARED_SIZE__ALIGN				0x00000040
346bf215546Sopenharmony_ci
347bf215546Sopenharmony_ci#define NV50_COMPUTE_BLOCKDIM_XY					0x000003ac
348bf215546Sopenharmony_ci#define NV50_COMPUTE_BLOCKDIM_XY_X__MASK				0x0000ffff
349bf215546Sopenharmony_ci#define NV50_COMPUTE_BLOCKDIM_XY_X__SHIFT			0
350bf215546Sopenharmony_ci#define NV50_COMPUTE_BLOCKDIM_XY_Y__MASK				0xffff0000
351bf215546Sopenharmony_ci#define NV50_COMPUTE_BLOCKDIM_XY_Y__SHIFT			16
352bf215546Sopenharmony_ci
353bf215546Sopenharmony_ci#define NV50_COMPUTE_BLOCKDIM_Z					0x000003b0
354bf215546Sopenharmony_ci#define NV50_COMPUTE_BLOCKDIM_Z__MIN				0x00000001
355bf215546Sopenharmony_ci#define NV50_COMPUTE_BLOCKDIM_Z__MAX				0x00000040
356bf215546Sopenharmony_ci
357bf215546Sopenharmony_ci#define NV50_COMPUTE_CP_START_ID					0x000003b4
358bf215546Sopenharmony_ci
359bf215546Sopenharmony_ci#define NV50_COMPUTE_REG_MODE					0x000003b8
360bf215546Sopenharmony_ci#define NV50_COMPUTE_REG_MODE_PACKED				0x00000001
361bf215546Sopenharmony_ci#define NV50_COMPUTE_REG_MODE_STRIPED				0x00000002
362bf215546Sopenharmony_ci
363bf215546Sopenharmony_ci#define NV50_COMPUTE_TEX_LIMITS					0x000003bc
364bf215546Sopenharmony_ci#define NV50_COMPUTE_TEX_LIMITS_SAMPLERS_LOG2__MASK		0x0000000f
365bf215546Sopenharmony_ci#define NV50_COMPUTE_TEX_LIMITS_SAMPLERS_LOG2__SHIFT		0
366bf215546Sopenharmony_ci#define NV50_COMPUTE_TEX_LIMITS_SAMPLERS_LOG2__MIN		0x00000000
367bf215546Sopenharmony_ci#define NV50_COMPUTE_TEX_LIMITS_SAMPLERS_LOG2__MAX		0x00000004
368bf215546Sopenharmony_ci#define NV50_COMPUTE_TEX_LIMITS_TEXTURES_LOG2__MASK		0x000000f0
369bf215546Sopenharmony_ci#define NV50_COMPUTE_TEX_LIMITS_TEXTURES_LOG2__SHIFT		4
370bf215546Sopenharmony_ci#define NV50_COMPUTE_TEX_LIMITS_TEXTURES_LOG2__MIN		0x00000000
371bf215546Sopenharmony_ci#define NV50_COMPUTE_TEX_LIMITS_TEXTURES_LOG2__MAX		0x00000007
372bf215546Sopenharmony_ci
373bf215546Sopenharmony_ci#define NV50_COMPUTE_BIND_TSC					0x000003c0
374bf215546Sopenharmony_ci#define NV50_COMPUTE_BIND_TSC_VALID				0x00000001
375bf215546Sopenharmony_ci#define NV50_COMPUTE_BIND_TSC_SAMPLER__MASK			0x000000f0
376bf215546Sopenharmony_ci#define NV50_COMPUTE_BIND_TSC_SAMPLER__SHIFT			4
377bf215546Sopenharmony_ci#define NV50_COMPUTE_BIND_TSC_TSC__MASK				0x001ff000
378bf215546Sopenharmony_ci#define NV50_COMPUTE_BIND_TSC_TSC__SHIFT				12
379bf215546Sopenharmony_ci
380bf215546Sopenharmony_ci#define NV50_COMPUTE_BIND_TIC					0x000003c4
381bf215546Sopenharmony_ci#define NV50_COMPUTE_BIND_TIC_VALID				0x00000001
382bf215546Sopenharmony_ci#define NV50_COMPUTE_BIND_TIC_TEXTURE__MASK			0x000001fe
383bf215546Sopenharmony_ci#define NV50_COMPUTE_BIND_TIC_TEXTURE__SHIFT			1
384bf215546Sopenharmony_ci#define NV50_COMPUTE_BIND_TIC_TIC__MASK				0x7ffffe00
385bf215546Sopenharmony_ci#define NV50_COMPUTE_BIND_TIC_TIC__SHIFT				9
386bf215546Sopenharmony_ci
387bf215546Sopenharmony_ci#define NV50_COMPUTE_SET_PROGRAM_CB				0x000003c8
388bf215546Sopenharmony_ci#define NV50_COMPUTE_SET_PROGRAM_CB_INDEX__MASK			0x00000f00
389bf215546Sopenharmony_ci#define NV50_COMPUTE_SET_PROGRAM_CB_INDEX__SHIFT			8
390bf215546Sopenharmony_ci#define NV50_COMPUTE_SET_PROGRAM_CB_BUFFER__MASK			0x0007f000
391bf215546Sopenharmony_ci#define NV50_COMPUTE_SET_PROGRAM_CB_BUFFER__SHIFT		12
392bf215546Sopenharmony_ci#define NV50_COMPUTE_SET_PROGRAM_CB_VALID			0x000000ff
393bf215546Sopenharmony_ci
394bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK03CC					0x000003cc
395bf215546Sopenharmony_ci
396bf215546Sopenharmony_ci#define NV50_COMPUTE_TEX_CACHE_CTL				0x000003d0
397bf215546Sopenharmony_ci#define NV50_COMPUTE_TEX_CACHE_CTL_UNK1__MASK			0x00000030
398bf215546Sopenharmony_ci#define NV50_COMPUTE_TEX_CACHE_CTL_UNK1__SHIFT			4
399bf215546Sopenharmony_ci
400bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK03D4					0x000003d4
401bf215546Sopenharmony_ci
402bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK03D8					0x000003d8
403bf215546Sopenharmony_ci
404bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK03DC					0x000003dc
405bf215546Sopenharmony_ci
406bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK03E0					0x000003e0
407bf215546Sopenharmony_ci
408bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK03E4					0x000003e4
409bf215546Sopenharmony_ci
410bf215546Sopenharmony_ci#define NVA3_COMPUTE_TEX_MISC					0x000003e8
411bf215546Sopenharmony_ci#define NVA3_COMPUTE_TEX_MISC_UNK1				0x00000001
412bf215546Sopenharmony_ci#define NVA3_COMPUTE_TEX_MISC_SEAMLESS_CUBE_MAP		0x00000002
413bf215546Sopenharmony_ci
414bf215546Sopenharmony_ci#define NV50_COMPUTE_GLOBAL(i0)				       (0x00000400 + 0x20*(i0))
415bf215546Sopenharmony_ci#define NV50_COMPUTE_GLOBAL__ESIZE				0x00000020
416bf215546Sopenharmony_ci#define NV50_COMPUTE_GLOBAL__LEN					0x00000010
417bf215546Sopenharmony_ci
418bf215546Sopenharmony_ci#define NV50_COMPUTE_GLOBAL_ADDRESS_HIGH(i0)		       (0x00000400 + 0x20*(i0))
419bf215546Sopenharmony_ci
420bf215546Sopenharmony_ci#define NV50_COMPUTE_GLOBAL_ADDRESS_LOW(i0)		       (0x00000404 + 0x20*(i0))
421bf215546Sopenharmony_ci
422bf215546Sopenharmony_ci#define NV50_COMPUTE_GLOBAL_PITCH(i0)			       (0x00000408 + 0x20*(i0))
423bf215546Sopenharmony_ci#define NV50_COMPUTE_GLOBAL_PITCH__MAX				0x00800000
424bf215546Sopenharmony_ci#define NV50_COMPUTE_GLOBAL_PITCH__ALIGN				0x00000100
425bf215546Sopenharmony_ci
426bf215546Sopenharmony_ci#define NV50_COMPUTE_GLOBAL_LIMIT(i0)			       (0x0000040c + 0x20*(i0))
427bf215546Sopenharmony_ci
428bf215546Sopenharmony_ci#define NV50_COMPUTE_GLOBAL_MODE(i0)			       (0x00000410 + 0x20*(i0))
429bf215546Sopenharmony_ci#define NV50_COMPUTE_GLOBAL_MODE_LINEAR				0x00000001
430bf215546Sopenharmony_ci#define NV50_COMPUTE_GLOBAL_MODE_UNK1__MASK			0x000000f0
431bf215546Sopenharmony_ci#define NV50_COMPUTE_GLOBAL_MODE_UNK1__SHIFT			4
432bf215546Sopenharmony_ci#define NV50_COMPUTE_GLOBAL_MODE_TILE_MODE__MASK			0x00000f00
433bf215546Sopenharmony_ci#define NV50_COMPUTE_GLOBAL_MODE_TILE_MODE__SHIFT		8
434bf215546Sopenharmony_ci
435bf215546Sopenharmony_ci#define NV50_COMPUTE_USER_PARAM(i0)			       (0x00000600 + 0x4*(i0))
436bf215546Sopenharmony_ci#define NV50_COMPUTE_USER_PARAM__ESIZE				0x00000004
437bf215546Sopenharmony_ci#define NV50_COMPUTE_USER_PARAM__LEN				0x00000040
438bf215546Sopenharmony_ci
439bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK0700(i0)				       (0x00000700 + 0x4*(i0))
440bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK0700__ESIZE				0x00000004
441bf215546Sopenharmony_ci#define NV50_COMPUTE_UNK0700__LEN				0x00000010
442bf215546Sopenharmony_ci
443bf215546Sopenharmony_ci
444bf215546Sopenharmony_ci#endif /* NV50_COMPUTE_XML */
445