Tizen 2.0 Release
[profile/ivi/osmesa.git] / src / gallium / drivers / nv50 / nv50_2d.xml.h
1 #ifndef NV50_2D_XML
2 #define NV50_2D_XML
3
4 /* Autogenerated file, DO NOT EDIT manually!
5
6 This file was generated by the rules-ng-ng headergen tool in this git repository:
7 http://0x04.net/cgit/index.cgi/rules-ng-ng
8 git clone git://0x04.net/rules-ng-ng
9
10 The rules-ng-ng source files this header was generated from are:
11 - nv50_2d.xml    (   9799 bytes, from 2010-12-28 17:17:11)
12 - copyright.xml  (   6452 bytes, from 2010-12-15 23:45:18)
13 - nv_object.xml  (  11898 bytes, from 2010-12-28 17:17:11)
14 - nvchipsets.xml (   3074 bytes, from 2010-12-15 23:45:18)
15 - nv_defs.xml    (   4437 bytes, from 2010-12-15 23:45:18)
16 - nv50_defs.xml  (   4487 bytes, from 2010-12-15 23:45:18)
17
18 Copyright (C) 2006-2010 by the following authors:
19 - Artur Huillet <arthur.huillet@free.fr> (ahuillet)
20 - Ben Skeggs (darktama, darktama_)
21 - B. R. <koala_br@users.sourceforge.net> (koala_br)
22 - Carlos Martin <carlosmn@users.sf.net> (carlosmn)
23 - Christoph Bumiller <e0425955@student.tuwien.ac.at> (calim, chrisbmr)
24 - Dawid Gajownik <gajownik@users.sf.net> (gajownik)
25 - Dmitry Baryshkov
26 - Dmitry Eremin-Solenikov <lumag@users.sf.net> (lumag)
27 - EdB <edb_@users.sf.net> (edb_)
28 - Erik Waling <erikwailing@users.sf.net> (erikwaling)
29 - Francisco Jerez <currojerez@riseup.net> (curro)
30 - imirkin <imirkin@users.sf.net> (imirkin)
31 - jb17bsome <jb17bsome@bellsouth.net> (jb17bsome)
32 - Jeremy Kolb <kjeremy@users.sf.net> (kjeremy)
33 - Laurent Carlier <lordheavym@gmail.com> (lordheavy)
34 - Luca Barbieri <luca@luca-barbieri.com> (lb, lb1)
35 - Maarten Maathuis <madman2003@gmail.com> (stillunknown)
36 - Marcin Koƛcielnicki <koriakin@0x04.net> (mwk, koriakin)
37 - Mark Carey <mark.carey@gmail.com> (careym)
38 - Matthieu Castet <matthieu.castet@parrot.com> (mat-c)
39 - nvidiaman <nvidiaman@users.sf.net> (nvidiaman)
40 - Patrice Mandin <patmandin@gmail.com> (pmandin, pmdata)
41 - Pekka Paalanen <pq@iki.fi> (pq, ppaalanen)
42 - Peter Popov <ironpeter@users.sf.net> (ironpeter)
43 - Richard Hughes <hughsient@users.sf.net> (hughsient)
44 - Rudi Cilibrasi <cilibrar@users.sf.net> (cilibrar)
45 - Serge Martin
46 - Simon Raffeiner
47 - Stephane Loeuillet <leroutier@users.sf.net> (leroutier)
48 - Stephane Marchesin <stephane.marchesin@gmail.com> (marcheu)
49 - sturmflut <sturmflut@users.sf.net> (sturmflut)
50 - Sylvain Munaut <tnt@246tNt.com>
51 - Victor Stinner <victor.stinner@haypocalc.com> (haypo)
52 - Wladmir van der Laan <laanwj@gmail.com> (miathan6)
53 - Younes Manton <younes.m@gmail.com> (ymanton)
54
55 Permission is hereby granted, free of charge, to any person obtaining
56 a copy of this software and associated documentation files (the
57 "Software"), to deal in the Software without restriction, including
58 without limitation the rights to use, copy, modify, merge, publish,
59 distribute, sublicense, and/or sell copies of the Software, and to
60 permit persons to whom the Software is furnished to do so, subject to
61 the following conditions:
62
63 The above copyright notice and this permission notice (including the
64 next paragraph) shall be included in all copies or substantial
65 portions of the Software.
66
67 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
68 EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
69 MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
70 IN NO EVENT SHALL THE COPYRIGHT OWNER(S) AND/OR ITS SUPPLIERS BE
71 LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
72 OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
73 WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
74 */
75
76
77
78
79 #define NV50_2D_DMA_NOTIFY                                      0x00000180
80
81 #define NV50_2D_DMA_DST                                         0x00000184
82
83 #define NV50_2D_DMA_SRC                                         0x00000188
84
85 #define NV50_2D_DMA_COND                                        0x0000018c
86
87 #define NV50_2D_DST_FORMAT                                      0x00000200
88
89 #define NV50_2D_DST_LINEAR                                      0x00000204
90
91 #define NV50_2D_DST_TILE_MODE                                   0x00000208
92
93 #define NV50_2D_DST_DEPTH                                       0x0000020c
94
95 #define NV50_2D_DST_LAYER                                       0x00000210
96
97 #define NV50_2D_DST_PITCH                                       0x00000214
98
99 #define NV50_2D_DST_WIDTH                                       0x00000218
100
101 #define NV50_2D_DST_HEIGHT                                      0x0000021c
102
103 #define NV50_2D_DST_ADDRESS_HIGH                                0x00000220
104
105 #define NV50_2D_DST_ADDRESS_LOW                                 0x00000224
106
107 #define NV50_2D_UNK228                                          0x00000228
108
109 #define NV50_2D_SRC_FORMAT                                      0x00000230
110
111 #define NV50_2D_SRC_LINEAR                                      0x00000234
112
113 #define NV50_2D_SRC_TILE_MODE                                   0x00000238
114
115 #define NV50_2D_SRC_DEPTH                                       0x0000023c
116
117 #define NV50_2D_SRC_LAYER                                       0x00000240
118
119 #define NV50_2D_SRC_PITCH                                       0x00000244
120 #define NV50_2D_SRC_PITCH__MAX                                  0x00040000
121
122 #define NV50_2D_SRC_WIDTH                                       0x00000248
123 #define NV50_2D_SRC_WIDTH__MAX                                  0x00010000
124
125 #define NV50_2D_SRC_HEIGHT                                      0x0000024c
126 #define NV50_2D_SRC_HEIGHT__MAX                                 0x00010000
127
128 #define NV50_2D_SRC_ADDRESS_HIGH                                0x00000250
129
130 #define NV50_2D_SRC_ADDRESS_LOW                                 0x00000254
131
132 #define NV50_2D_UNK258                                          0x00000258
133
134 #define NV50_2D_UNK260                                          0x00000260
135
136 #define NV50_2D_COND_ADDRESS_HIGH                               0x00000264
137
138 #define NV50_2D_COND_ADDRESS_LOW                                0x00000268
139
140 #define NV50_2D_COND_MODE                                       0x0000026c
141 #define NV50_2D_COND_MODE_NEVER                                 0x00000000
142 #define NV50_2D_COND_MODE_ALWAYS                                0x00000001
143 #define NV50_2D_COND_MODE_RES_NON_ZERO                          0x00000002
144 #define NV50_2D_COND_MODE_EQUAL                                 0x00000003
145 #define NV50_2D_COND_MODE_NOT_EQUAL                             0x00000004
146
147 #define NV50_2D_CLIP_X                                          0x00000280
148
149 #define NV50_2D_CLIP_Y                                          0x00000284
150
151 #define NV50_2D_CLIP_W                                          0x00000288
152
153 #define NV50_2D_CLIP_H                                          0x0000028c
154
155 #define NV50_2D_CLIP_ENABLE                                     0x00000290
156
157 #define NV50_2D_COLOR_KEY_FORMAT                                0x00000294
158 #define NV50_2D_COLOR_KEY_FORMAT_16BPP                          0x00000000
159 #define NV50_2D_COLOR_KEY_FORMAT_15BPP                          0x00000001
160 #define NV50_2D_COLOR_KEY_FORMAT_24BPP                          0x00000002
161 #define NV50_2D_COLOR_KEY_FORMAT_30BPP                          0x00000003
162 #define NV50_2D_COLOR_KEY_FORMAT_8BPP                           0x00000004
163 #define NV50_2D_COLOR_KEY_FORMAT_16BPP2                         0x00000005
164 #define NV50_2D_COLOR_KEY_FORMAT_32BPP                          0x00000006
165
166 #define NV50_2D_COLOR_KEY                                       0x00000298
167
168 #define NV50_2D_COLOR_KEY_ENABLE                                0x0000029c
169
170 #define NV50_2D_ROP                                             0x000002a0
171
172 #define NV50_2D_BETA1                                           0x000002a4
173
174 #define NV50_2D_BETA4                                           0x000002a8
175
176 #define NV50_2D_OPERATION                                       0x000002ac
177 #define NV50_2D_OPERATION_SRCCOPY_AND                           0x00000000
178 #define NV50_2D_OPERATION_ROP_AND                               0x00000001
179 #define NV50_2D_OPERATION_BLEND_AND                             0x00000002
180 #define NV50_2D_OPERATION_SRCCOPY                               0x00000003
181 #define NV50_2D_OPERATION_UNK4                                  0x00000004
182 #define NV50_2D_OPERATION_SRCCOPY_PREMULT                       0x00000005
183 #define NV50_2D_OPERATION_BLEND_PREMULT                         0x00000006
184
185 #define NV50_2D_UNK2B0                                          0x000002b0
186 #define NV50_2D_UNK2B0_UNK0__MASK                               0x0000003f
187 #define NV50_2D_UNK2B0_UNK0__SHIFT                              0
188 #define NV50_2D_UNK2B0_UNK1__MASK                               0x00003f00
189 #define NV50_2D_UNK2B0_UNK1__SHIFT                              8
190
191 #define NV50_2D_PATTERN_SELECT                                  0x000002b4
192 #define NV50_2D_PATTERN_SELECT_MONO_8X8                         0x00000000
193 #define NV50_2D_PATTERN_SELECT_MONO_64X1                        0x00000001
194 #define NV50_2D_PATTERN_SELECT_MONO_1X64                        0x00000002
195 #define NV50_2D_PATTERN_SELECT_COLOR                            0x00000003
196
197 #define NV50_2D_PATTERN_COLOR_FORMAT                            0x000002e8
198 #define NV50_2D_PATTERN_COLOR_FORMAT_16BPP                      0x00000000
199 #define NV50_2D_PATTERN_COLOR_FORMAT_15BPP                      0x00000001
200 #define NV50_2D_PATTERN_COLOR_FORMAT_32BPP                      0x00000002
201 #define NV50_2D_PATTERN_COLOR_FORMAT_8BPP                       0x00000003
202 #define NV50_2D_PATTERN_COLOR_FORMAT_UNK4                       0x00000004
203 #define NV50_2D_PATTERN_COLOR_FORMAT_UNK5                       0x00000005
204
205 #define NV50_2D_PATTERN_MONO_FORMAT                             0x000002ec
206 #define NV50_2D_PATTERN_MONO_FORMAT_CGA6                        0x00000000
207 #define NV50_2D_PATTERN_MONO_FORMAT_LE                          0x00000001
208
209 #define NV50_2D_PATTERN_COLOR(i0)                              (0x000002f0 + 0x4*(i0))
210 #define NV50_2D_PATTERN_COLOR__ESIZE                            0x00000004
211 #define NV50_2D_PATTERN_COLOR__LEN                              0x00000002
212
213 #define NV50_2D_PATTERN_BITMAP(i0)                             (0x000002f8 + 0x4*(i0))
214 #define NV50_2D_PATTERN_BITMAP__ESIZE                           0x00000004
215 #define NV50_2D_PATTERN_BITMAP__LEN                             0x00000002
216
217 #define NV50_2D_PATTERN_X8R8G8B8(i0)                           (0x00000300 + 0x4*(i0))
218 #define NV50_2D_PATTERN_X8R8G8B8__ESIZE                         0x00000004
219 #define NV50_2D_PATTERN_X8R8G8B8__LEN                           0x00000040
220 #define NV50_2D_PATTERN_X8R8G8B8_B__MASK                        0x000000ff
221 #define NV50_2D_PATTERN_X8R8G8B8_B__SHIFT                       0
222 #define NV50_2D_PATTERN_X8R8G8B8_G__MASK                        0x0000ff00
223 #define NV50_2D_PATTERN_X8R8G8B8_G__SHIFT                       8
224 #define NV50_2D_PATTERN_X8R8G8B8_R__MASK                        0x00ff0000
225 #define NV50_2D_PATTERN_X8R8G8B8_R__SHIFT                       16
226
227 #define NV50_2D_PATTERN_R5G6B5(i0)                             (0x00000400 + 0x4*(i0))
228 #define NV50_2D_PATTERN_R5G6B5__ESIZE                           0x00000004
229 #define NV50_2D_PATTERN_R5G6B5__LEN                             0x00000020
230 #define NV50_2D_PATTERN_R5G6B5_B0__MASK                         0x0000001f
231 #define NV50_2D_PATTERN_R5G6B5_B0__SHIFT                        0
232 #define NV50_2D_PATTERN_R5G6B5_G0__MASK                         0x000007e0
233 #define NV50_2D_PATTERN_R5G6B5_G0__SHIFT                        5
234 #define NV50_2D_PATTERN_R5G6B5_R0__MASK                         0x0000f800
235 #define NV50_2D_PATTERN_R5G6B5_R0__SHIFT                        11
236 #define NV50_2D_PATTERN_R5G6B5_B1__MASK                         0x001f0000
237 #define NV50_2D_PATTERN_R5G6B5_B1__SHIFT                        16
238 #define NV50_2D_PATTERN_R5G6B5_G1__MASK                         0x07e00000
239 #define NV50_2D_PATTERN_R5G6B5_G1__SHIFT                        21
240 #define NV50_2D_PATTERN_R5G6B5_R1__MASK                         0xf8000000
241 #define NV50_2D_PATTERN_R5G6B5_R1__SHIFT                        27
242
243 #define NV50_2D_PATTERN_X1R5G5B5(i0)                           (0x00000480 + 0x4*(i0))
244 #define NV50_2D_PATTERN_X1R5G5B5__ESIZE                         0x00000004
245 #define NV50_2D_PATTERN_X1R5G5B5__LEN                           0x00000020
246 #define NV50_2D_PATTERN_X1R5G5B5_B0__MASK                       0x0000001f
247 #define NV50_2D_PATTERN_X1R5G5B5_B0__SHIFT                      0
248 #define NV50_2D_PATTERN_X1R5G5B5_G0__MASK                       0x000003e0
249 #define NV50_2D_PATTERN_X1R5G5B5_G0__SHIFT                      5
250 #define NV50_2D_PATTERN_X1R5G5B5_R0__MASK                       0x00007c00
251 #define NV50_2D_PATTERN_X1R5G5B5_R0__SHIFT                      10
252 #define NV50_2D_PATTERN_X1R5G5B5_B1__MASK                       0x001f0000
253 #define NV50_2D_PATTERN_X1R5G5B5_B1__SHIFT                      16
254 #define NV50_2D_PATTERN_X1R5G5B5_G1__MASK                       0x03e00000
255 #define NV50_2D_PATTERN_X1R5G5B5_G1__SHIFT                      21
256 #define NV50_2D_PATTERN_X1R5G5B5_R1__MASK                       0x7c000000
257 #define NV50_2D_PATTERN_X1R5G5B5_R1__SHIFT                      26
258
259 #define NV50_2D_PATTERN_Y8(i0)                                 (0x00000500 + 0x4*(i0))
260 #define NV50_2D_PATTERN_Y8__ESIZE                               0x00000004
261 #define NV50_2D_PATTERN_Y8__LEN                                 0x00000010
262 #define NV50_2D_PATTERN_Y8_Y0__MASK                             0x000000ff
263 #define NV50_2D_PATTERN_Y8_Y0__SHIFT                            0
264 #define NV50_2D_PATTERN_Y8_Y1__MASK                             0x0000ff00
265 #define NV50_2D_PATTERN_Y8_Y1__SHIFT                            8
266 #define NV50_2D_PATTERN_Y8_Y2__MASK                             0x00ff0000
267 #define NV50_2D_PATTERN_Y8_Y2__SHIFT                            16
268 #define NV50_2D_PATTERN_Y8_Y3__MASK                             0xff000000
269 #define NV50_2D_PATTERN_Y8_Y3__SHIFT                            24
270
271 #define NV50_2D_DRAW_SHAPE                                      0x00000580
272 #define NV50_2D_DRAW_SHAPE_POINTS                               0x00000000
273 #define NV50_2D_DRAW_SHAPE_LINES                                0x00000001
274 #define NV50_2D_DRAW_SHAPE_LINE_STRIP                           0x00000002
275 #define NV50_2D_DRAW_SHAPE_TRIANGLES                            0x00000003
276 #define NV50_2D_DRAW_SHAPE_RECTANGLES                           0x00000004
277
278 #define NV50_2D_DRAW_COLOR_FORMAT                               0x00000584
279
280 #define NV50_2D_DRAW_COLOR                                      0x00000588
281
282 #define NV50_2D_UNK58C                                          0x0000058c
283 #define NV50_2D_UNK58C_0                                        0x00000001
284 #define NV50_2D_UNK58C_1                                        0x00000010
285 #define NV50_2D_UNK58C_2                                        0x00000100
286 #define NV50_2D_UNK58C_3                                        0x00001000
287
288 #define NV50_2D_DRAW_POINT16                                    0x000005e0
289 #define NV50_2D_DRAW_POINT16_X__MASK                            0x0000ffff
290 #define NV50_2D_DRAW_POINT16_X__SHIFT                           0
291 #define NV50_2D_DRAW_POINT16_Y__MASK                            0xffff0000
292 #define NV50_2D_DRAW_POINT16_Y__SHIFT                           16
293
294 #define NV50_2D_DRAW_POINT32_X(i0)                             (0x00000600 + 0x8*(i0))
295 #define NV50_2D_DRAW_POINT32_X__ESIZE                           0x00000008
296 #define NV50_2D_DRAW_POINT32_X__LEN                             0x00000040
297
298 #define NV50_2D_DRAW_POINT32_Y(i0)                             (0x00000604 + 0x8*(i0))
299 #define NV50_2D_DRAW_POINT32_Y__ESIZE                           0x00000008
300 #define NV50_2D_DRAW_POINT32_Y__LEN                             0x00000040
301
302 #define NV50_2D_SIFC_BITMAP_ENABLE                              0x00000800
303
304 #define NV50_2D_SIFC_FORMAT                                     0x00000804
305
306 #define NV50_2D_SIFC_BITMAP_FORMAT                              0x00000808
307 #define NV50_2D_SIFC_BITMAP_FORMAT_I1                           0x00000000
308 #define NV50_2D_SIFC_BITMAP_FORMAT_I4                           0x00000001
309 #define NV50_2D_SIFC_BITMAP_FORMAT_I8                           0x00000002
310
311 #define NV50_2D_SIFC_BITMAP_LSB_FIRST                           0x0000080c
312
313 #define NV50_2D_SIFC_BITMAP_LINE_PACK_MODE                      0x00000810
314 #define NV50_2D_SIFC_BITMAP_LINE_PACK_MODE_PACKED               0x00000000
315 #define NV50_2D_SIFC_BITMAP_LINE_PACK_MODE_ALIGN_BYTE           0x00000001
316 #define NV50_2D_SIFC_BITMAP_LINE_PACK_MODE_ALIGN_WORD           0x00000002
317
318 #define NV50_2D_SIFC_BITMAP_COLOR_BIT0                          0x00000814
319
320 #define NV50_2D_SIFC_BITMAP_COLOR_BIT1                          0x00000818
321
322 #define NV50_2D_SIFC_BITMAP_WRITE_BIT0_ENABLE                   0x0000081c
323
324 #define NV50_2D_SIFC_WIDTH                                      0x00000838
325
326 #define NV50_2D_SIFC_HEIGHT                                     0x0000083c
327
328 #define NV50_2D_SIFC_DX_DU_FRACT                                0x00000840
329
330 #define NV50_2D_SIFC_DX_DU_INT                                  0x00000844
331
332 #define NV50_2D_SIFC_DY_DV_FRACT                                0x00000848
333
334 #define NV50_2D_SIFC_DY_DV_INT                                  0x0000084c
335
336 #define NV50_2D_SIFC_DST_X_FRACT                                0x00000850
337
338 #define NV50_2D_SIFC_DST_X_INT                                  0x00000854
339
340 #define NV50_2D_SIFC_DST_Y_FRACT                                0x00000858
341
342 #define NV50_2D_SIFC_DST_Y_INT                                  0x0000085c
343
344 #define NV50_2D_SIFC_DATA                                       0x00000860
345
346 #define NV50_2D_UNK0870                                         0x00000870
347
348 #define NV50_2D_UNK0880                                         0x00000880
349
350 #define NV50_2D_UNK0884                                         0x00000884
351
352 #define NV50_2D_UNK0888                                         0x00000888
353
354 #define NV50_2D_BLIT_CONTROL                                    0x0000088c
355 #define NV50_2D_BLIT_CONTROL_ORIGIN__MASK                       0x00000001
356 #define NV50_2D_BLIT_CONTROL_ORIGIN__SHIFT                      0
357 #define NV50_2D_BLIT_CONTROL_ORIGIN_CENTER                      0x00000000
358 #define NV50_2D_BLIT_CONTROL_ORIGIN_CORNER                      0x00000001
359 #define NV50_2D_BLIT_CONTROL_FILTER__MASK                       0x00000010
360 #define NV50_2D_BLIT_CONTROL_FILTER__SHIFT                      4
361 #define NV50_2D_BLIT_CONTROL_FILTER_POINT_SAMPLE                0x00000000
362 #define NV50_2D_BLIT_CONTROL_FILTER_BILINEAR                    0x00000010
363
364 #define NV50_2D_BLIT_DST_X                                      0x000008b0
365
366 #define NV50_2D_BLIT_DST_Y                                      0x000008b4
367
368 #define NV50_2D_BLIT_DST_W                                      0x000008b8
369
370 #define NV50_2D_BLIT_DST_H                                      0x000008bc
371
372 #define NV50_2D_BLIT_DU_DX_FRACT                                0x000008c0
373
374 #define NV50_2D_BLIT_DU_DX_INT                                  0x000008c4
375
376 #define NV50_2D_BLIT_DV_DY_FRACT                                0x000008c8
377
378 #define NV50_2D_BLIT_DV_DY_INT                                  0x000008cc
379
380 #define NV50_2D_BLIT_SRC_X_FRACT                                0x000008d0
381
382 #define NV50_2D_BLIT_SRC_X_INT                                  0x000008d4
383
384 #define NV50_2D_BLIT_SRC_Y_FRACT                                0x000008d8
385
386 #define NV50_2D_BLIT_SRC_Y_INT                                  0x000008dc
387
388 #define NVC0_2D_FIRMWARE(i0)                                   (0x000008e0 + 0x4*(i0))
389 #define NVC0_2D_FIRMWARE__ESIZE                                 0x00000004
390 #define NVC0_2D_FIRMWARE__LEN                                   0x00000020
391
392
393 #endif /* NV50_2D_XML */