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 */ 394