Tizen 2.0 Release
[profile/ivi/osmesa.git] / src / gallium / drivers / nv50 / nv50_texture.xml.h
1 #ifndef NV50_TEXTURE_XML
2 #define NV50_TEXTURE_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_texture.xml (   8377 bytes, from 2011-02-12 12:05:21)
12 - copyright.xml    (   6452 bytes, from 2010-11-25 23:28:20)
13
14 Copyright (C) 2006-2011 by the following authors:
15 - Artur Huillet <arthur.huillet@free.fr> (ahuillet)
16 - Ben Skeggs (darktama, darktama_)
17 - B. R. <koala_br@users.sourceforge.net> (koala_br)
18 - Carlos Martin <carlosmn@users.sf.net> (carlosmn)
19 - Christoph Bumiller <e0425955@student.tuwien.ac.at> (calim, chrisbmr)
20 - Dawid Gajownik <gajownik@users.sf.net> (gajownik)
21 - Dmitry Baryshkov
22 - Dmitry Eremin-Solenikov <lumag@users.sf.net> (lumag)
23 - EdB <edb_@users.sf.net> (edb_)
24 - Erik Waling <erikwailing@users.sf.net> (erikwaling)
25 - Francisco Jerez <currojerez@riseup.net> (curro)
26 - imirkin <imirkin@users.sf.net> (imirkin)
27 - jb17bsome <jb17bsome@bellsouth.net> (jb17bsome)
28 - Jeremy Kolb <kjeremy@users.sf.net> (kjeremy)
29 - Laurent Carlier <lordheavym@gmail.com> (lordheavy)
30 - Luca Barbieri <luca@luca-barbieri.com> (lb, lb1)
31 - Maarten Maathuis <madman2003@gmail.com> (stillunknown)
32 - Marcin Koƛcielnicki <koriakin@0x04.net> (mwk, koriakin)
33 - Mark Carey <mark.carey@gmail.com> (careym)
34 - Matthieu Castet <matthieu.castet@parrot.com> (mat-c)
35 - nvidiaman <nvidiaman@users.sf.net> (nvidiaman)
36 - Patrice Mandin <patmandin@gmail.com> (pmandin, pmdata)
37 - Pekka Paalanen <pq@iki.fi> (pq, ppaalanen)
38 - Peter Popov <ironpeter@users.sf.net> (ironpeter)
39 - Richard Hughes <hughsient@users.sf.net> (hughsient)
40 - Rudi Cilibrasi <cilibrar@users.sf.net> (cilibrar)
41 - Serge Martin
42 - Simon Raffeiner
43 - Stephane Loeuillet <leroutier@users.sf.net> (leroutier)
44 - Stephane Marchesin <stephane.marchesin@gmail.com> (marcheu)
45 - sturmflut <sturmflut@users.sf.net> (sturmflut)
46 - Sylvain Munaut <tnt@246tNt.com>
47 - Victor Stinner <victor.stinner@haypocalc.com> (haypo)
48 - Wladmir van der Laan <laanwj@gmail.com> (miathan6)
49 - Younes Manton <younes.m@gmail.com> (ymanton)
50
51 Permission is hereby granted, free of charge, to any person obtaining
52 a copy of this software and associated documentation files (the
53 "Software"), to deal in the Software without restriction, including
54 without limitation the rights to use, copy, modify, merge, publish,
55 distribute, sublicense, and/or sell copies of the Software, and to
56 permit persons to whom the Software is furnished to do so, subject to
57 the following conditions:
58
59 The above copyright notice and this permission notice (including the
60 next paragraph) shall be included in all copies or substantial
61 portions of the Software.
62
63 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
64 EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
65 MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
66 IN NO EVENT SHALL THE COPYRIGHT OWNER(S) AND/OR ITS SUPPLIERS BE
67 LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
68 OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
69 WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
70 */
71
72
73 #define NV50_TIC_MAP_ZERO                                       0x00000000
74 #define NV50_TIC_MAP_C0                                         0x00000002
75 #define NV50_TIC_MAP_C1                                         0x00000003
76 #define NV50_TIC_MAP_C2                                         0x00000004
77 #define NV50_TIC_MAP_C3                                         0x00000005
78 #define NV50_TIC_MAP_ONE_INT                                    0x00000006
79 #define NV50_TIC_MAP_ONE_FLOAT                                  0x00000007
80 #define NV50_TIC_TYPE_SNORM                                     0x00000001
81 #define NV50_TIC_TYPE_UNORM                                     0x00000002
82 #define NV50_TIC_TYPE_SINT                                      0x00000003
83 #define NV50_TIC_TYPE_UINT                                      0x00000004
84 #define NV50_TIC_TYPE_SSCALED                                   0x00000005
85 #define NV50_TIC_TYPE_USCALED                                   0x00000006
86 #define NV50_TIC_TYPE_FLOAT                                     0x00000007
87 #define NV50_TSC_WRAP_REPEAT                                    0x00000000
88 #define NV50_TSC_WRAP_MIRROR_REPEAT                             0x00000001
89 #define NV50_TSC_WRAP_CLAMP_TO_EDGE                             0x00000002
90 #define NV50_TSC_WRAP_CLAMP_TO_BORDER                           0x00000003
91 #define NV50_TSC_WRAP_CLAMP                                     0x00000004
92 #define NV50_TSC_WRAP_MIRROR_CLAMP_TO_EDGE                      0x00000005
93 #define NV50_TSC_WRAP_MIRROR_CLAMP_TO_BORDER                    0x00000006
94 #define NV50_TSC_WRAP_MIRROR_CLAMP                              0x00000007
95 #define NV50_TIC__SIZE                                          0x00000020
96 #define NV50_TIC_0                                              0x00000000
97 #define NV50_TIC_0_MAPA__MASK                                   0x38000000
98 #define NV50_TIC_0_MAPA__SHIFT                                  27
99 #define NV50_TIC_0_MAPB__MASK                                   0x07000000
100 #define NV50_TIC_0_MAPB__SHIFT                                  24
101 #define NV50_TIC_0_MAPG__MASK                                   0x00e00000
102 #define NV50_TIC_0_MAPG__SHIFT                                  21
103 #define NV50_TIC_0_MAPR__MASK                                   0x001c0000
104 #define NV50_TIC_0_MAPR__SHIFT                                  18
105 #define NV50_TIC_0_TYPE3__MASK                                  0x00038000
106 #define NV50_TIC_0_TYPE3__SHIFT                                 15
107 #define NV50_TIC_0_TYPE2__MASK                                  0x00007000
108 #define NV50_TIC_0_TYPE2__SHIFT                                 12
109 #define NV50_TIC_0_TYPE1__MASK                                  0x00000e00
110 #define NV50_TIC_0_TYPE1__SHIFT                                 9
111 #define NV50_TIC_0_TYPE0__MASK                                  0x000001c0
112 #define NV50_TIC_0_TYPE0__SHIFT                                 6
113 #define NV50_TIC_0_FMT__MASK                                    0x0000003f
114 #define NV50_TIC_0_FMT__SHIFT                                   0
115 #define NV50_TIC_0_FMT_32_32_32_32                              0x00000001
116 #define NV50_TIC_0_FMT_16_16_16_16                              0x00000003
117 #define NV50_TIC_0_FMT_32_32                                    0x00000004
118 #define NV50_TIC_0_FMT_32_8                                     0x00000005
119 #define NV50_TIC_0_FMT_8_8_8_8                                  0x00000008
120 #define NV50_TIC_0_FMT_2_10_10_10                               0x00000009
121 #define NV50_TIC_0_FMT_16_16                                    0x0000000c
122 #define NV50_TIC_0_FMT_8_24                                     0x0000000d
123 #define NV50_TIC_0_FMT_24_8                                     0x0000000e
124 #define NV50_TIC_0_FMT_32                                       0x0000000f
125 #define NV50_TIC_0_FMT_BPTC_FLOAT                               0x00000010
126 #define NV50_TIC_0_FMT_BPTC_UFLOAT                              0x00000011
127 #define NV50_TIC_0_FMT_4_4_4_4                                  0x00000012
128 #define NV50_TIC_0_FMT_5_5_5_1                                  0x00000013
129 #define NV50_TIC_0_FMT_1_5_5_5                                  0x00000014
130 #define NV50_TIC_0_FMT_5_6_5                                    0x00000015
131 #define NV50_TIC_0_FMT_6_5_5                                    0x00000016
132 #define NV50_TIC_0_FMT_BPTC                                     0x00000017
133 #define NV50_TIC_0_FMT_8_8                                      0x00000018
134 #define NV50_TIC_0_FMT_16                                       0x0000001b
135 #define NV50_TIC_0_FMT_8                                        0x0000001d
136 #define NV50_TIC_0_FMT_4_4                                      0x0000001e
137 #define NV50_TIC_0_FMT_BITMAP_8X8                               0x0000001f
138 #define NV50_TIC_0_FMT_E5_9_9_9                                 0x00000020
139 #define NV50_TIC_0_FMT_10_11_11                                 0x00000021
140 #define NV50_TIC_0_FMT_C1_C2_C1_C0                              0x00000022
141 #define NV50_TIC_0_FMT_C2_C1_C0_C1                              0x00000023
142 #define NV50_TIC_0_FMT_DXT1                                     0x00000024
143 #define NV50_TIC_0_FMT_DXT3                                     0x00000025
144 #define NV50_TIC_0_FMT_DXT5                                     0x00000026
145 #define NV50_TIC_0_FMT_RGTC1                                    0x00000027
146 #define NV50_TIC_0_FMT_RGTC2                                    0x00000028
147 #define NV50_TIC_0_FMT_Z24S8                                    0x00000029
148 #define NV50_TIC_0_FMT_S8Z24                                    0x0000002a
149 #define NV50_TIC_0_FMT_X8Z24                                    0x0000002b
150 #define NV50_TIC_0_FMT_C8Z24_MS4_CS4                            0x0000002c
151 #define NV50_TIC_0_FMT_C8Z24_MS8_CS8                            0x0000002d
152 #define NV50_TIC_0_FMT_C8Z24_MS4_CS12                           0x0000002e
153 #define NV50_TIC_0_FMT_Z32                                      0x0000002f
154 #define NV50_TIC_0_FMT_X24S8Z32                                 0x00000030
155 #define NV50_TIC_0_FMT_X16C8S8X8Z24_MS4_CS4                     0x00000031
156 #define NV50_TIC_0_FMT_X16C8S8X8Z24_MS8_CS8                     0x00000032
157 #define NV50_TIC_0_FMT_X16C8X8Z32_MS4_CS4                       0x00000033
158 #define NV50_TIC_0_FMT_X16C8X8Z32_MS8_CS8                       0x00000034
159 #define NV50_TIC_0_FMT_X16C8S8Z32_MS4_CS4                       0x00000035
160 #define NV50_TIC_0_FMT_X16C8S8Z32_MS8_CS8                       0x00000036
161 #define NV50_TIC_0_FMT_X16C8S8X8Z24_MS4_CS12                    0x00000037
162 #define NV50_TIC_0_FMT_X16C8X8Z32_MS4_CS12                      0x00000038
163 #define NV50_TIC_0_FMT_X16C8S8Z32_MS4_CS12                      0x00000039
164 #define NV50_TIC_0_FMT_Z16                                      0x0000003a
165
166 #define NV50_TIC_1                                              0x00000004
167 #define NV50_TIC_1_OFFSET_LOW__MASK                             0xffffffff
168 #define NV50_TIC_1_OFFSET_LOW__SHIFT                            0
169
170 #define NV50_TIC_2                                              0x00000008
171 #define NV50_TIC_2_OFFSET_HIGH__MASK                            0x000000ff
172 #define NV50_TIC_2_OFFSET_HIGH__SHIFT                           0
173 #define NV50_TIC_2_COLORSPACE_SRGB                              0x00000400
174 #define NV50_TIC_2_TARGET__MASK                                 0x0003c000
175 #define NV50_TIC_2_TARGET__SHIFT                                14
176 #define NV50_TIC_2_TARGET_1D                                    0x00000000
177 #define NV50_TIC_2_TARGET_2D                                    0x00004000
178 #define NV50_TIC_2_TARGET_3D                                    0x00008000
179 #define NV50_TIC_2_TARGET_CUBE                                  0x0000c000
180 #define NV50_TIC_2_TARGET_1D_ARRAY                              0x00010000
181 #define NV50_TIC_2_TARGET_2D_ARRAY                              0x00014000
182 #define NV50_TIC_2_TARGET_BUFFER                                0x00018000
183 #define NV50_TIC_2_TARGET_RECT                                  0x0001c000
184 #define NV50_TIC_2_TARGET_CUBE_ARRAY                            0x00020000
185 #define NV50_TIC_2_LINEAR                                       0x00040000
186 #define NV50_TIC_2_TILE_MODE_X__MASK                            0x00380000
187 #define NV50_TIC_2_TILE_MODE_X__SHIFT                           19
188 #define NV50_TIC_2_TILE_MODE_Y__MASK                            0x01c00000
189 #define NV50_TIC_2_TILE_MODE_Y__SHIFT                           22
190 #define NV50_TIC_2_TILE_MODE_Z__MASK                            0x0e000000
191 #define NV50_TIC_2_TILE_MODE_Z__SHIFT                           25
192 #define NV50_TIC_2_2D_UNK0258__MASK                             0x30000000
193 #define NV50_TIC_2_2D_UNK0258__SHIFT                            28
194 #define NV50_TIC_2_NO_BORDER                                    0x40000000
195 #define NV50_TIC_2_NORMALIZED_COORDS                            0x80000000
196
197 #define NV50_TIC_3                                              0x0000000c
198 #define NV50_TIC_3_PITCH__MASK                                  0xffffffff
199 #define NV50_TIC_3_PITCH__SHIFT                                 0
200
201 #define NV50_TIC_4                                              0x00000010
202 #define NV50_TIC_4_WIDTH__MASK                                  0xffffffff
203 #define NV50_TIC_4_WIDTH__SHIFT                                 0
204
205 #define NV50_TIC_5                                              0x00000014
206 #define NV50_TIC_5_LAST_LEVEL__MASK                             0xf0000000
207 #define NV50_TIC_5_LAST_LEVEL__SHIFT                            28
208 #define NV50_TIC_5_DEPTH__MASK                                  0x0fff0000
209 #define NV50_TIC_5_DEPTH__SHIFT                                 16
210 #define NV50_TIC_5_HEIGHT__MASK                                 0x0000ffff
211 #define NV50_TIC_5_HEIGHT__SHIFT                                0
212
213 #define NV50_TIC_7                                              0x0000001c
214 #define NV50_TIC_7_BASE_LEVEL__MASK                             0x0000000f
215 #define NV50_TIC_7_BASE_LEVEL__SHIFT                            0
216 #define NV50_TIC_7_MAX_LEVEL__MASK                              0x000000f0
217 #define NV50_TIC_7_MAX_LEVEL__SHIFT                             4
218
219 #define NV50_TSC__SIZE                                          0x00000020
220 #define NV50_TSC_0                                              0x00000000
221 #define NV50_TSC_0_WRAPS__MASK                                  0x00000007
222 #define NV50_TSC_0_WRAPS__SHIFT                                 0
223 #define NV50_TSC_0_WRAPT__MASK                                  0x00000038
224 #define NV50_TSC_0_WRAPT__SHIFT                                 3
225 #define NV50_TSC_0_WRAPR__MASK                                  0x000001c0
226 #define NV50_TSC_0_WRAPR__SHIFT                                 6
227 #define NV50_TSC_0_SHADOW_COMPARE_ENABLE                        0x00000200
228 #define NV50_TSC_0_SHADOW_COMPARE_FUNC__MASK                    0x00001c00
229 #define NV50_TSC_0_SHADOW_COMPARE_FUNC__SHIFT                   10
230 #define NV50_TSC_0_BOX_S__MASK                                  0x0001c000
231 #define NV50_TSC_0_BOX_S__SHIFT                                 14
232 #define NV50_TSC_0_BOX_T__MASK                                  0x000e0000
233 #define NV50_TSC_0_BOX_T__SHIFT                                 17
234 #define NV50_TSC_0_ANISOTROPY_MASK__MASK                        0x00700000
235 #define NV50_TSC_0_ANISOTROPY_MASK__SHIFT                       20
236
237 #define NV50_TSC_1                                              0x00000004
238 #define NV50_TSC_1_UNKN_ANISO_15                                0x10000000
239 #define NV50_TSC_1_UNKN_ANISO_35                                0x18000000
240 #define NV50_TSC_1_MAGF__MASK                                   0x00000003
241 #define NV50_TSC_1_MAGF__SHIFT                                  0
242 #define NV50_TSC_1_MAGF_NEAREST                                 0x00000001
243 #define NV50_TSC_1_MAGF_LINEAR                                  0x00000002
244 #define NV50_TSC_1_MINF__MASK                                   0x00000030
245 #define NV50_TSC_1_MINF__SHIFT                                  4
246 #define NV50_TSC_1_MINF_NEAREST                                 0x00000010
247 #define NV50_TSC_1_MINF_LINEAR                                  0x00000020
248 #define NV50_TSC_1_MIPF__MASK                                   0x000000c0
249 #define NV50_TSC_1_MIPF__SHIFT                                  6
250 #define NV50_TSC_1_MIPF_NONE                                    0x00000040
251 #define NV50_TSC_1_MIPF_NEAREST                                 0x00000080
252 #define NV50_TSC_1_MIPF_LINEAR                                  0x000000c0
253 #define NV50_TSC_1_LOD_BIAS__MASK                               0x01fff000
254 #define NV50_TSC_1_LOD_BIAS__SHIFT                              12
255
256 #define NV50_TSC_2                                              0x00000008
257 #define NV50_TSC_2_MIN_LOD__MASK                                0x00000fff
258 #define NV50_TSC_2_MIN_LOD__SHIFT                               0
259 #define NV50_TSC_2_MAX_LOD__MASK                                0x00fff000
260 #define NV50_TSC_2_MAX_LOD__SHIFT                               12
261
262 #define NV50_TSC_4                                              0x00000010
263 #define NV50_TSC_4_BORDER_COLOR_RED__MASK                       0xffffffff
264 #define NV50_TSC_4_BORDER_COLOR_RED__SHIFT                      0
265
266 #define NV50_TSC_5                                              0x00000014
267 #define NV50_TSC_5_BORDER_COLOR_GREEN__MASK                     0xffffffff
268 #define NV50_TSC_5_BORDER_COLOR_GREEN__SHIFT                    0
269
270 #define NV50_TSC_6                                              0x00000018
271 #define NV50_TSC_6_BORDER_COLOR_BLUE__MASK                      0xffffffff
272 #define NV50_TSC_6_BORDER_COLOR_BLUE__SHIFT                     0
273
274 #define NV50_TSC_7                                              0x0000001c
275 #define NV50_TSC_7_BORDER_COLOR_ALPHA__MASK                     0xffffffff
276 #define NV50_TSC_7_BORDER_COLOR_ALPHA__SHIFT                    0
277
278
279 #endif /* NV50_TEXTURE_XML */