Home | History | Annotate | Download | only in nouveau
      1 #ifndef RNNDB_NV_OBJECT_XML
      2 #define RNNDB_NV_OBJECT_XML
      3 
      4 /* WARNING ABOUT NOT EDITING AUTOGENERATED FILE IGNORED, _CLASS SUFFIX HAS
      5  * BEEN ADDED TO ALL THE OBJECT CLASS DEFINITIONS TO AVOID CONFLICTS WITH
      6  * THE RING MACROS WE WANT TO USE
      7  */
      8 
      9 /* Autogenerated file, DO NOT EDIT manually!
     10 
     11 This file was generated by the rules-ng-ng headergen tool in this git repository:
     12 http://0x04.net/cgit/index.cgi/rules-ng-ng
     13 git clone git://0x04.net/rules-ng-ng
     14 
     15 The rules-ng-ng source files this header was generated from are:
     16 - rnndb/nv_object.xml    (  12672 bytes, from 2011-07-17 12:14:32)
     17 - ./rnndb/copyright.xml  (   6452 bytes, from 2011-07-09 13:43:58)
     18 - ./rnndb/nvchipsets.xml (   3701 bytes, from 2012-04-06 13:21:15)
     19 - ./rnndb/nv_defs.xml    (   4437 bytes, from 2011-07-09 13:43:58)
     20 - ./rnndb/nv50_defs.xml  (   5468 bytes, from 2011-07-09 13:43:58)
     21 
     22 Copyright (C) 2006-2011 by the following authors:
     23 - Artur Huillet <arthur.huillet (at) free.fr> (ahuillet)
     24 - Ben Skeggs (darktama, darktama_)
     25 - B. R. <koala_br (at) users.sourceforge.net> (koala_br)
     26 - Carlos Martin <carlosmn (at) users.sf.net> (carlosmn)
     27 - Christoph Bumiller <e0425955 (at) student.tuwien.ac.at> (calim, chrisbmr)
     28 - Dawid Gajownik <gajownik (at) users.sf.net> (gajownik)
     29 - Dmitry Baryshkov
     30 - Dmitry Eremin-Solenikov <lumag (at) users.sf.net> (lumag)
     31 - EdB <edb_ (at) users.sf.net> (edb_)
     32 - Erik Waling <erikwailing (at) users.sf.net> (erikwaling)
     33 - Francisco Jerez <currojerez (at) riseup.net> (curro)
     34 - imirkin <imirkin (at) users.sf.net> (imirkin)
     35 - jb17bsome <jb17bsome (at) bellsouth.net> (jb17bsome)
     36 - Jeremy Kolb <kjeremy (at) users.sf.net> (kjeremy)
     37 - Laurent Carlier <lordheavym (at) gmail.com> (lordheavy)
     38 - Luca Barbieri <luca (at) luca-barbieri.com> (lb, lb1)
     39 - Maarten Maathuis <madman2003 (at) gmail.com> (stillunknown)
     40 - Marcin Kocielnicki <koriakin (at) 0x04.net> (mwk, koriakin)
     41 - Mark Carey <mark.carey (at) gmail.com> (careym)
     42 - Matthieu Castet <matthieu.castet (at) parrot.com> (mat-c)
     43 - nvidiaman <nvidiaman (at) users.sf.net> (nvidiaman)
     44 - Patrice Mandin <patmandin (at) gmail.com> (pmandin, pmdata)
     45 - Pekka Paalanen <pq (at) iki.fi> (pq, ppaalanen)
     46 - Peter Popov <ironpeter (at) users.sf.net> (ironpeter)
     47 - Richard Hughes <hughsient (at) users.sf.net> (hughsient)
     48 - Rudi Cilibrasi <cilibrar (at) users.sf.net> (cilibrar)
     49 - Serge Martin
     50 - Simon Raffeiner
     51 - Stephane Loeuillet <leroutier (at) users.sf.net> (leroutier)
     52 - Stephane Marchesin <stephane.marchesin (at) gmail.com> (marcheu)
     53 - sturmflut <sturmflut (at) users.sf.net> (sturmflut)
     54 - Sylvain Munaut <tnt (at) 246tNt.com>
     55 - Victor Stinner <victor.stinner (at) haypocalc.com> (haypo)
     56 - Wladmir van der Laan <laanwj (at) gmail.com> (miathan6)
     57 - Younes Manton <younes.m (at) gmail.com> (ymanton)
     58 
     59 Permission is hereby granted, free of charge, to any person obtaining
     60 a copy of this software and associated documentation files (the
     61 "Software"), to deal in the Software without restriction, including
     62 without limitation the rights to use, copy, modify, merge, publish,
     63 distribute, sublicense, and/or sell copies of the Software, and to
     64 permit persons to whom the Software is furnished to do so, subject to
     65 the following conditions:
     66 
     67 The above copyright notice and this permission notice (including the
     68 next paragraph) shall be included in all copies or substantial
     69 portions of the Software.
     70 
     71 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
     72 EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
     73 MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
     74 IN NO EVENT SHALL THE COPYRIGHT OWNER(S) AND/OR ITS SUPPLIERS BE
     75 LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
     76 OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
     77 WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
     78 */
     79 
     80 
     81 #define NV01_DMA_FROM_MEMORY_CLASS				0x00000002
     82 #define NV01_DMA_TO_MEMORY_CLASS				0x00000003
     83 #define NV01_NULL_CLASS						0x00000030
     84 #define NV03_DMA_IN_MEMORY_CLASS				0x0000003d
     85 #define NV01_OP_CLIP_CLASS					0x00000010
     86 #define NV01_OP_BLEND_AND_CLASS					0x00000011
     87 #define NV01_BETA_CLASS						0x00000012
     88 #define NV04_BETA4_CLASS					0x00000072
     89 #define NV01_OP_ROP_AND_CLASS					0x00000013
     90 #define NV01_ROP_CLASS						0x00000014
     91 #define NV03_ROP_CLASS						0x00000043
     92 #define NV01_OP_CHROMA_CLASS					0x00000015
     93 #define NV01_OP_PLANE_SWITCH_CLASS				0x00000016
     94 #define NV01_CHROMA_CLASS					0x00000017
     95 #define NV04_CHROMA_CLASS					0x00000057
     96 #define NV01_PATTERN_CLASS					0x00000018
     97 #define NV04_PATTERN_CLASS					0x00000044
     98 #define NV01_CLIP_CLASS						0x00000019
     99 #define NV01_OP_SRCCOPY_AND_CLASS				0x00000064
    100 #define NV03_OP_SRCCOPY_CLASS					0x00000065
    101 #define NV04_OP_SRCCOPY_PREMULT_CLASS				0x00000066
    102 #define NV04_OP_BLEND_PREMULT_CLASS				0x00000067
    103 #define NV01_POINT_CLASS					0x0000001a
    104 #define NV01_LINE_CLASS						0x0000001b
    105 #define NV01_LIN_CLASS						0x0000001c
    106 #define NV04_LIN_CLASS						0x0000005c
    107 #define NV30_LIN_CLASS						0x0000035c
    108 #define NV40_LIN_CLASS						0x0000305c
    109 #define NV01_TRI_CLASS						0x0000001d
    110 #define NV04_TRI_CLASS						0x0000005d
    111 #define NV01_RECT_CLASS						0x0000001e
    112 #define NV04_RECT_CLASS						0x0000005e
    113 #define NV01_BLIT_CLASS						0x0000001f
    114 #define NV04_BLIT_CLASS						0x0000005f
    115 #define NV15_BLIT_CLASS						0x0000009f
    116 #define NV01_IFROMMEM_CLASS					0x00000020
    117 #define NV01_IFC_CLASS						0x00000021
    118 #define NV04_IFC_CLASS						0x00000061
    119 #define NV05_IFC_CLASS						0x00000065
    120 #define NV10_IFC_CLASS						0x0000008a
    121 #define NV30_IFC_CLASS						0x0000038a
    122 #define NV40_IFC_CLASS						0x0000308a
    123 #define NV01_BITMAP_CLASS					0x00000022
    124 #define NV01_ITOMEM_CLASS					0x00000025
    125 #define NV03_SIFC_CLASS						0x00000036
    126 #define NV04_SIFC_CLASS						0x00000076
    127 #define NV05_SIFC_CLASS						0x00000066
    128 #define NV30_SIFC_CLASS						0x00000366
    129 #define NV40_SIFC_CLASS						0x00003066
    130 #define NV03_SIFM_CLASS						0x00000037
    131 #define NV04_SIFM_CLASS						0x00000077
    132 #define NV05_SIFM_CLASS						0x00000063
    133 #define NV10_SIFM_CLASS						0x00000089
    134 #define NV30_SIFM_CLASS						0x00000389
    135 #define NV40_SIFM_CLASS						0x00003089
    136 #define NV50_SIFM_CLASS						0x00005089
    137 #define NV03_SYFM_CLASS						0x00000038
    138 #define NV03_GDI_CLASS						0x0000004b
    139 #define NV04_GDI_CLASS						0x0000004a
    140 #define NV04_SURFACE_SWZ_CLASS					0x00000052
    141 #define NV20_SURFACE_SWZ_CLASS					0x0000009e
    142 #define NV30_SURFACE_SWZ_CLASS					0x0000039e
    143 #define NV40_SURFACE_SWZ_CLASS					0x0000309e
    144 #define NV03_SURFACE_DST_CLASS					0x00000058
    145 #define NV03_SURFACE_SRC_CLASS					0x00000059
    146 #define NV04_SURFACE_2D_CLASS					0x00000042
    147 #define NV10_SURFACE_2D_CLASS					0x00000062
    148 #define NV30_SURFACE_2D_CLASS					0x00000362
    149 #define NV40_SURFACE_2D_CLASS					0x00003062
    150 #define NV50_SURFACE_2D_CLASS					0x00005062
    151 #define NV04_INDEX_CLASS					0x00000060
    152 #define NV05_INDEX_CLASS					0x00000064
    153 #define NV30_INDEX_CLASS					0x00000364
    154 #define NV40_INDEX_CLASS					0x00003064
    155 #define NV10_TEXUPLOAD_CLASS					0x0000007b
    156 #define NV30_TEXUPLOAD_CLASS					0x0000037b
    157 #define NV40_TEXUPLOAD_CLASS					0x0000307b
    158 #define NV04_DVD_SUBPICTURE_CLASS				0x00000038
    159 #define NV10_DVD_SUBPICTURE_CLASS				0x00000088
    160 #define NV03_M2MF_CLASS						0x00000039
    161 #define NV50_M2MF_CLASS						0x00005039
    162 #define NVC0_M2MF_CLASS						0x00009039
    163 #define NV03_SURFACE_COLOR_CLASS				0x0000005a
    164 #define NV03_SURFACE_ZETA_CLASS					0x0000005b
    165 #define NV03_TEXTURED_TRIANGLE_CLASS				0x00000048
    166 #define NV04_TEXTURED_TRIANGLE_CLASS				0x00000054
    167 #define NV10_TEXTURED_TRIANGLE_CLASS				0x00000094
    168 #define NV04_SURFACE_3D_CLASS					0x00000053
    169 #define NV10_SURFACE_3D_CLASS					0x00000093
    170 #define NV04_MULTITEX_TRIANGLE_CLASS				0x00000055
    171 #define NV10_MULTITEX_TRIANGLE_CLASS				0x00000095
    172 #define NV10_3D_CLASS						0x00000056
    173 #define NV15_3D_CLASS						0x00000096
    174 #define NV11_3D_CLASS						0x00000098
    175 #define NV17_3D_CLASS						0x00000099
    176 #define NV20_3D_CLASS						0x00000097
    177 #define NV25_3D_CLASS						0x00000597
    178 #define NV30_3D_CLASS						0x00000397
    179 #define NV35_3D_CLASS						0x00000497
    180 #define NV34_3D_CLASS						0x00000697
    181 #define NV40_3D_CLASS						0x00004097
    182 #define NV44_3D_CLASS						0x00004497
    183 #define NV50_3D_CLASS						0x00005097
    184 #define NV84_3D_CLASS						0x00008297
    185 #define NVA0_3D_CLASS						0x00008397
    186 #define NVA3_3D_CLASS						0x00008597
    187 #define NVAF_3D_CLASS						0x00008697
    188 #define NVC0_3D_CLASS						0x00009097
    189 #define NVC1_3D_CLASS						0x00009197
    190 #define NVC8_3D_CLASS						0x00009297
    191 #define NVE4_3D_CLASS						0x0000a097
    192 #define NV50_2D_CLASS						0x0000502d
    193 #define NVC0_2D_CLASS						0x0000902d
    194 #define NV50_COMPUTE_CLASS					0x000050c0
    195 #define NVA3_COMPUTE_CLASS					0x000085c0
    196 #define NVC0_COMPUTE_CLASS					0x000090c0
    197 #define NVC8_COMPUTE_CLASS					0x000092c0
    198 #define NVE4_COMPUTE_CLASS					0x0000a0c0
    199 #define NV84_CRYPT_CLASS					0x000074c1
    200 #define BLOB_NVC0_PCOPY1_CLASS					0x000090b8
    201 #define BLOB_NVC0_PCOPY0_CLASS					0x000090b5
    202 #define NVE4_P2MF_CLASS						0x0000a040
    203 #define NV31_MPEG_CLASS						0x00003174
    204 #define NV84_MPEG_CLASS						0x00008274
    205 
    206 #define NV01_SUBCHAN__SIZE					0x00008000
    207 #define NV01_SUBCHAN						0x00000000
    208 
    209 #define NV01_SUBCHAN_OBJECT					0x00000000
    210 
    211 
    212 #define NV84_SUBCHAN_SEMAPHORE_ADDRESS_HIGH			0x00000010
    213 
    214 #define NV84_SUBCHAN_SEMAPHORE_ADDRESS_LOW			0x00000014
    215 
    216 #define NV84_SUBCHAN_SEMAPHORE_SEQUENCE				0x00000018
    217 
    218 #define NV84_SUBCHAN_SEMAPHORE_TRIGGER				0x0000001c
    219 #define NV84_SUBCHAN_SEMAPHORE_TRIGGER_ACQUIRE_EQUAL		0x00000001
    220 #define NV84_SUBCHAN_SEMAPHORE_TRIGGER_WRITE_LONG		0x00000002
    221 #define NV84_SUBCHAN_SEMAPHORE_TRIGGER_ACQUIRE_GEQUAL		0x00000004
    222 
    223 #define NV84_SUBCHAN_NOTIFY_INTR				0x00000020
    224 
    225 #define NV84_SUBCHAN_WRCACHE_FLUSH				0x00000024
    226 
    227 #define NV10_SUBCHAN_REF_CNT					0x00000050
    228 
    229 
    230 #define NV11_SUBCHAN_DMA_SEMAPHORE				0x00000060
    231 
    232 #define NV11_SUBCHAN_SEMAPHORE_OFFSET				0x00000064
    233 
    234 #define NV11_SUBCHAN_SEMAPHORE_ACQUIRE				0x00000068
    235 
    236 #define NV11_SUBCHAN_SEMAPHORE_RELEASE				0x0000006c
    237 
    238 #define NV40_SUBCHAN_YIELD					0x00000080
    239 
    240 #define NV01_GRAPH						0x00000000
    241 
    242 #define NV04_GRAPH_NOP						0x00000100
    243 
    244 #define NV04_GRAPH_NOTIFY					0x00000104
    245 #define NV04_GRAPH_NOTIFY_WRITE					0x00000000
    246 #define NV04_GRAPH_NOTIFY_WRITE_AND_AWAKEN			0x00000001
    247 
    248 #define NVC0_GRAPH_NOTIFY_ADDRESS_HIGH				0x00000104
    249 
    250 #define NVC0_GRAPH_NOTIFY_ADDRESS_LOW				0x00000108
    251 
    252 #define NVC0_GRAPH_NOTIFY					0x0000010c
    253 #define NVC0_GRAPH_NOTIFY_WRITE					0x00000000
    254 #define NVC0_GRAPH_NOTIFY_WRITE_AND_AWAKEN			0x00000001
    255 
    256 #define NV50_GRAPH_SERIALIZE					0x00000110
    257 
    258 #define NVC0_GRAPH_MACRO_UPLOAD_POS				0x00000114
    259 
    260 #define NVC0_GRAPH_MACRO_UPLOAD_DATA				0x00000118
    261 
    262 #define NVC0_GRAPH_MACRO_ID					0x0000011c
    263 
    264 #define NVC0_GRAPH_MACRO_POS					0x00000120
    265 
    266 #define NVA3_GRAPH_UNK0120					0x00000120
    267 
    268 #define NVA3_GRAPH_UNK0124					0x00000124
    269 
    270 #define NVC0_GRAPH_UNK0124					0x00000124
    271 
    272 #define NVC0_GRAPH_COND_ADDRESS_HIGH				0x00000130
    273 
    274 #define NVC0_GRAPH_COND_ADDRESS_LOW				0x00000134
    275 
    276 #define NVC0_GRAPH_COND_MODE					0x00000138
    277 #define NVC0_GRAPH_COND_MODE_NEVER				0x00000000
    278 #define NVC0_GRAPH_COND_MODE_ALWAYS				0x00000001
    279 #define NVC0_GRAPH_COND_MODE_RES_NON_ZERO			0x00000002
    280 #define NVC0_GRAPH_COND_MODE_EQUAL				0x00000003
    281 #define NVC0_GRAPH_COND_MODE_NOT_EQUAL				0x00000004
    282 
    283 #define NVC0_GRAPH_UNK013C					0x0000013c
    284 
    285 #define NV40_GRAPH_PM_TRIGGER					0x00000140
    286 
    287 #define NVC0_GRAPH_UNK0150					0x00000150
    288 
    289 #define NVC0_GRAPH_UNK0154					0x00000154
    290 
    291 #define NVC0_GRAPH_SCRATCH(i0)				       (0x00003400 + 0x4*(i0))
    292 #define NVC0_GRAPH_SCRATCH__ESIZE				0x00000004
    293 #define NVC0_GRAPH_SCRATCH__LEN					0x00000080
    294 
    295 #define NVC0_GRAPH_MACRO(i0)				       (0x00003800 + 0x8*(i0))
    296 #define NVC0_GRAPH_MACRO__ESIZE					0x00000008
    297 #define NVC0_GRAPH_MACRO__LEN					0x00000080
    298 
    299 #define NVC0_GRAPH_MACRO_PARAM(i0)			       (0x00003804 + 0x8*(i0))
    300 #define NVC0_GRAPH_MACRO_PARAM__ESIZE				0x00000008
    301 #define NVC0_GRAPH_MACRO_PARAM__LEN				0x00000080
    302 
    303 
    304 #endif /* RNNDB_NV_OBJECT_XML */
    305