]> Git Repo - linux.git/blob - drivers/gpu/drm/vmwgfx/device_include/svga3d_surfacedefs.h
Merge patch series "riscv: Extension parsing fixes"
[linux.git] / drivers / gpu / drm / vmwgfx / device_include / svga3d_surfacedefs.h
1 /**********************************************************
2  * Copyright 2008-2021 VMware, Inc.
3  * SPDX-License-Identifier: GPL-2.0 OR MIT
4  *
5  * Permission is hereby granted, free of charge, to any person
6  * obtaining a copy of this software and associated documentation
7  * files (the "Software"), to deal in the Software without
8  * restriction, including without limitation the rights to use, copy,
9  * modify, merge, publish, distribute, sublicense, and/or sell copies
10  * of the Software, and to permit persons to whom the Software is
11  * furnished to do so, subject to the following conditions:
12  *
13  * The above copyright notice and this permission notice shall be
14  * included in all copies or substantial portions of the Software.
15  *
16  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17  * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18  * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
19  * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
20  * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
21  * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
22  * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
23  * SOFTWARE.
24  *
25  **********************************************************/
26
27 /*
28  * svga3d_surfacedefs.h --
29  *
30  *    Surface definitions for SVGA3d.
31  */
32
33
34
35 #ifndef _SVGA3D_SURFACEDEFS_H_
36 #define _SVGA3D_SURFACEDEFS_H_
37
38 #include "svga3d_types.h"
39
40 #ifdef __cplusplus
41 extern "C" {
42 #endif
43
44 struct SVGAUseCaps;
45
46 #if defined(_WIN32) && !defined(__GNUC__)
47
48 #define STATIC_CONST __declspec(selectany) extern const
49 #else
50 #define STATIC_CONST static const
51 #endif
52
53 typedef enum SVGA3dBlockDesc {
54
55         SVGA3DBLOCKDESC_NONE = 0,
56
57         SVGA3DBLOCKDESC_BLUE = 1 << 0,
58         SVGA3DBLOCKDESC_W = 1 << 0,
59         SVGA3DBLOCKDESC_BUMP_L = 1 << 0,
60
61         SVGA3DBLOCKDESC_GREEN = 1 << 1,
62         SVGA3DBLOCKDESC_V = 1 << 1,
63
64         SVGA3DBLOCKDESC_RED = 1 << 2,
65         SVGA3DBLOCKDESC_U = 1 << 2,
66         SVGA3DBLOCKDESC_LUMINANCE = 1 << 2,
67
68         SVGA3DBLOCKDESC_ALPHA = 1 << 3,
69         SVGA3DBLOCKDESC_Q = 1 << 3,
70
71         SVGA3DBLOCKDESC_BUFFER = 1 << 4,
72
73         SVGA3DBLOCKDESC_COMPRESSED = 1 << 5,
74
75         SVGA3DBLOCKDESC_FP = 1 << 6,
76
77         SVGA3DBLOCKDESC_PLANAR_YUV = 1 << 7,
78
79         SVGA3DBLOCKDESC_2PLANAR_YUV = 1 << 8,
80
81         SVGA3DBLOCKDESC_3PLANAR_YUV = 1 << 9,
82
83         SVGA3DBLOCKDESC_STENCIL = 1 << 11,
84
85         SVGA3DBLOCKDESC_TYPELESS = 1 << 12,
86
87         SVGA3DBLOCKDESC_SINT = 1 << 13,
88
89         SVGA3DBLOCKDESC_UINT = 1 << 14,
90
91         SVGA3DBLOCKDESC_NORM = 1 << 15,
92
93         SVGA3DBLOCKDESC_SRGB = 1 << 16,
94
95         SVGA3DBLOCKDESC_EXP = 1 << 17,
96
97         SVGA3DBLOCKDESC_COLOR = 1 << 18,
98
99         SVGA3DBLOCKDESC_DEPTH = 1 << 19,
100
101         SVGA3DBLOCKDESC_BUMP = 1 << 20,
102
103         SVGA3DBLOCKDESC_YUV_VIDEO = 1 << 21,
104
105         SVGA3DBLOCKDESC_MIXED = 1 << 22,
106
107         SVGA3DBLOCKDESC_CX = 1 << 23,
108
109         SVGA3DBLOCKDESC_BC1 = 1 << 24,
110         SVGA3DBLOCKDESC_BC2 = 1 << 25,
111         SVGA3DBLOCKDESC_BC3 = 1 << 26,
112         SVGA3DBLOCKDESC_BC4 = 1 << 27,
113         SVGA3DBLOCKDESC_BC5 = 1 << 28,
114         SVGA3DBLOCKDESC_BC6H = 1 << 29,
115         SVGA3DBLOCKDESC_BC7 = 1 << 30,
116         SVGA3DBLOCKDESC_COMPRESSED_MASK =
117                 SVGA3DBLOCKDESC_BC1 | SVGA3DBLOCKDESC_BC2 |
118                 SVGA3DBLOCKDESC_BC3 | SVGA3DBLOCKDESC_BC4 |
119                 SVGA3DBLOCKDESC_BC5 | SVGA3DBLOCKDESC_BC6H |
120                 SVGA3DBLOCKDESC_BC7,
121
122         SVGA3DBLOCKDESC_A_UINT = SVGA3DBLOCKDESC_ALPHA | SVGA3DBLOCKDESC_UINT |
123                                  SVGA3DBLOCKDESC_COLOR,
124         SVGA3DBLOCKDESC_A_UNORM = SVGA3DBLOCKDESC_A_UINT | SVGA3DBLOCKDESC_NORM,
125         SVGA3DBLOCKDESC_R_UINT = SVGA3DBLOCKDESC_RED | SVGA3DBLOCKDESC_UINT |
126                                  SVGA3DBLOCKDESC_COLOR,
127         SVGA3DBLOCKDESC_R_UNORM = SVGA3DBLOCKDESC_R_UINT | SVGA3DBLOCKDESC_NORM,
128         SVGA3DBLOCKDESC_R_SINT = SVGA3DBLOCKDESC_RED | SVGA3DBLOCKDESC_SINT |
129                                  SVGA3DBLOCKDESC_COLOR,
130         SVGA3DBLOCKDESC_R_SNORM = SVGA3DBLOCKDESC_R_SINT | SVGA3DBLOCKDESC_NORM,
131         SVGA3DBLOCKDESC_G_UINT = SVGA3DBLOCKDESC_GREEN | SVGA3DBLOCKDESC_UINT |
132                                  SVGA3DBLOCKDESC_COLOR,
133         SVGA3DBLOCKDESC_RG_UINT = SVGA3DBLOCKDESC_RED | SVGA3DBLOCKDESC_GREEN |
134                                   SVGA3DBLOCKDESC_UINT | SVGA3DBLOCKDESC_COLOR,
135         SVGA3DBLOCKDESC_RG_UNORM =
136                 SVGA3DBLOCKDESC_RG_UINT | SVGA3DBLOCKDESC_NORM,
137         SVGA3DBLOCKDESC_RG_SINT = SVGA3DBLOCKDESC_RED | SVGA3DBLOCKDESC_GREEN |
138                                   SVGA3DBLOCKDESC_SINT | SVGA3DBLOCKDESC_COLOR,
139         SVGA3DBLOCKDESC_RG_SNORM =
140                 SVGA3DBLOCKDESC_RG_SINT | SVGA3DBLOCKDESC_NORM,
141         SVGA3DBLOCKDESC_RGB_UINT = SVGA3DBLOCKDESC_RED | SVGA3DBLOCKDESC_GREEN |
142                                    SVGA3DBLOCKDESC_BLUE | SVGA3DBLOCKDESC_UINT |
143                                    SVGA3DBLOCKDESC_COLOR,
144         SVGA3DBLOCKDESC_RGB_SINT = SVGA3DBLOCKDESC_RED | SVGA3DBLOCKDESC_GREEN |
145                                    SVGA3DBLOCKDESC_BLUE | SVGA3DBLOCKDESC_SINT |
146                                    SVGA3DBLOCKDESC_COLOR,
147         SVGA3DBLOCKDESC_RGB_UNORM =
148                 SVGA3DBLOCKDESC_RGB_UINT | SVGA3DBLOCKDESC_NORM,
149         SVGA3DBLOCKDESC_RGB_UNORM_SRGB =
150                 SVGA3DBLOCKDESC_RGB_UNORM | SVGA3DBLOCKDESC_SRGB,
151         SVGA3DBLOCKDESC_RGBA_UINT =
152                 SVGA3DBLOCKDESC_RED | SVGA3DBLOCKDESC_GREEN |
153                 SVGA3DBLOCKDESC_BLUE | SVGA3DBLOCKDESC_ALPHA |
154                 SVGA3DBLOCKDESC_UINT | SVGA3DBLOCKDESC_COLOR,
155         SVGA3DBLOCKDESC_RGBA_UNORM =
156                 SVGA3DBLOCKDESC_RGBA_UINT | SVGA3DBLOCKDESC_NORM,
157         SVGA3DBLOCKDESC_RGBA_UNORM_SRGB =
158                 SVGA3DBLOCKDESC_RGBA_UNORM | SVGA3DBLOCKDESC_SRGB,
159         SVGA3DBLOCKDESC_RGBA_SINT =
160                 SVGA3DBLOCKDESC_RED | SVGA3DBLOCKDESC_GREEN |
161                 SVGA3DBLOCKDESC_BLUE | SVGA3DBLOCKDESC_ALPHA |
162                 SVGA3DBLOCKDESC_SINT | SVGA3DBLOCKDESC_COLOR,
163         SVGA3DBLOCKDESC_RGBA_SNORM =
164                 SVGA3DBLOCKDESC_RGBA_SINT | SVGA3DBLOCKDESC_NORM,
165         SVGA3DBLOCKDESC_RGBA_FP = SVGA3DBLOCKDESC_RED | SVGA3DBLOCKDESC_GREEN |
166                                   SVGA3DBLOCKDESC_BLUE | SVGA3DBLOCKDESC_ALPHA |
167                                   SVGA3DBLOCKDESC_FP | SVGA3DBLOCKDESC_COLOR,
168         SVGA3DBLOCKDESC_UV =
169                 SVGA3DBLOCKDESC_U | SVGA3DBLOCKDESC_V | SVGA3DBLOCKDESC_BUMP,
170         SVGA3DBLOCKDESC_UVL = SVGA3DBLOCKDESC_UV | SVGA3DBLOCKDESC_BUMP_L |
171                               SVGA3DBLOCKDESC_MIXED | SVGA3DBLOCKDESC_BUMP,
172         SVGA3DBLOCKDESC_UVW =
173                 SVGA3DBLOCKDESC_UV | SVGA3DBLOCKDESC_W | SVGA3DBLOCKDESC_BUMP,
174         SVGA3DBLOCKDESC_UVWA = SVGA3DBLOCKDESC_UVW | SVGA3DBLOCKDESC_ALPHA |
175                                SVGA3DBLOCKDESC_MIXED | SVGA3DBLOCKDESC_BUMP,
176         SVGA3DBLOCKDESC_UVWQ = SVGA3DBLOCKDESC_U | SVGA3DBLOCKDESC_V |
177                                SVGA3DBLOCKDESC_W | SVGA3DBLOCKDESC_Q |
178                                SVGA3DBLOCKDESC_BUMP,
179         SVGA3DBLOCKDESC_L_UNORM = SVGA3DBLOCKDESC_LUMINANCE |
180                                   SVGA3DBLOCKDESC_UINT | SVGA3DBLOCKDESC_NORM |
181                                   SVGA3DBLOCKDESC_COLOR,
182         SVGA3DBLOCKDESC_LA_UNORM = SVGA3DBLOCKDESC_LUMINANCE |
183                                    SVGA3DBLOCKDESC_ALPHA |
184                                    SVGA3DBLOCKDESC_UINT | SVGA3DBLOCKDESC_NORM |
185                                    SVGA3DBLOCKDESC_COLOR,
186         SVGA3DBLOCKDESC_R_FP = SVGA3DBLOCKDESC_RED | SVGA3DBLOCKDESC_FP |
187                                SVGA3DBLOCKDESC_COLOR,
188         SVGA3DBLOCKDESC_RG_FP = SVGA3DBLOCKDESC_R_FP | SVGA3DBLOCKDESC_GREEN |
189                                 SVGA3DBLOCKDESC_COLOR,
190         SVGA3DBLOCKDESC_RGB_FP = SVGA3DBLOCKDESC_RG_FP | SVGA3DBLOCKDESC_BLUE |
191                                  SVGA3DBLOCKDESC_COLOR,
192         SVGA3DBLOCKDESC_YUV = SVGA3DBLOCKDESC_YUV_VIDEO | SVGA3DBLOCKDESC_COLOR,
193         SVGA3DBLOCKDESC_AYUV = SVGA3DBLOCKDESC_ALPHA |
194                                SVGA3DBLOCKDESC_YUV_VIDEO |
195                                SVGA3DBLOCKDESC_COLOR,
196         SVGA3DBLOCKDESC_RGB_EXP = SVGA3DBLOCKDESC_RED | SVGA3DBLOCKDESC_GREEN |
197                                   SVGA3DBLOCKDESC_BLUE | SVGA3DBLOCKDESC_EXP |
198                                   SVGA3DBLOCKDESC_COLOR,
199
200         SVGA3DBLOCKDESC_COMP_TYPELESS =
201                 SVGA3DBLOCKDESC_COMPRESSED | SVGA3DBLOCKDESC_TYPELESS,
202         SVGA3DBLOCKDESC_COMP_UNORM =
203                 SVGA3DBLOCKDESC_COMPRESSED | SVGA3DBLOCKDESC_UINT |
204                 SVGA3DBLOCKDESC_NORM | SVGA3DBLOCKDESC_COLOR,
205         SVGA3DBLOCKDESC_COMP_SNORM =
206                 SVGA3DBLOCKDESC_COMPRESSED | SVGA3DBLOCKDESC_SINT |
207                 SVGA3DBLOCKDESC_NORM | SVGA3DBLOCKDESC_COLOR,
208         SVGA3DBLOCKDESC_COMP_UNORM_SRGB =
209                 SVGA3DBLOCKDESC_COMP_UNORM | SVGA3DBLOCKDESC_SRGB,
210         SVGA3DBLOCKDESC_BC1_COMP_TYPELESS =
211                 SVGA3DBLOCKDESC_BC1 | SVGA3DBLOCKDESC_COMP_TYPELESS,
212         SVGA3DBLOCKDESC_BC1_COMP_UNORM =
213                 SVGA3DBLOCKDESC_BC1 | SVGA3DBLOCKDESC_COMP_UNORM,
214         SVGA3DBLOCKDESC_BC1_COMP_UNORM_SRGB =
215                 SVGA3DBLOCKDESC_BC1_COMP_UNORM | SVGA3DBLOCKDESC_SRGB,
216         SVGA3DBLOCKDESC_BC2_COMP_TYPELESS =
217                 SVGA3DBLOCKDESC_BC2 | SVGA3DBLOCKDESC_COMP_TYPELESS,
218         SVGA3DBLOCKDESC_BC2_COMP_UNORM =
219                 SVGA3DBLOCKDESC_BC2 | SVGA3DBLOCKDESC_COMP_UNORM,
220         SVGA3DBLOCKDESC_BC2_COMP_UNORM_SRGB =
221                 SVGA3DBLOCKDESC_BC2_COMP_UNORM | SVGA3DBLOCKDESC_SRGB,
222         SVGA3DBLOCKDESC_BC3_COMP_TYPELESS =
223                 SVGA3DBLOCKDESC_BC3 | SVGA3DBLOCKDESC_COMP_TYPELESS,
224         SVGA3DBLOCKDESC_BC3_COMP_UNORM =
225                 SVGA3DBLOCKDESC_BC3 | SVGA3DBLOCKDESC_COMP_UNORM,
226         SVGA3DBLOCKDESC_BC3_COMP_UNORM_SRGB =
227                 SVGA3DBLOCKDESC_BC3_COMP_UNORM | SVGA3DBLOCKDESC_SRGB,
228         SVGA3DBLOCKDESC_BC4_COMP_TYPELESS =
229                 SVGA3DBLOCKDESC_BC4 | SVGA3DBLOCKDESC_COMP_TYPELESS,
230         SVGA3DBLOCKDESC_BC4_COMP_UNORM =
231                 SVGA3DBLOCKDESC_BC4 | SVGA3DBLOCKDESC_COMP_UNORM,
232         SVGA3DBLOCKDESC_BC4_COMP_SNORM =
233                 SVGA3DBLOCKDESC_BC4 | SVGA3DBLOCKDESC_COMP_SNORM,
234         SVGA3DBLOCKDESC_BC5_COMP_TYPELESS =
235                 SVGA3DBLOCKDESC_BC5 | SVGA3DBLOCKDESC_COMP_TYPELESS,
236         SVGA3DBLOCKDESC_BC5_COMP_UNORM =
237                 SVGA3DBLOCKDESC_BC5 | SVGA3DBLOCKDESC_COMP_UNORM,
238         SVGA3DBLOCKDESC_BC5_COMP_SNORM =
239                 SVGA3DBLOCKDESC_BC5 | SVGA3DBLOCKDESC_COMP_SNORM,
240         SVGA3DBLOCKDESC_BC6H_COMP_TYPELESS =
241                 SVGA3DBLOCKDESC_BC6H | SVGA3DBLOCKDESC_COMP_TYPELESS,
242         SVGA3DBLOCKDESC_BC6H_COMP_UF16 =
243                 SVGA3DBLOCKDESC_BC6H | SVGA3DBLOCKDESC_COMPRESSED,
244         SVGA3DBLOCKDESC_BC6H_COMP_SF16 =
245                 SVGA3DBLOCKDESC_BC6H | SVGA3DBLOCKDESC_COMPRESSED,
246         SVGA3DBLOCKDESC_BC7_COMP_TYPELESS =
247                 SVGA3DBLOCKDESC_BC7 | SVGA3DBLOCKDESC_COMP_TYPELESS,
248         SVGA3DBLOCKDESC_BC7_COMP_UNORM =
249                 SVGA3DBLOCKDESC_BC7 | SVGA3DBLOCKDESC_COMP_UNORM,
250         SVGA3DBLOCKDESC_BC7_COMP_UNORM_SRGB =
251                 SVGA3DBLOCKDESC_BC7_COMP_UNORM | SVGA3DBLOCKDESC_SRGB,
252
253         SVGA3DBLOCKDESC_NV12 =
254                 SVGA3DBLOCKDESC_YUV_VIDEO | SVGA3DBLOCKDESC_PLANAR_YUV |
255                 SVGA3DBLOCKDESC_2PLANAR_YUV | SVGA3DBLOCKDESC_COLOR,
256         SVGA3DBLOCKDESC_YV12 =
257                 SVGA3DBLOCKDESC_YUV_VIDEO | SVGA3DBLOCKDESC_PLANAR_YUV |
258                 SVGA3DBLOCKDESC_3PLANAR_YUV | SVGA3DBLOCKDESC_COLOR,
259
260         SVGA3DBLOCKDESC_DEPTH_UINT =
261                 SVGA3DBLOCKDESC_DEPTH | SVGA3DBLOCKDESC_UINT,
262         SVGA3DBLOCKDESC_DEPTH_UNORM =
263                 SVGA3DBLOCKDESC_DEPTH_UINT | SVGA3DBLOCKDESC_NORM,
264         SVGA3DBLOCKDESC_DS = SVGA3DBLOCKDESC_DEPTH | SVGA3DBLOCKDESC_STENCIL,
265         SVGA3DBLOCKDESC_DS_UINT = SVGA3DBLOCKDESC_DEPTH |
266                                   SVGA3DBLOCKDESC_STENCIL |
267                                   SVGA3DBLOCKDESC_UINT,
268         SVGA3DBLOCKDESC_DS_UNORM =
269                 SVGA3DBLOCKDESC_DS_UINT | SVGA3DBLOCKDESC_NORM,
270         SVGA3DBLOCKDESC_DEPTH_FP = SVGA3DBLOCKDESC_DEPTH | SVGA3DBLOCKDESC_FP,
271
272         SVGA3DBLOCKDESC_UV_UINT = SVGA3DBLOCKDESC_UV | SVGA3DBLOCKDESC_UINT,
273         SVGA3DBLOCKDESC_UV_SNORM = SVGA3DBLOCKDESC_UV | SVGA3DBLOCKDESC_SINT |
274                                    SVGA3DBLOCKDESC_NORM,
275         SVGA3DBLOCKDESC_UVCX_SNORM =
276                 SVGA3DBLOCKDESC_UV_SNORM | SVGA3DBLOCKDESC_CX,
277         SVGA3DBLOCKDESC_UVWQ_SNORM = SVGA3DBLOCKDESC_UVWQ |
278                                      SVGA3DBLOCKDESC_SINT |
279                                      SVGA3DBLOCKDESC_NORM,
280 } SVGA3dBlockDesc;
281
282 typedef struct SVGA3dChannelDef {
283         union {
284                 uint8 blue;
285                 uint8 w_bump;
286                 uint8 l_bump;
287                 uint8 uv_video;
288                 uint8 u_video;
289         };
290         union {
291                 uint8 green;
292                 uint8 stencil;
293                 uint8 v_bump;
294                 uint8 v_video;
295         };
296         union {
297                 uint8 red;
298                 uint8 u_bump;
299                 uint8 luminance;
300                 uint8 y_video;
301                 uint8 depth;
302                 uint8 data;
303         };
304         union {
305                 uint8 alpha;
306                 uint8 q_bump;
307                 uint8 exp;
308         };
309 } SVGA3dChannelDef;
310
311 typedef struct SVGA3dSurfaceDesc {
312         SVGA3dSurfaceFormat format;
313         SVGA3dBlockDesc blockDesc;
314
315         SVGA3dSize blockSize;
316         uint32 bytesPerBlock;
317         uint32 pitchBytesPerBlock;
318
319         SVGA3dChannelDef bitDepth;
320         SVGA3dChannelDef bitOffset;
321 } SVGA3dSurfaceDesc;
322
323 STATIC_CONST SVGA3dSurfaceDesc g_SVGA3dSurfaceDescs[] = {
324         { SVGA3D_FORMAT_INVALID,
325           SVGA3DBLOCKDESC_NONE,
326           { 1, 1, 1 },
327           0,
328           0,
329           { { 0 }, { 0 }, { 0 }, { 0 } },
330           { { 0 }, { 0 }, { 0 }, { 0 } } },
331
332         { SVGA3D_X8R8G8B8,
333           SVGA3DBLOCKDESC_RGB_UNORM,
334           { 1, 1, 1 },
335           4,
336           4,
337           { { 8 }, { 8 }, { 8 }, { 0 } },
338           { { 0 }, { 8 }, { 16 }, { 24 } } },
339
340         { SVGA3D_A8R8G8B8,
341           SVGA3DBLOCKDESC_RGBA_UNORM,
342           { 1, 1, 1 },
343           4,
344           4,
345           { { 8 }, { 8 }, { 8 }, { 8 } },
346           { { 0 }, { 8 }, { 16 }, { 24 } } },
347
348         { SVGA3D_R5G6B5,
349           SVGA3DBLOCKDESC_RGB_UNORM,
350           { 1, 1, 1 },
351           2,
352           2,
353           { { 5 }, { 6 }, { 5 }, { 0 } },
354           { { 0 }, { 5 }, { 11 }, { 0 } } },
355
356         { SVGA3D_X1R5G5B5,
357           SVGA3DBLOCKDESC_RGB_UNORM,
358           { 1, 1, 1 },
359           2,
360           2,
361           { { 5 }, { 5 }, { 5 }, { 0 } },
362           { { 0 }, { 5 }, { 10 }, { 0 } } },
363
364         { SVGA3D_A1R5G5B5,
365           SVGA3DBLOCKDESC_RGBA_UNORM,
366           { 1, 1, 1 },
367           2,
368           2,
369           { { 5 }, { 5 }, { 5 }, { 1 } },
370           { { 0 }, { 5 }, { 10 }, { 15 } } },
371
372         { SVGA3D_A4R4G4B4,
373           SVGA3DBLOCKDESC_RGBA_UNORM,
374           { 1, 1, 1 },
375           2,
376           2,
377           { { 4 }, { 4 }, { 4 }, { 4 } },
378           { { 0 }, { 4 }, { 8 }, { 12 } } },
379
380         { SVGA3D_Z_D32,
381           SVGA3DBLOCKDESC_DEPTH_UNORM,
382           { 1, 1, 1 },
383           4,
384           4,
385           { { 0 }, { 0 }, { 32 }, { 0 } },
386           { { 0 }, { 0 }, { 0 }, { 0 } } },
387
388         { SVGA3D_Z_D16,
389           SVGA3DBLOCKDESC_DEPTH_UNORM,
390           { 1, 1, 1 },
391           2,
392           2,
393           { { 0 }, { 0 }, { 16 }, { 0 } },
394           { { 0 }, { 0 }, { 0 }, { 0 } } },
395
396         { SVGA3D_Z_D24S8,
397           SVGA3DBLOCKDESC_DS_UNORM,
398           { 1, 1, 1 },
399           4,
400           4,
401           { { 0 }, { 8 }, { 24 }, { 0 } },
402           { { 0 }, { 0 }, { 8 }, { 0 } } },
403
404         { SVGA3D_Z_D15S1,
405           SVGA3DBLOCKDESC_DS_UNORM,
406           { 1, 1, 1 },
407           2,
408           2,
409           { { 0 }, { 1 }, { 15 }, { 0 } },
410           { { 0 }, { 0 }, { 1 }, { 0 } } },
411
412         { SVGA3D_LUMINANCE8,
413           SVGA3DBLOCKDESC_L_UNORM,
414           { 1, 1, 1 },
415           1,
416           1,
417           { { 0 }, { 0 }, { 8 }, { 0 } },
418           { { 0 }, { 0 }, { 0 }, { 0 } } },
419
420         { SVGA3D_LUMINANCE4_ALPHA4,
421           SVGA3DBLOCKDESC_LA_UNORM,
422           { 1, 1, 1 },
423           1,
424           1,
425           { { 0 }, { 0 }, { 4 }, { 4 } },
426           { { 0 }, { 0 }, { 0 }, { 4 } } },
427
428         { SVGA3D_LUMINANCE16,
429           SVGA3DBLOCKDESC_L_UNORM,
430           { 1, 1, 1 },
431           2,
432           2,
433           { { 0 }, { 0 }, { 16 }, { 0 } },
434           { { 0 }, { 0 }, { 0 }, { 0 } } },
435
436         { SVGA3D_LUMINANCE8_ALPHA8,
437           SVGA3DBLOCKDESC_LA_UNORM,
438           { 1, 1, 1 },
439           2,
440           2,
441           { { 0 }, { 0 }, { 8 }, { 8 } },
442           { { 0 }, { 0 }, { 0 }, { 8 } } },
443
444         { SVGA3D_DXT1,
445           SVGA3DBLOCKDESC_BC1_COMP_UNORM,
446           { 4, 4, 1 },
447           8,
448           8,
449           { { 0 }, { 0 }, { 64 }, { 0 } },
450           { { 0 }, { 0 }, { 0 }, { 0 } } },
451
452         { SVGA3D_DXT2,
453           SVGA3DBLOCKDESC_BC2_COMP_UNORM,
454           { 4, 4, 1 },
455           16,
456           16,
457           { { 0 }, { 0 }, { 128 }, { 0 } },
458           { { 0 }, { 0 }, { 0 }, { 0 } } },
459
460         { SVGA3D_DXT3,
461           SVGA3DBLOCKDESC_BC2_COMP_UNORM,
462           { 4, 4, 1 },
463           16,
464           16,
465           { { 0 }, { 0 }, { 128 }, { 0 } },
466           { { 0 }, { 0 }, { 0 }, { 0 } } },
467
468         { SVGA3D_DXT4,
469           SVGA3DBLOCKDESC_BC3_COMP_UNORM,
470           { 4, 4, 1 },
471           16,
472           16,
473           { { 0 }, { 0 }, { 128 }, { 0 } },
474           { { 0 }, { 0 }, { 0 }, { 0 } } },
475
476         { SVGA3D_DXT5,
477           SVGA3DBLOCKDESC_BC3_COMP_UNORM,
478           { 4, 4, 1 },
479           16,
480           16,
481           { { 0 }, { 0 }, { 128 }, { 0 } },
482           { { 0 }, { 0 }, { 0 }, { 0 } } },
483
484         { SVGA3D_BUMPU8V8,
485           SVGA3DBLOCKDESC_UV_SNORM,
486           { 1, 1, 1 },
487           2,
488           2,
489           { { 0 }, { 8 }, { 8 }, { 0 } },
490           { { 0 }, { 8 }, { 0 }, { 0 } } },
491
492         { SVGA3D_BUMPL6V5U5,
493           SVGA3DBLOCKDESC_UVL,
494           { 1, 1, 1 },
495           2,
496           2,
497           { { 6 }, { 5 }, { 5 }, { 0 } },
498           { { 10 }, { 5 }, { 0 }, { 0 } } },
499
500         { SVGA3D_BUMPX8L8V8U8,
501           SVGA3DBLOCKDESC_UVL,
502           { 1, 1, 1 },
503           4,
504           4,
505           { { 8 }, { 8 }, { 8 }, { 0 } },
506           { { 16 }, { 8 }, { 0 }, { 0 } } },
507
508         { SVGA3D_FORMAT_DEAD1,
509           SVGA3DBLOCKDESC_NONE,
510           { 1, 1, 1 },
511           3,
512           3,
513           { { 8 }, { 8 }, { 8 }, { 0 } },
514           { { 16 }, { 8 }, { 0 }, { 0 } } },
515
516         { SVGA3D_ARGB_S10E5,
517           SVGA3DBLOCKDESC_RGBA_FP,
518           { 1, 1, 1 },
519           8,
520           8,
521           { { 16 }, { 16 }, { 16 }, { 16 } },
522           { { 32 }, { 16 }, { 0 }, { 48 } } },
523
524         { SVGA3D_ARGB_S23E8,
525           SVGA3DBLOCKDESC_RGBA_FP,
526           { 1, 1, 1 },
527           16,
528           16,
529           { { 32 }, { 32 }, { 32 }, { 32 } },
530           { { 64 }, { 32 }, { 0 }, { 96 } } },
531
532         { SVGA3D_A2R10G10B10,
533           SVGA3DBLOCKDESC_RGBA_UNORM,
534           { 1, 1, 1 },
535           4,
536           4,
537           { { 10 }, { 10 }, { 10 }, { 2 } },
538           { { 0 }, { 10 }, { 20 }, { 30 } } },
539
540         { SVGA3D_V8U8,
541           SVGA3DBLOCKDESC_UV_SNORM,
542           { 1, 1, 1 },
543           2,
544           2,
545           { { 0 }, { 8 }, { 8 }, { 0 } },
546           { { 0 }, { 8 }, { 0 }, { 0 } } },
547
548         { SVGA3D_Q8W8V8U8,
549           SVGA3DBLOCKDESC_UVWQ_SNORM,
550           { 1, 1, 1 },
551           4,
552           4,
553           { { 8 }, { 8 }, { 8 }, { 8 } },
554           { { 16 }, { 8 }, { 0 }, { 24 } } },
555
556         { SVGA3D_CxV8U8,
557           SVGA3DBLOCKDESC_UVCX_SNORM,
558           { 1, 1, 1 },
559           2,
560           2,
561           { { 0 }, { 8 }, { 8 }, { 0 } },
562           { { 0 }, { 8 }, { 0 }, { 0 } } },
563
564         { SVGA3D_X8L8V8U8,
565           SVGA3DBLOCKDESC_UVL,
566           { 1, 1, 1 },
567           4,
568           4,
569           { { 8 }, { 8 }, { 8 }, { 0 } },
570           { { 16 }, { 8 }, { 0 }, { 0 } } },
571
572         { SVGA3D_A2W10V10U10,
573           SVGA3DBLOCKDESC_UVWA,
574           { 1, 1, 1 },
575           4,
576           4,
577           { { 10 }, { 10 }, { 10 }, { 2 } },
578           { { 20 }, { 10 }, { 0 }, { 30 } } },
579
580         { SVGA3D_ALPHA8,
581           SVGA3DBLOCKDESC_A_UNORM,
582           { 1, 1, 1 },
583           1,
584           1,
585           { { 0 }, { 0 }, { 0 }, { 8 } },
586           { { 0 }, { 0 }, { 0 }, { 0 } } },
587
588         { SVGA3D_R_S10E5,
589           SVGA3DBLOCKDESC_R_FP,
590           { 1, 1, 1 },
591           2,
592           2,
593           { { 0 }, { 0 }, { 16 }, { 0 } },
594           { { 0 }, { 0 }, { 0 }, { 0 } } },
595
596         { SVGA3D_R_S23E8,
597           SVGA3DBLOCKDESC_R_FP,
598           { 1, 1, 1 },
599           4,
600           4,
601           { { 0 }, { 0 }, { 32 }, { 0 } },
602           { { 0 }, { 0 }, { 0 }, { 0 } } },
603
604         { SVGA3D_RG_S10E5,
605           SVGA3DBLOCKDESC_RG_FP,
606           { 1, 1, 1 },
607           4,
608           4,
609           { { 0 }, { 16 }, { 16 }, { 0 } },
610           { { 0 }, { 16 }, { 0 }, { 0 } } },
611
612         { SVGA3D_RG_S23E8,
613           SVGA3DBLOCKDESC_RG_FP,
614           { 1, 1, 1 },
615           8,
616           8,
617           { { 0 }, { 32 }, { 32 }, { 0 } },
618           { { 0 }, { 32 }, { 0 }, { 0 } } },
619
620         { SVGA3D_BUFFER,
621           SVGA3DBLOCKDESC_BUFFER,
622           { 1, 1, 1 },
623           1,
624           1,
625           { { 0 }, { 0 }, { 8 }, { 0 } },
626           { { 0 }, { 0 }, { 0 }, { 0 } } },
627
628         { SVGA3D_Z_D24X8,
629           SVGA3DBLOCKDESC_DEPTH_UNORM,
630           { 1, 1, 1 },
631           4,
632           4,
633           { { 0 }, { 0 }, { 24 }, { 0 } },
634           { { 0 }, { 0 }, { 8 }, { 0 } } },
635
636         { SVGA3D_V16U16,
637           SVGA3DBLOCKDESC_UV_SNORM,
638           { 1, 1, 1 },
639           4,
640           4,
641           { { 0 }, { 16 }, { 16 }, { 0 } },
642           { { 0 }, { 16 }, { 0 }, { 0 } } },
643
644         { SVGA3D_G16R16,
645           SVGA3DBLOCKDESC_RG_UNORM,
646           { 1, 1, 1 },
647           4,
648           4,
649           { { 0 }, { 16 }, { 16 }, { 0 } },
650           { { 0 }, { 16 }, { 0 }, { 0 } } },
651
652         { SVGA3D_A16B16G16R16,
653           SVGA3DBLOCKDESC_RGBA_UNORM,
654           { 1, 1, 1 },
655           8,
656           8,
657           { { 16 }, { 16 }, { 16 }, { 16 } },
658           { { 32 }, { 16 }, { 0 }, { 48 } } },
659
660         { SVGA3D_UYVY,
661           SVGA3DBLOCKDESC_YUV,
662           { 2, 1, 1 },
663           4,
664           4,
665           { { 8 }, { 0 }, { 8 }, { 0 } },
666           { { 0 }, { 0 }, { 8 }, { 0 } } },
667
668         { SVGA3D_YUY2,
669           SVGA3DBLOCKDESC_YUV,
670           { 2, 1, 1 },
671           4,
672           4,
673           { { 8 }, { 0 }, { 8 }, { 0 } },
674           { { 8 }, { 0 }, { 0 }, { 0 } } },
675
676         { SVGA3D_NV12,
677           SVGA3DBLOCKDESC_NV12,
678           { 2, 2, 1 },
679           6,
680           2,
681           { { 0 }, { 0 }, { 48 }, { 0 } },
682           { { 0 }, { 0 }, { 0 }, { 0 } } },
683
684         { SVGA3D_FORMAT_DEAD2,
685           SVGA3DBLOCKDESC_NONE,
686           { 1, 1, 1 },
687           4,
688           4,
689           { { 8 }, { 8 }, { 8 }, { 8 } },
690           { { 0 }, { 8 }, { 16 }, { 24 } } },
691
692         { SVGA3D_R32G32B32A32_TYPELESS,
693           SVGA3DBLOCKDESC_TYPELESS,
694           { 1, 1, 1 },
695           16,
696           16,
697           { { 32 }, { 32 }, { 32 }, { 32 } },
698           { { 64 }, { 32 }, { 0 }, { 96 } } },
699
700         { SVGA3D_R32G32B32A32_UINT,
701           SVGA3DBLOCKDESC_RGBA_UINT,
702           { 1, 1, 1 },
703           16,
704           16,
705           { { 32 }, { 32 }, { 32 }, { 32 } },
706           { { 64 }, { 32 }, { 0 }, { 96 } } },
707
708         { SVGA3D_R32G32B32A32_SINT,
709           SVGA3DBLOCKDESC_RGBA_SINT,
710           { 1, 1, 1 },
711           16,
712           16,
713           { { 32 }, { 32 }, { 32 }, { 32 } },
714           { { 64 }, { 32 }, { 0 }, { 96 } } },
715
716         { SVGA3D_R32G32B32_TYPELESS,
717           SVGA3DBLOCKDESC_TYPELESS,
718           { 1, 1, 1 },
719           12,
720           12,
721           { { 32 }, { 32 }, { 32 }, { 0 } },
722           { { 64 }, { 32 }, { 0 }, { 0 } } },
723
724         { SVGA3D_R32G32B32_FLOAT,
725           SVGA3DBLOCKDESC_RGB_FP,
726           { 1, 1, 1 },
727           12,
728           12,
729           { { 32 }, { 32 }, { 32 }, { 0 } },
730           { { 64 }, { 32 }, { 0 }, { 0 } } },
731
732         { SVGA3D_R32G32B32_UINT,
733           SVGA3DBLOCKDESC_RGB_UINT,
734           { 1, 1, 1 },
735           12,
736           12,
737           { { 32 }, { 32 }, { 32 }, { 0 } },
738           { { 64 }, { 32 }, { 0 }, { 0 } } },
739
740         { SVGA3D_R32G32B32_SINT,
741           SVGA3DBLOCKDESC_RGB_SINT,
742           { 1, 1, 1 },
743           12,
744           12,
745           { { 32 }, { 32 }, { 32 }, { 0 } },
746           { { 64 }, { 32 }, { 0 }, { 0 } } },
747
748         { SVGA3D_R16G16B16A16_TYPELESS,
749           SVGA3DBLOCKDESC_TYPELESS,
750           { 1, 1, 1 },
751           8,
752           8,
753           { { 16 }, { 16 }, { 16 }, { 16 } },
754           { { 32 }, { 16 }, { 0 }, { 48 } } },
755
756         { SVGA3D_R16G16B16A16_UINT,
757           SVGA3DBLOCKDESC_RGBA_UINT,
758           { 1, 1, 1 },
759           8,
760           8,
761           { { 16 }, { 16 }, { 16 }, { 16 } },
762           { { 32 }, { 16 }, { 0 }, { 48 } } },
763
764         { SVGA3D_R16G16B16A16_SNORM,
765           SVGA3DBLOCKDESC_RGBA_SNORM,
766           { 1, 1, 1 },
767           8,
768           8,
769           { { 16 }, { 16 }, { 16 }, { 16 } },
770           { { 32 }, { 16 }, { 0 }, { 48 } } },
771
772         { SVGA3D_R16G16B16A16_SINT,
773           SVGA3DBLOCKDESC_RGBA_SINT,
774           { 1, 1, 1 },
775           8,
776           8,
777           { { 16 }, { 16 }, { 16 }, { 16 } },
778           { { 32 }, { 16 }, { 0 }, { 48 } } },
779
780         { SVGA3D_R32G32_TYPELESS,
781           SVGA3DBLOCKDESC_TYPELESS,
782           { 1, 1, 1 },
783           8,
784           8,
785           { { 0 }, { 32 }, { 32 }, { 0 } },
786           { { 0 }, { 32 }, { 0 }, { 0 } } },
787
788         { SVGA3D_R32G32_UINT,
789           SVGA3DBLOCKDESC_RG_UINT,
790           { 1, 1, 1 },
791           8,
792           8,
793           { { 0 }, { 32 }, { 32 }, { 0 } },
794           { { 0 }, { 32 }, { 0 }, { 0 } } },
795
796         { SVGA3D_R32G32_SINT,
797           SVGA3DBLOCKDESC_RG_SINT,
798           { 1, 1, 1 },
799           8,
800           8,
801           { { 0 }, { 32 }, { 32 }, { 0 } },
802           { { 0 }, { 32 }, { 0 }, { 0 } } },
803
804         { SVGA3D_R32G8X24_TYPELESS,
805           SVGA3DBLOCKDESC_TYPELESS,
806           { 1, 1, 1 },
807           8,
808           8,
809           { { 0 }, { 8 }, { 32 }, { 0 } },
810           { { 0 }, { 32 }, { 0 }, { 0 } } },
811
812         { SVGA3D_D32_FLOAT_S8X24_UINT,
813           SVGA3DBLOCKDESC_DS,
814           { 1, 1, 1 },
815           8,
816           8,
817           { { 0 }, { 8 }, { 32 }, { 0 } },
818           { { 0 }, { 32 }, { 0 }, { 0 } } },
819
820         { SVGA3D_R32_FLOAT_X8X24,
821           SVGA3DBLOCKDESC_R_FP,
822           { 1, 1, 1 },
823           8,
824           8,
825           { { 0 }, { 0 }, { 32 }, { 0 } },
826           { { 0 }, { 0 }, { 0 }, { 0 } } },
827
828         { SVGA3D_X32_G8X24_UINT,
829           SVGA3DBLOCKDESC_G_UINT,
830           { 1, 1, 1 },
831           8,
832           8,
833           { { 0 }, { 8 }, { 0 }, { 0 } },
834           { { 0 }, { 32 }, { 0 }, { 0 } } },
835
836         { SVGA3D_R10G10B10A2_TYPELESS,
837           SVGA3DBLOCKDESC_TYPELESS,
838           { 1, 1, 1 },
839           4,
840           4,
841           { { 10 }, { 10 }, { 10 }, { 2 } },
842           { { 20 }, { 10 }, { 0 }, { 30 } } },
843
844         { SVGA3D_R10G10B10A2_UINT,
845           SVGA3DBLOCKDESC_RGBA_UINT,
846           { 1, 1, 1 },
847           4,
848           4,
849           { { 10 }, { 10 }, { 10 }, { 2 } },
850           { { 20 }, { 10 }, { 0 }, { 30 } } },
851
852         { SVGA3D_R11G11B10_FLOAT,
853           SVGA3DBLOCKDESC_RGB_FP,
854           { 1, 1, 1 },
855           4,
856           4,
857           { { 10 }, { 11 }, { 11 }, { 0 } },
858           { { 22 }, { 11 }, { 0 }, { 0 } } },
859
860         { SVGA3D_R8G8B8A8_TYPELESS,
861           SVGA3DBLOCKDESC_TYPELESS,
862           { 1, 1, 1 },
863           4,
864           4,
865           { { 8 }, { 8 }, { 8 }, { 8 } },
866           { { 16 }, { 8 }, { 0 }, { 24 } } },
867
868         { SVGA3D_R8G8B8A8_UNORM,
869           SVGA3DBLOCKDESC_RGBA_UNORM,
870           { 1, 1, 1 },
871           4,
872           4,
873           { { 8 }, { 8 }, { 8 }, { 8 } },
874           { { 16 }, { 8 }, { 0 }, { 24 } } },
875
876         { SVGA3D_R8G8B8A8_UNORM_SRGB,
877           SVGA3DBLOCKDESC_RGBA_UNORM_SRGB,
878           { 1, 1, 1 },
879           4,
880           4,
881           { { 8 }, { 8 }, { 8 }, { 8 } },
882           { { 16 }, { 8 }, { 0 }, { 24 } } },
883
884         { SVGA3D_R8G8B8A8_UINT,
885           SVGA3DBLOCKDESC_RGBA_UINT,
886           { 1, 1, 1 },
887           4,
888           4,
889           { { 8 }, { 8 }, { 8 }, { 8 } },
890           { { 16 }, { 8 }, { 0 }, { 24 } } },
891
892         { SVGA3D_R8G8B8A8_SINT,
893           SVGA3DBLOCKDESC_RGBA_SINT,
894           { 1, 1, 1 },
895           4,
896           4,
897           { { 8 }, { 8 }, { 8 }, { 8 } },
898           { { 16 }, { 8 }, { 0 }, { 24 } } },
899
900         { SVGA3D_R16G16_TYPELESS,
901           SVGA3DBLOCKDESC_TYPELESS,
902           { 1, 1, 1 },
903           4,
904           4,
905           { { 0 }, { 16 }, { 16 }, { 0 } },
906           { { 0 }, { 16 }, { 0 }, { 0 } } },
907
908         { SVGA3D_R16G16_UINT,
909           SVGA3DBLOCKDESC_RG_UINT,
910           { 1, 1, 1 },
911           4,
912           4,
913           { { 0 }, { 16 }, { 16 }, { 0 } },
914           { { 0 }, { 16 }, { 0 }, { 0 } } },
915
916         { SVGA3D_R16G16_SINT,
917           SVGA3DBLOCKDESC_RG_SINT,
918           { 1, 1, 1 },
919           4,
920           4,
921           { { 0 }, { 16 }, { 16 }, { 0 } },
922           { { 0 }, { 16 }, { 0 }, { 0 } } },
923
924         { SVGA3D_R32_TYPELESS,
925           SVGA3DBLOCKDESC_TYPELESS,
926           { 1, 1, 1 },
927           4,
928           4,
929           { { 0 }, { 0 }, { 32 }, { 0 } },
930           { { 0 }, { 0 }, { 0 }, { 0 } } },
931
932         { SVGA3D_D32_FLOAT,
933           SVGA3DBLOCKDESC_DEPTH_FP,
934           { 1, 1, 1 },
935           4,
936           4,
937           { { 0 }, { 0 }, { 32 }, { 0 } },
938           { { 0 }, { 0 }, { 0 }, { 0 } } },
939
940         { SVGA3D_R32_UINT,
941           SVGA3DBLOCKDESC_R_UINT,
942           { 1, 1, 1 },
943           4,
944           4,
945           { { 0 }, { 0 }, { 32 }, { 0 } },
946           { { 0 }, { 0 }, { 0 }, { 0 } } },
947
948         { SVGA3D_R32_SINT,
949           SVGA3DBLOCKDESC_R_SINT,
950           { 1, 1, 1 },
951           4,
952           4,
953           { { 0 }, { 0 }, { 32 }, { 0 } },
954           { { 0 }, { 0 }, { 0 }, { 0 } } },
955
956         { SVGA3D_R24G8_TYPELESS,
957           SVGA3DBLOCKDESC_TYPELESS,
958           { 1, 1, 1 },
959           4,
960           4,
961           { { 0 }, { 8 }, { 24 }, { 0 } },
962           { { 0 }, { 24 }, { 0 }, { 0 } } },
963
964         { SVGA3D_D24_UNORM_S8_UINT,
965           SVGA3DBLOCKDESC_DS_UNORM,
966           { 1, 1, 1 },
967           4,
968           4,
969           { { 0 }, { 8 }, { 24 }, { 0 } },
970           { { 0 }, { 24 }, { 0 }, { 0 } } },
971
972         { SVGA3D_R24_UNORM_X8,
973           SVGA3DBLOCKDESC_R_UNORM,
974           { 1, 1, 1 },
975           4,
976           4,
977           { { 0 }, { 0 }, { 24 }, { 0 } },
978           { { 0 }, { 0 }, { 0 }, { 0 } } },
979
980         { SVGA3D_X24_G8_UINT,
981           SVGA3DBLOCKDESC_G_UINT,
982           { 1, 1, 1 },
983           4,
984           4,
985           { { 0 }, { 8 }, { 0 }, { 0 } },
986           { { 0 }, { 24 }, { 0 }, { 0 } } },
987
988         { SVGA3D_R8G8_TYPELESS,
989           SVGA3DBLOCKDESC_TYPELESS,
990           { 1, 1, 1 },
991           2,
992           2,
993           { { 0 }, { 8 }, { 8 }, { 0 } },
994           { { 0 }, { 8 }, { 0 }, { 0 } } },
995
996         { SVGA3D_R8G8_UNORM,
997           SVGA3DBLOCKDESC_RG_UNORM,
998           { 1, 1, 1 },
999           2,
1000           2,
1001           { { 0 }, { 8 }, { 8 }, { 0 } },
1002           { { 0 }, { 8 }, { 0 }, { 0 } } },
1003
1004         { SVGA3D_R8G8_UINT,
1005           SVGA3DBLOCKDESC_RG_UINT,
1006           { 1, 1, 1 },
1007           2,
1008           2,
1009           { { 0 }, { 8 }, { 8 }, { 0 } },
1010           { { 0 }, { 8 }, { 0 }, { 0 } } },
1011
1012         { SVGA3D_R8G8_SINT,
1013           SVGA3DBLOCKDESC_RG_SINT,
1014           { 1, 1, 1 },
1015           2,
1016           2,
1017           { { 0 }, { 8 }, { 8 }, { 0 } },
1018           { { 0 }, { 8 }, { 0 }, { 0 } } },
1019
1020         { SVGA3D_R16_TYPELESS,
1021           SVGA3DBLOCKDESC_TYPELESS,
1022           { 1, 1, 1 },
1023           2,
1024           2,
1025           { { 0 }, { 0 }, { 16 }, { 0 } },
1026           { { 0 }, { 0 }, { 0 }, { 0 } } },
1027
1028         { SVGA3D_R16_UNORM,
1029           SVGA3DBLOCKDESC_R_UNORM,
1030           { 1, 1, 1 },
1031           2,
1032           2,
1033           { { 0 }, { 0 }, { 16 }, { 0 } },
1034           { { 0 }, { 0 }, { 0 }, { 0 } } },
1035
1036         { SVGA3D_R16_UINT,
1037           SVGA3DBLOCKDESC_R_UINT,
1038           { 1, 1, 1 },
1039           2,
1040           2,
1041           { { 0 }, { 0 }, { 16 }, { 0 } },
1042           { { 0 }, { 0 }, { 0 }, { 0 } } },
1043
1044         { SVGA3D_R16_SNORM,
1045           SVGA3DBLOCKDESC_R_SNORM,
1046           { 1, 1, 1 },
1047           2,
1048           2,
1049           { { 0 }, { 0 }, { 16 }, { 0 } },
1050           { { 0 }, { 0 }, { 0 }, { 0 } } },
1051
1052         { SVGA3D_R16_SINT,
1053           SVGA3DBLOCKDESC_R_SINT,
1054           { 1, 1, 1 },
1055           2,
1056           2,
1057           { { 0 }, { 0 }, { 16 }, { 0 } },
1058           { { 0 }, { 0 }, { 0 }, { 0 } } },
1059
1060         { SVGA3D_R8_TYPELESS,
1061           SVGA3DBLOCKDESC_TYPELESS,
1062           { 1, 1, 1 },
1063           1,
1064           1,
1065           { { 0 }, { 0 }, { 8 }, { 0 } },
1066           { { 0 }, { 0 }, { 0 }, { 0 } } },
1067
1068         { SVGA3D_R8_UNORM,
1069           SVGA3DBLOCKDESC_R_UNORM,
1070           { 1, 1, 1 },
1071           1,
1072           1,
1073           { { 0 }, { 0 }, { 8 }, { 0 } },
1074           { { 0 }, { 0 }, { 0 }, { 0 } } },
1075
1076         { SVGA3D_R8_UINT,
1077           SVGA3DBLOCKDESC_R_UINT,
1078           { 1, 1, 1 },
1079           1,
1080           1,
1081           { { 0 }, { 0 }, { 8 }, { 0 } },
1082           { { 0 }, { 0 }, { 0 }, { 0 } } },
1083
1084         { SVGA3D_R8_SNORM,
1085           SVGA3DBLOCKDESC_R_SNORM,
1086           { 1, 1, 1 },
1087           1,
1088           1,
1089           { { 0 }, { 0 }, { 8 }, { 0 } },
1090           { { 0 }, { 0 }, { 0 }, { 0 } } },
1091
1092         { SVGA3D_R8_SINT,
1093           SVGA3DBLOCKDESC_R_SINT,
1094           { 1, 1, 1 },
1095           1,
1096           1,
1097           { { 0 }, { 0 }, { 8 }, { 0 } },
1098           { { 0 }, { 0 }, { 0 }, { 0 } } },
1099
1100         { SVGA3D_P8,
1101           SVGA3DBLOCKDESC_NONE,
1102           { 1, 1, 1 },
1103           1,
1104           1,
1105           { { 0 }, { 0 }, { 8 }, { 0 } },
1106           { { 0 }, { 0 }, { 0 }, { 0 } } },
1107
1108         { SVGA3D_R9G9B9E5_SHAREDEXP,
1109           SVGA3DBLOCKDESC_RGB_EXP,
1110           { 1, 1, 1 },
1111           4,
1112           4,
1113           { { 9 }, { 9 }, { 9 }, { 5 } },
1114           { { 18 }, { 9 }, { 0 }, { 27 } } },
1115
1116         { SVGA3D_R8G8_B8G8_UNORM,
1117           SVGA3DBLOCKDESC_NONE,
1118           { 2, 1, 1 },
1119           4,
1120           4,
1121           { { 0 }, { 8 }, { 8 }, { 0 } },
1122           { { 0 }, { 0 }, { 8 }, { 0 } } },
1123
1124         { SVGA3D_G8R8_G8B8_UNORM,
1125           SVGA3DBLOCKDESC_NONE,
1126           { 2, 1, 1 },
1127           4,
1128           4,
1129           { { 0 }, { 8 }, { 8 }, { 0 } },
1130           { { 0 }, { 8 }, { 0 }, { 0 } } },
1131
1132         { SVGA3D_BC1_TYPELESS,
1133           SVGA3DBLOCKDESC_BC1_COMP_TYPELESS,
1134           { 4, 4, 1 },
1135           8,
1136           8,
1137           { { 0 }, { 0 }, { 64 }, { 0 } },
1138           { { 0 }, { 0 }, { 0 }, { 0 } } },
1139
1140         { SVGA3D_BC1_UNORM_SRGB,
1141           SVGA3DBLOCKDESC_BC1_COMP_UNORM_SRGB,
1142           { 4, 4, 1 },
1143           8,
1144           8,
1145           { { 0 }, { 0 }, { 64 }, { 0 } },
1146           { { 0 }, { 0 }, { 0 }, { 0 } } },
1147
1148         { SVGA3D_BC2_TYPELESS,
1149           SVGA3DBLOCKDESC_BC2_COMP_TYPELESS,
1150           { 4, 4, 1 },
1151           16,
1152           16,
1153           { { 0 }, { 0 }, { 128 }, { 0 } },
1154           { { 0 }, { 0 }, { 0 }, { 0 } } },
1155
1156         { SVGA3D_BC2_UNORM_SRGB,
1157           SVGA3DBLOCKDESC_BC2_COMP_UNORM_SRGB,
1158           { 4, 4, 1 },
1159           16,
1160           16,
1161           { { 0 }, { 0 }, { 128 }, { 0 } },
1162           { { 0 }, { 0 }, { 0 }, { 0 } } },
1163
1164         { SVGA3D_BC3_TYPELESS,
1165           SVGA3DBLOCKDESC_BC3_COMP_TYPELESS,
1166           { 4, 4, 1 },
1167           16,
1168           16,
1169           { { 0 }, { 0 }, { 128 }, { 0 } },
1170           { { 0 }, { 0 }, { 0 }, { 0 } } },
1171
1172         { SVGA3D_BC3_UNORM_SRGB,
1173           SVGA3DBLOCKDESC_BC3_COMP_UNORM_SRGB,
1174           { 4, 4, 1 },
1175           16,
1176           16,
1177           { { 0 }, { 0 }, { 128 }, { 0 } },
1178           { { 0 }, { 0 }, { 0 }, { 0 } } },
1179
1180         { SVGA3D_BC4_TYPELESS,
1181           SVGA3DBLOCKDESC_BC4_COMP_TYPELESS,
1182           { 4, 4, 1 },
1183           8,
1184           8,
1185           { { 0 }, { 0 }, { 64 }, { 0 } },
1186           { { 0 }, { 0 }, { 0 }, { 0 } } },
1187
1188         { SVGA3D_ATI1,
1189           SVGA3DBLOCKDESC_BC4_COMP_UNORM,
1190           { 4, 4, 1 },
1191           8,
1192           8,
1193           { { 0 }, { 0 }, { 64 }, { 0 } },
1194           { { 0 }, { 0 }, { 0 }, { 0 } } },
1195
1196         { SVGA3D_BC4_SNORM,
1197           SVGA3DBLOCKDESC_BC4_COMP_SNORM,
1198           { 4, 4, 1 },
1199           8,
1200           8,
1201           { { 0 }, { 0 }, { 64 }, { 0 } },
1202           { { 0 }, { 0 }, { 0 }, { 0 } } },
1203
1204         { SVGA3D_BC5_TYPELESS,
1205           SVGA3DBLOCKDESC_BC5_COMP_TYPELESS,
1206           { 4, 4, 1 },
1207           16,
1208           16,
1209           { { 0 }, { 0 }, { 128 }, { 0 } },
1210           { { 0 }, { 0 }, { 0 }, { 0 } } },
1211
1212         { SVGA3D_ATI2,
1213           SVGA3DBLOCKDESC_BC5_COMP_UNORM,
1214           { 4, 4, 1 },
1215           16,
1216           16,
1217           { { 0 }, { 0 }, { 128 }, { 0 } },
1218           { { 0 }, { 0 }, { 0 }, { 0 } } },
1219
1220         { SVGA3D_BC5_SNORM,
1221           SVGA3DBLOCKDESC_BC5_COMP_SNORM,
1222           { 4, 4, 1 },
1223           16,
1224           16,
1225           { { 0 }, { 0 }, { 128 }, { 0 } },
1226           { { 0 }, { 0 }, { 0 }, { 0 } } },
1227
1228         { SVGA3D_R10G10B10_XR_BIAS_A2_UNORM,
1229           SVGA3DBLOCKDESC_RGBA_UNORM,
1230           { 1, 1, 1 },
1231           4,
1232           4,
1233           { { 10 }, { 10 }, { 10 }, { 2 } },
1234           { { 20 }, { 10 }, { 0 }, { 30 } } },
1235
1236         { SVGA3D_B8G8R8A8_TYPELESS,
1237           SVGA3DBLOCKDESC_TYPELESS,
1238           { 1, 1, 1 },
1239           4,
1240           4,
1241           { { 8 }, { 8 }, { 8 }, { 8 } },
1242           { { 0 }, { 8 }, { 16 }, { 24 } } },
1243
1244         { SVGA3D_B8G8R8A8_UNORM_SRGB,
1245           SVGA3DBLOCKDESC_RGBA_UNORM_SRGB,
1246           { 1, 1, 1 },
1247           4,
1248           4,
1249           { { 8 }, { 8 }, { 8 }, { 8 } },
1250           { { 0 }, { 8 }, { 16 }, { 24 } } },
1251
1252         { SVGA3D_B8G8R8X8_TYPELESS,
1253           SVGA3DBLOCKDESC_TYPELESS,
1254           { 1, 1, 1 },
1255           4,
1256           4,
1257           { { 8 }, { 8 }, { 8 }, { 0 } },
1258           { { 0 }, { 8 }, { 16 }, { 24 } } },
1259
1260         { SVGA3D_B8G8R8X8_UNORM_SRGB,
1261           SVGA3DBLOCKDESC_RGB_UNORM_SRGB,
1262           { 1, 1, 1 },
1263           4,
1264           4,
1265           { { 8 }, { 8 }, { 8 }, { 0 } },
1266           { { 0 }, { 8 }, { 16 }, { 24 } } },
1267
1268         { SVGA3D_Z_DF16,
1269           SVGA3DBLOCKDESC_DEPTH_UNORM,
1270           { 1, 1, 1 },
1271           2,
1272           2,
1273           { { 0 }, { 0 }, { 16 }, { 0 } },
1274           { { 0 }, { 0 }, { 0 }, { 0 } } },
1275
1276         { SVGA3D_Z_DF24,
1277           SVGA3DBLOCKDESC_DEPTH_UNORM,
1278           { 1, 1, 1 },
1279           4,
1280           4,
1281           { { 0 }, { 0 }, { 24 }, { 0 } },
1282           { { 0 }, { 0 }, { 8 }, { 0 } } },
1283
1284         { SVGA3D_Z_D24S8_INT,
1285           SVGA3DBLOCKDESC_DS_UNORM,
1286           { 1, 1, 1 },
1287           4,
1288           4,
1289           { { 0 }, { 8 }, { 24 }, { 0 } },
1290           { { 0 }, { 0 }, { 8 }, { 0 } } },
1291
1292         { SVGA3D_YV12,
1293           SVGA3DBLOCKDESC_YV12,
1294           { 2, 2, 1 },
1295           6,
1296           2,
1297           { { 0 }, { 0 }, { 48 }, { 0 } },
1298           { { 0 }, { 0 }, { 0 }, { 0 } } },
1299
1300         { SVGA3D_R32G32B32A32_FLOAT,
1301           SVGA3DBLOCKDESC_RGBA_FP,
1302           { 1, 1, 1 },
1303           16,
1304           16,
1305           { { 32 }, { 32 }, { 32 }, { 32 } },
1306           { { 64 }, { 32 }, { 0 }, { 96 } } },
1307
1308         { SVGA3D_R16G16B16A16_FLOAT,
1309           SVGA3DBLOCKDESC_RGBA_FP,
1310           { 1, 1, 1 },
1311           8,
1312           8,
1313           { { 16 }, { 16 }, { 16 }, { 16 } },
1314           { { 32 }, { 16 }, { 0 }, { 48 } } },
1315
1316         { SVGA3D_R16G16B16A16_UNORM,
1317           SVGA3DBLOCKDESC_RGBA_UNORM,
1318           { 1, 1, 1 },
1319           8,
1320           8,
1321           { { 16 }, { 16 }, { 16 }, { 16 } },
1322           { { 32 }, { 16 }, { 0 }, { 48 } } },
1323
1324         { SVGA3D_R32G32_FLOAT,
1325           SVGA3DBLOCKDESC_RG_FP,
1326           { 1, 1, 1 },
1327           8,
1328           8,
1329           { { 0 }, { 32 }, { 32 }, { 0 } },
1330           { { 0 }, { 32 }, { 0 }, { 0 } } },
1331
1332         { SVGA3D_R10G10B10A2_UNORM,
1333           SVGA3DBLOCKDESC_RGBA_UNORM,
1334           { 1, 1, 1 },
1335           4,
1336           4,
1337           { { 10 }, { 10 }, { 10 }, { 2 } },
1338           { { 20 }, { 10 }, { 0 }, { 30 } } },
1339
1340         { SVGA3D_R8G8B8A8_SNORM,
1341           SVGA3DBLOCKDESC_RGBA_SNORM,
1342           { 1, 1, 1 },
1343           4,
1344           4,
1345           { { 8 }, { 8 }, { 8 }, { 8 } },
1346           { { 16 }, { 8 }, { 0 }, { 24 } } },
1347
1348         { SVGA3D_R16G16_FLOAT,
1349           SVGA3DBLOCKDESC_RG_FP,
1350           { 1, 1, 1 },
1351           4,
1352           4,
1353           { { 0 }, { 16 }, { 16 }, { 0 } },
1354           { { 0 }, { 16 }, { 0 }, { 0 } } },
1355
1356         { SVGA3D_R16G16_UNORM,
1357           SVGA3DBLOCKDESC_RG_UNORM,
1358           { 1, 1, 1 },
1359           4,
1360           4,
1361           { { 0 }, { 16 }, { 16 }, { 0 } },
1362           { { 0 }, { 16 }, { 0 }, { 0 } } },
1363
1364         { SVGA3D_R16G16_SNORM,
1365           SVGA3DBLOCKDESC_RG_SNORM,
1366           { 1, 1, 1 },
1367           4,
1368           4,
1369           { { 0 }, { 16 }, { 16 }, { 0 } },
1370           { { 0 }, { 16 }, { 0 }, { 0 } } },
1371
1372         { SVGA3D_R32_FLOAT,
1373           SVGA3DBLOCKDESC_R_FP,
1374           { 1, 1, 1 },
1375           4,
1376           4,
1377           { { 0 }, { 0 }, { 32 }, { 0 } },
1378           { { 0 }, { 0 }, { 0 }, { 0 } } },
1379
1380         { SVGA3D_R8G8_SNORM,
1381           SVGA3DBLOCKDESC_RG_SNORM,
1382           { 1, 1, 1 },
1383           2,
1384           2,
1385           { { 0 }, { 8 }, { 8 }, { 0 } },
1386           { { 0 }, { 8 }, { 0 }, { 0 } } },
1387
1388         { SVGA3D_R16_FLOAT,
1389           SVGA3DBLOCKDESC_R_FP,
1390           { 1, 1, 1 },
1391           2,
1392           2,
1393           { { 0 }, { 0 }, { 16 }, { 0 } },
1394           { { 0 }, { 0 }, { 0 }, { 0 } } },
1395
1396         { SVGA3D_D16_UNORM,
1397           SVGA3DBLOCKDESC_DEPTH_UNORM,
1398           { 1, 1, 1 },
1399           2,
1400           2,
1401           { { 0 }, { 0 }, { 16 }, { 0 } },
1402           { { 0 }, { 0 }, { 0 }, { 0 } } },
1403
1404         { SVGA3D_A8_UNORM,
1405           SVGA3DBLOCKDESC_A_UNORM,
1406           { 1, 1, 1 },
1407           1,
1408           1,
1409           { { 0 }, { 0 }, { 0 }, { 8 } },
1410           { { 0 }, { 0 }, { 0 }, { 0 } } },
1411
1412         { SVGA3D_BC1_UNORM,
1413           SVGA3DBLOCKDESC_BC1_COMP_UNORM,
1414           { 4, 4, 1 },
1415           8,
1416           8,
1417           { { 0 }, { 0 }, { 64 }, { 0 } },
1418           { { 0 }, { 0 }, { 0 }, { 0 } } },
1419
1420         { SVGA3D_BC2_UNORM,
1421           SVGA3DBLOCKDESC_BC2_COMP_UNORM,
1422           { 4, 4, 1 },
1423           16,
1424           16,
1425           { { 0 }, { 0 }, { 128 }, { 0 } },
1426           { { 0 }, { 0 }, { 0 }, { 0 } } },
1427
1428         { SVGA3D_BC3_UNORM,
1429           SVGA3DBLOCKDESC_BC3_COMP_UNORM,
1430           { 4, 4, 1 },
1431           16,
1432           16,
1433           { { 0 }, { 0 }, { 128 }, { 0 } },
1434           { { 0 }, { 0 }, { 0 }, { 0 } } },
1435
1436         { SVGA3D_B5G6R5_UNORM,
1437           SVGA3DBLOCKDESC_RGB_UNORM,
1438           { 1, 1, 1 },
1439           2,
1440           2,
1441           { { 5 }, { 6 }, { 5 }, { 0 } },
1442           { { 0 }, { 5 }, { 11 }, { 0 } } },
1443
1444         { SVGA3D_B5G5R5A1_UNORM,
1445           SVGA3DBLOCKDESC_RGBA_UNORM,
1446           { 1, 1, 1 },
1447           2,
1448           2,
1449           { { 5 }, { 5 }, { 5 }, { 1 } },
1450           { { 0 }, { 5 }, { 10 }, { 15 } } },
1451
1452         { SVGA3D_B8G8R8A8_UNORM,
1453           SVGA3DBLOCKDESC_RGBA_UNORM,
1454           { 1, 1, 1 },
1455           4,
1456           4,
1457           { { 8 }, { 8 }, { 8 }, { 8 } },
1458           { { 0 }, { 8 }, { 16 }, { 24 } } },
1459
1460         { SVGA3D_B8G8R8X8_UNORM,
1461           SVGA3DBLOCKDESC_RGB_UNORM,
1462           { 1, 1, 1 },
1463           4,
1464           4,
1465           { { 8 }, { 8 }, { 8 }, { 0 } },
1466           { { 0 }, { 8 }, { 16 }, { 24 } } },
1467
1468         { SVGA3D_BC4_UNORM,
1469           SVGA3DBLOCKDESC_BC4_COMP_UNORM,
1470           { 4, 4, 1 },
1471           8,
1472           8,
1473           { { 0 }, { 0 }, { 64 }, { 0 } },
1474           { { 0 }, { 0 }, { 0 }, { 0 } } },
1475
1476         { SVGA3D_BC5_UNORM,
1477           SVGA3DBLOCKDESC_BC5_COMP_UNORM,
1478           { 4, 4, 1 },
1479           16,
1480           16,
1481           { { 0 }, { 0 }, { 128 }, { 0 } },
1482           { { 0 }, { 0 }, { 0 }, { 0 } } },
1483
1484         { SVGA3D_B4G4R4A4_UNORM,
1485           SVGA3DBLOCKDESC_RGBA_UNORM,
1486           { 1, 1, 1 },
1487           2,
1488           2,
1489           { { 4 }, { 4 }, { 4 }, { 4 } },
1490           { { 0 }, { 4 }, { 8 }, { 12 } } },
1491
1492         { SVGA3D_BC6H_TYPELESS,
1493           SVGA3DBLOCKDESC_BC6H_COMP_TYPELESS,
1494           { 4, 4, 1 },
1495           16,
1496           16,
1497           { { 0 }, { 0 }, { 128 }, { 0 } },
1498           { { 0 }, { 0 }, { 0 }, { 0 } } },
1499
1500         { SVGA3D_BC6H_UF16,
1501           SVGA3DBLOCKDESC_BC6H_COMP_UF16,
1502           { 4, 4, 1 },
1503           16,
1504           16,
1505           { { 0 }, { 0 }, { 128 }, { 0 } },
1506           { { 0 }, { 0 }, { 0 }, { 0 } } },
1507
1508         { SVGA3D_BC6H_SF16,
1509           SVGA3DBLOCKDESC_BC6H_COMP_SF16,
1510           { 4, 4, 1 },
1511           16,
1512           16,
1513           { { 0 }, { 0 }, { 128 }, { 0 } },
1514           { { 0 }, { 0 }, { 0 }, { 0 } } },
1515
1516         { SVGA3D_BC7_TYPELESS,
1517           SVGA3DBLOCKDESC_BC7_COMP_TYPELESS,
1518           { 4, 4, 1 },
1519           16,
1520           16,
1521           { { 0 }, { 0 }, { 128 }, { 0 } },
1522           { { 0 }, { 0 }, { 0 }, { 0 } } },
1523
1524         { SVGA3D_BC7_UNORM,
1525           SVGA3DBLOCKDESC_BC7_COMP_UNORM,
1526           { 4, 4, 1 },
1527           16,
1528           16,
1529           { { 0 }, { 0 }, { 128 }, { 0 } },
1530           { { 0 }, { 0 }, { 0 }, { 0 } } },
1531
1532         { SVGA3D_BC7_UNORM_SRGB,
1533           SVGA3DBLOCKDESC_BC7_COMP_UNORM_SRGB,
1534           { 4, 4, 1 },
1535           16,
1536           16,
1537           { { 0 }, { 0 }, { 128 }, { 0 } },
1538           { { 0 }, { 0 }, { 0 }, { 0 } } },
1539
1540         { SVGA3D_AYUV,
1541           SVGA3DBLOCKDESC_AYUV,
1542           { 1, 1, 1 },
1543           4,
1544           4,
1545           { { 8 }, { 8 }, { 8 }, { 8 } },
1546           { { 0 }, { 8 }, { 16 }, { 24 } } },
1547
1548         { SVGA3D_R11G11B10_TYPELESS,
1549           SVGA3DBLOCKDESC_TYPELESS,
1550           { 1, 1, 1 },
1551           4,
1552           4,
1553           { { 10 }, { 11 }, { 11 }, { 0 } },
1554           { { 22 }, { 11 }, { 0 }, { 0 } } },
1555 };
1556
1557 #ifdef __cplusplus
1558 }
1559 #endif
1560
1561 #endif
This page took 0.130559 seconds and 4 git commands to generate.