1 /*
2  * Copyright (c) 1993-2017, NVIDIA CORPORATION. All rights reserved.
3  *
4  * Permission is hereby granted, free of charge, to any person obtaining a
5  * copy of this software and associated documentation files (the "Software"),
6  * to deal in the Software without restriction, including without limitation
7  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
8  * and/or sell copies of the Software, and to permit persons to whom the
9  * Software is furnished to do so, subject to the following conditions:
10  *
11  * The above copyright notice and this permission notice shall be included in
12  * all copies or substantial portions of the Software.
13  *
14  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
17  * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
19  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
20  * DEALINGS IN THE SOFTWARE.
21  */
22 
23 
24 #ifndef _clC37e_h_
25 #define _clC37e_h_
26 
27 // class methods
28 #define NVC37E_UPDATE                                                           (0x00000200)
29 #define NVC37E_UPDATE_INTERLOCK_WITH_WIN_IMM                                    12:12
30 #define NVC37E_UPDATE_INTERLOCK_WITH_WIN_IMM_DISABLE                            (0x00000000)
31 #define NVC37E_UPDATE_INTERLOCK_WITH_WIN_IMM_ENABLE                             (0x00000001)
32 #define NVC37E_SET_SEMAPHORE_CONTROL                                            (0x0000020C)
33 #define NVC37E_SET_SEMAPHORE_CONTROL_OFFSET                                     7:0
34 #define NVC37E_SET_SEMAPHORE_ACQUIRE                                            (0x00000210)
35 #define NVC37E_SET_SEMAPHORE_ACQUIRE_VALUE                                      31:0
36 #define NVC37E_SET_SEMAPHORE_RELEASE                                            (0x00000214)
37 #define NVC37E_SET_SEMAPHORE_RELEASE_VALUE                                      31:0
38 #define NVC37E_SET_CONTEXT_DMA_SEMAPHORE                                        (0x00000218)
39 #define NVC37E_SET_CONTEXT_DMA_SEMAPHORE_HANDLE                                 31:0
40 #define NVC37E_SET_CONTEXT_DMA_NOTIFIER                                         (0x0000021C)
41 #define NVC37E_SET_CONTEXT_DMA_NOTIFIER_HANDLE                                  31:0
42 #define NVC37E_SET_NOTIFIER_CONTROL                                             (0x00000220)
43 #define NVC37E_SET_NOTIFIER_CONTROL_MODE                                        0:0
44 #define NVC37E_SET_NOTIFIER_CONTROL_MODE_WRITE                                  (0x00000000)
45 #define NVC37E_SET_NOTIFIER_CONTROL_MODE_WRITE_AWAKEN                           (0x00000001)
46 #define NVC37E_SET_NOTIFIER_CONTROL_OFFSET                                      11:4
47 #define NVC37E_SET_SIZE                                                         (0x00000224)
48 #define NVC37E_SET_SIZE_WIDTH                                                   15:0
49 #define NVC37E_SET_SIZE_HEIGHT                                                  31:16
50 #define NVC37E_SET_STORAGE                                                      (0x00000228)
51 #define NVC37E_SET_STORAGE_BLOCK_HEIGHT                                         3:0
52 #define NVC37E_SET_STORAGE_BLOCK_HEIGHT_NVD_BLOCK_HEIGHT_ONE_GOB                (0x00000000)
53 #define NVC37E_SET_STORAGE_BLOCK_HEIGHT_NVD_BLOCK_HEIGHT_TWO_GOBS               (0x00000001)
54 #define NVC37E_SET_STORAGE_BLOCK_HEIGHT_NVD_BLOCK_HEIGHT_FOUR_GOBS              (0x00000002)
55 #define NVC37E_SET_STORAGE_BLOCK_HEIGHT_NVD_BLOCK_HEIGHT_EIGHT_GOBS             (0x00000003)
56 #define NVC37E_SET_STORAGE_BLOCK_HEIGHT_NVD_BLOCK_HEIGHT_SIXTEEN_GOBS           (0x00000004)
57 #define NVC37E_SET_STORAGE_BLOCK_HEIGHT_NVD_BLOCK_HEIGHT_THIRTYTWO_GOBS         (0x00000005)
58 #define NVC37E_SET_STORAGE_MEMORY_LAYOUT                                        4:4
59 #define NVC37E_SET_STORAGE_MEMORY_LAYOUT_BLOCKLINEAR                            (0x00000000)
60 #define NVC37E_SET_STORAGE_MEMORY_LAYOUT_PITCH                                  (0x00000001)
61 #define NVC37E_SET_PARAMS                                                       (0x0000022C)
62 #define NVC37E_SET_PARAMS_FORMAT                                                7:0
63 #define NVC37E_SET_PARAMS_FORMAT_I8                                             (0x0000001E)
64 #define NVC37E_SET_PARAMS_FORMAT_R4G4B4A4                                       (0x0000002F)
65 #define NVC37E_SET_PARAMS_FORMAT_R5G6B5                                         (0x000000E8)
66 #define NVC37E_SET_PARAMS_FORMAT_A1R5G5B5                                       (0x000000E9)
67 #define NVC37E_SET_PARAMS_FORMAT_R5G5B5A1                                       (0x0000002E)
68 #define NVC37E_SET_PARAMS_FORMAT_A8R8G8B8                                       (0x000000CF)
69 #define NVC37E_SET_PARAMS_FORMAT_X8R8G8B8                                       (0x000000E6)
70 #define NVC37E_SET_PARAMS_FORMAT_A8B8G8R8                                       (0x000000D5)
71 #define NVC37E_SET_PARAMS_FORMAT_X8B8G8R8                                       (0x000000F9)
72 #define NVC37E_SET_PARAMS_FORMAT_A2R10G10B10                                    (0x000000DF)
73 #define NVC37E_SET_PARAMS_FORMAT_A2B10G10R10                                    (0x000000D1)
74 #define NVC37E_SET_PARAMS_FORMAT_X2BL10GL10RL10_XRBIAS                          (0x00000022)
75 #define NVC37E_SET_PARAMS_FORMAT_X2BL10GL10RL10_XVYCC                           (0x00000024)
76 #define NVC37E_SET_PARAMS_FORMAT_R16_G16_B16_A16_NVBIAS                         (0x00000023)
77 #define NVC37E_SET_PARAMS_FORMAT_R16_G16_B16_A16                                (0x000000C6)
78 #define NVC37E_SET_PARAMS_FORMAT_RF16_GF16_BF16_AF16                            (0x000000CA)
79 #define NVC37E_SET_PARAMS_FORMAT_Y8_U8__Y8_V8_N422                              (0x00000028)
80 #define NVC37E_SET_PARAMS_FORMAT_U8_Y8__V8_Y8_N422                              (0x00000029)
81 #define NVC37E_SET_PARAMS_FORMAT_Y8___U8V8_N444                                 (0x00000035)
82 #define NVC37E_SET_PARAMS_FORMAT_Y8___U8V8_N422                                 (0x00000036)
83 #define NVC37E_SET_PARAMS_FORMAT_Y8___U8V8_N422R                                (0x00000037)
84 #define NVC37E_SET_PARAMS_FORMAT_Y8___V8U8_N420                                 (0x00000038)
85 #define NVC37E_SET_PARAMS_FORMAT_Y8___U8___V8_N444                              (0x0000003A)
86 #define NVC37E_SET_PARAMS_FORMAT_Y8___U8___V8_N420                              (0x0000003B)
87 #define NVC37E_SET_PARAMS_FORMAT_Y10___U10V10_N444                              (0x00000055)
88 #define NVC37E_SET_PARAMS_FORMAT_Y10___U10V10_N422                              (0x00000056)
89 #define NVC37E_SET_PARAMS_FORMAT_Y10___U10V10_N422R                             (0x00000057)
90 #define NVC37E_SET_PARAMS_FORMAT_Y10___V10U10_N420                              (0x00000058)
91 #define NVC37E_SET_PARAMS_FORMAT_Y10___U10___V10_N444                           (0x0000005A)
92 #define NVC37E_SET_PARAMS_FORMAT_Y10___U10___V10_N420                           (0x0000005B)
93 #define NVC37E_SET_PARAMS_FORMAT_Y12___U12V12_N444                              (0x00000075)
94 #define NVC37E_SET_PARAMS_FORMAT_Y12___U12V12_N422                              (0x00000076)
95 #define NVC37E_SET_PARAMS_FORMAT_Y12___U12V12_N422R                             (0x00000077)
96 #define NVC37E_SET_PARAMS_FORMAT_Y12___V12U12_N420                              (0x00000078)
97 #define NVC37E_SET_PARAMS_FORMAT_Y12___U12___V12_N444                           (0x0000007A)
98 #define NVC37E_SET_PARAMS_FORMAT_Y12___U12___V12_N420                           (0x0000007B)
99 #define NVC37E_SET_PARAMS_COLOR_SPACE                                           9:8
100 #define NVC37E_SET_PARAMS_COLOR_SPACE_RGB                                       (0x00000000)
101 #define NVC37E_SET_PARAMS_COLOR_SPACE_YUV_601                                   (0x00000001)
102 #define NVC37E_SET_PARAMS_COLOR_SPACE_YUV_709                                   (0x00000002)
103 #define NVC37E_SET_PARAMS_COLOR_SPACE_YUV_2020                                  (0x00000003)
104 #define NVC37E_SET_PARAMS_INPUT_RANGE                                           13:12
105 #define NVC37E_SET_PARAMS_INPUT_RANGE_BYPASS                                    (0x00000000)
106 #define NVC37E_SET_PARAMS_INPUT_RANGE_LIMITED                                   (0x00000001)
107 #define NVC37E_SET_PARAMS_INPUT_RANGE_FULL                                      (0x00000002)
108 #define NVC37E_SET_PARAMS_UNDERREPLICATE                                        16:16
109 #define NVC37E_SET_PARAMS_UNDERREPLICATE_DISABLE                                (0x00000000)
110 #define NVC37E_SET_PARAMS_UNDERREPLICATE_ENABLE                                 (0x00000001)
111 #define NVC37E_SET_PARAMS_DE_GAMMA                                              21:20
112 #define NVC37E_SET_PARAMS_DE_GAMMA_NONE                                         (0x00000000)
113 #define NVC37E_SET_PARAMS_DE_GAMMA_SRGB                                         (0x00000001)
114 #define NVC37E_SET_PARAMS_DE_GAMMA_YUV8_10                                      (0x00000002)
115 #define NVC37E_SET_PARAMS_DE_GAMMA_YUV12                                        (0x00000003)
116 #define NVC37E_SET_PARAMS_CSC                                                   17:17
117 #define NVC37E_SET_PARAMS_CSC_DISABLE                                           (0x00000000)
118 #define NVC37E_SET_PARAMS_CSC_ENABLE                                            (0x00000001)
119 #define NVC37E_SET_PARAMS_CLAMP_BEFORE_BLEND                                    18:18
120 #define NVC37E_SET_PARAMS_CLAMP_BEFORE_BLEND_DISABLE                            (0x00000000)
121 #define NVC37E_SET_PARAMS_CLAMP_BEFORE_BLEND_ENABLE                             (0x00000001)
122 #define NVC37E_SET_PARAMS_SWAP_UV                                               19:19
123 #define NVC37E_SET_PARAMS_SWAP_UV_DISABLE                                       (0x00000000)
124 #define NVC37E_SET_PARAMS_SWAP_UV_ENABLE                                        (0x00000001)
125 #define NVC37E_SET_PLANAR_STORAGE(b)                                            (0x00000230 + (b)*0x00000004)
126 #define NVC37E_SET_PLANAR_STORAGE_PITCH                                         12:0
127 #define NVC37E_SET_CONTEXT_DMA_ISO(b)                                           (0x00000240 + (b)*0x00000004)
128 #define NVC37E_SET_CONTEXT_DMA_ISO_HANDLE                                       31:0
129 #define NVC37E_SET_OFFSET(b)                                                    (0x00000260 + (b)*0x00000004)
130 #define NVC37E_SET_OFFSET_ORIGIN                                                31:0
131 #define NVC37E_SET_POINT_IN(b)                                                  (0x00000290 + (b)*0x00000004)
132 #define NVC37E_SET_POINT_IN_X                                                   15:0
133 #define NVC37E_SET_POINT_IN_Y                                                   31:16
134 #define NVC37E_SET_SIZE_IN                                                      (0x00000298)
135 #define NVC37E_SET_SIZE_IN_WIDTH                                                14:0
136 #define NVC37E_SET_SIZE_IN_HEIGHT                                               30:16
137 #define NVC37E_SET_SIZE_OUT                                                     (0x000002A4)
138 #define NVC37E_SET_SIZE_OUT_WIDTH                                               14:0
139 #define NVC37E_SET_SIZE_OUT_HEIGHT                                              30:16
140 #define NVC37E_SET_CONTROL_INPUT_LUT                                            (0x000002B0)
141 #define NVC37E_SET_CONTROL_INPUT_LUT_SIZE                                       1:0
142 #define NVC37E_SET_CONTROL_INPUT_LUT_SIZE_SIZE_257                              (0x00000000)
143 #define NVC37E_SET_CONTROL_INPUT_LUT_SIZE_SIZE_1025                             (0x00000002)
144 #define NVC37E_SET_CONTROL_INPUT_LUT_RANGE                                      5:4
145 #define NVC37E_SET_CONTROL_INPUT_LUT_RANGE_UNITY                                (0x00000000)
146 #define NVC37E_SET_CONTROL_INPUT_LUT_RANGE_XRBIAS                               (0x00000001)
147 #define NVC37E_SET_CONTROL_INPUT_LUT_RANGE_XVYCC                                (0x00000002)
148 #define NVC37E_SET_CONTROL_INPUT_LUT_OUTPUT_MODE                                9:8
149 #define NVC37E_SET_CONTROL_INPUT_LUT_OUTPUT_MODE_INDEX                          (0x00000000)
150 #define NVC37E_SET_CONTROL_INPUT_LUT_OUTPUT_MODE_INTERPOLATE                    (0x00000001)
151 #define NVC37E_SET_OFFSET_INPUT_LUT                                             (0x000002B4)
152 #define NVC37E_SET_OFFSET_INPUT_LUT_ORIGIN                                      31:0
153 #define NVC37E_SET_CONTEXT_DMA_INPUT_LUT                                        (0x000002B8)
154 #define NVC37E_SET_CONTEXT_DMA_INPUT_LUT_HANDLE                                 31:0
155 #define NVC37E_SET_CSC_RED2RED                                                  (0x000002BC)
156 #define NVC37E_SET_CSC_RED2RED_COEFF                                            18:0
157 #define NVC37E_SET_CSC_GREEN2RED                                                (0x000002C0)
158 #define NVC37E_SET_CSC_GREEN2RED_COEFF                                          18:0
159 #define NVC37E_SET_CSC_BLUE2RED                                                 (0x000002C4)
160 #define NVC37E_SET_CSC_BLUE2RED_COEFF                                           18:0
161 #define NVC37E_SET_CSC_CONSTANT2RED                                             (0x000002C8)
162 #define NVC37E_SET_CSC_CONSTANT2RED_COEFF                                       18:0
163 #define NVC37E_SET_CSC_RED2GREEN                                                (0x000002CC)
164 #define NVC37E_SET_CSC_RED2GREEN_COEFF                                          18:0
165 #define NVC37E_SET_CSC_GREEN2GREEN                                              (0x000002D0)
166 #define NVC37E_SET_CSC_GREEN2GREEN_COEFF                                        18:0
167 #define NVC37E_SET_CSC_BLUE2GREEN                                               (0x000002D4)
168 #define NVC37E_SET_CSC_BLUE2GREEN_COEFF                                         18:0
169 #define NVC37E_SET_CSC_CONSTANT2GREEN                                           (0x000002D8)
170 #define NVC37E_SET_CSC_CONSTANT2GREEN_COEFF                                     18:0
171 #define NVC37E_SET_CSC_RED2BLUE                                                 (0x000002DC)
172 #define NVC37E_SET_CSC_RED2BLUE_COEFF                                           18:0
173 #define NVC37E_SET_CSC_GREEN2BLUE                                               (0x000002E0)
174 #define NVC37E_SET_CSC_GREEN2BLUE_COEFF                                         18:0
175 #define NVC37E_SET_CSC_BLUE2BLUE                                                (0x000002E4)
176 #define NVC37E_SET_CSC_BLUE2BLUE_COEFF                                          18:0
177 #define NVC37E_SET_CSC_CONSTANT2BLUE                                            (0x000002E8)
178 #define NVC37E_SET_CSC_CONSTANT2BLUE_COEFF                                      18:0
179 #define NVC37E_SET_COMPOSITION_CONTROL                                          (0x000002EC)
180 #define NVC37E_SET_COMPOSITION_CONTROL_COLOR_KEY_SELECT                         1:0
181 #define NVC37E_SET_COMPOSITION_CONTROL_COLOR_KEY_SELECT_DISABLE                 (0x00000000)
182 #define NVC37E_SET_COMPOSITION_CONTROL_COLOR_KEY_SELECT_SRC                     (0x00000001)
183 #define NVC37E_SET_COMPOSITION_CONTROL_COLOR_KEY_SELECT_DST                     (0x00000002)
184 #define NVC37E_SET_COMPOSITION_CONTROL_DEPTH                                    11:4
185 #define NVC37E_SET_COMPOSITION_CONSTANT_ALPHA                                   (0x000002F0)
186 #define NVC37E_SET_COMPOSITION_CONSTANT_ALPHA_K1                                7:0
187 #define NVC37E_SET_COMPOSITION_CONSTANT_ALPHA_K2                                15:8
188 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT                                    (0x000002F4)
189 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT_SRC_COLOR_FACTOR_MATCH_SELECT      3:0
190 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT_SRC_COLOR_FACTOR_MATCH_SELECT_ZERO (0x00000000)
191 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT_SRC_COLOR_FACTOR_MATCH_SELECT_ONE  (0x00000001)
192 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT_SRC_COLOR_FACTOR_MATCH_SELECT_K1   (0x00000002)
193 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT_SRC_COLOR_FACTOR_MATCH_SELECT_K1_TIMES_SRC (0x00000005)
194 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT_SRC_COLOR_FACTOR_MATCH_SELECT_K1_TIMES_DST (0x00000006)
195 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT_SRC_COLOR_FACTOR_MATCH_SELECT_NEG_K1_TIMES_DST (0x00000008)
196 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT_SRC_COLOR_FACTOR_NO_MATCH_SELECT   7:4
197 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT_SRC_COLOR_FACTOR_NO_MATCH_SELECT_ZERO (0x00000000)
198 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT_SRC_COLOR_FACTOR_NO_MATCH_SELECT_ONE (0x00000001)
199 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT_SRC_COLOR_FACTOR_NO_MATCH_SELECT_K1 (0x00000002)
200 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT_SRC_COLOR_FACTOR_NO_MATCH_SELECT_K1_TIMES_SRC (0x00000005)
201 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT_SRC_COLOR_FACTOR_NO_MATCH_SELECT_K1_TIMES_DST (0x00000006)
202 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT_SRC_COLOR_FACTOR_NO_MATCH_SELECT_NEG_K1_TIMES_DST (0x00000008)
203 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT_DST_COLOR_FACTOR_MATCH_SELECT      11:8
204 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT_DST_COLOR_FACTOR_MATCH_SELECT_ZERO (0x00000000)
205 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT_DST_COLOR_FACTOR_MATCH_SELECT_ONE  (0x00000001)
206 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT_DST_COLOR_FACTOR_MATCH_SELECT_K1   (0x00000002)
207 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT_DST_COLOR_FACTOR_MATCH_SELECT_K2   (0x00000003)
208 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT_DST_COLOR_FACTOR_MATCH_SELECT_NEG_K1 (0x00000004)
209 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT_DST_COLOR_FACTOR_MATCH_SELECT_K1_TIMES_DST (0x00000006)
210 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT_DST_COLOR_FACTOR_MATCH_SELECT_NEG_K1_TIMES_SRC (0x00000007)
211 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT_DST_COLOR_FACTOR_MATCH_SELECT_NEG_K1_TIMES_DST (0x00000008)
212 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT_DST_COLOR_FACTOR_NO_MATCH_SELECT   15:12
213 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT_DST_COLOR_FACTOR_NO_MATCH_SELECT_ZERO (0x00000000)
214 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT_DST_COLOR_FACTOR_NO_MATCH_SELECT_ONE (0x00000001)
215 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT_DST_COLOR_FACTOR_NO_MATCH_SELECT_K1 (0x00000002)
216 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT_DST_COLOR_FACTOR_NO_MATCH_SELECT_K2 (0x00000003)
217 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT_DST_COLOR_FACTOR_NO_MATCH_SELECT_NEG_K1 (0x00000004)
218 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT_DST_COLOR_FACTOR_NO_MATCH_SELECT_K1_TIMES_DST (0x00000006)
219 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT_DST_COLOR_FACTOR_NO_MATCH_SELECT_NEG_K1_TIMES_SRC (0x00000007)
220 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT_DST_COLOR_FACTOR_NO_MATCH_SELECT_NEG_K1_TIMES_DST (0x00000008)
221 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT_SRC_ALPHA_FACTOR_MATCH_SELECT      19:16
222 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT_SRC_ALPHA_FACTOR_MATCH_SELECT_ZERO (0x00000000)
223 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT_SRC_ALPHA_FACTOR_MATCH_SELECT_K1   (0x00000002)
224 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT_SRC_ALPHA_FACTOR_MATCH_SELECT_K2   (0x00000003)
225 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT_SRC_ALPHA_FACTOR_MATCH_SELECT_NEG_K1_TIMES_DST (0x00000008)
226 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT_SRC_ALPHA_FACTOR_NO_MATCH_SELECT   23:20
227 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT_SRC_ALPHA_FACTOR_NO_MATCH_SELECT_ZERO (0x00000000)
228 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT_SRC_ALPHA_FACTOR_NO_MATCH_SELECT_K1 (0x00000002)
229 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT_SRC_ALPHA_FACTOR_NO_MATCH_SELECT_K2 (0x00000003)
230 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT_SRC_ALPHA_FACTOR_NO_MATCH_SELECT_NEG_K1_TIMES_DST (0x00000008)
231 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT_DST_ALPHA_FACTOR_MATCH_SELECT      27:24
232 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT_DST_ALPHA_FACTOR_MATCH_SELECT_ZERO (0x00000000)
233 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT_DST_ALPHA_FACTOR_MATCH_SELECT_ONE  (0x00000001)
234 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT_DST_ALPHA_FACTOR_MATCH_SELECT_K2   (0x00000003)
235 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT_DST_ALPHA_FACTOR_MATCH_SELECT_NEG_K1_TIMES_SRC (0x00000007)
236 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT_DST_ALPHA_FACTOR_NO_MATCH_SELECT   31:28
237 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT_DST_ALPHA_FACTOR_NO_MATCH_SELECT_ZERO (0x00000000)
238 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT_DST_ALPHA_FACTOR_NO_MATCH_SELECT_ONE (0x00000001)
239 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT_DST_ALPHA_FACTOR_NO_MATCH_SELECT_K2 (0x00000003)
240 #define NVC37E_SET_COMPOSITION_FACTOR_SELECT_DST_ALPHA_FACTOR_NO_MATCH_SELECT_NEG_K1_TIMES_SRC (0x00000007)
241 #define NVC37E_SET_KEY_ALPHA                                                    (0x000002F8)
242 #define NVC37E_SET_KEY_ALPHA_MIN                                                15:0
243 #define NVC37E_SET_KEY_ALPHA_MAX                                                31:16
244 #define NVC37E_SET_KEY_RED_CR                                                   (0x000002FC)
245 #define NVC37E_SET_KEY_RED_CR_MIN                                               15:0
246 #define NVC37E_SET_KEY_RED_CR_MAX                                               31:16
247 #define NVC37E_SET_KEY_GREEN_Y                                                  (0x00000300)
248 #define NVC37E_SET_KEY_GREEN_Y_MIN                                              15:0
249 #define NVC37E_SET_KEY_GREEN_Y_MAX                                              31:16
250 #define NVC37E_SET_KEY_BLUE_CB                                                  (0x00000304)
251 #define NVC37E_SET_KEY_BLUE_CB_MIN                                              15:0
252 #define NVC37E_SET_KEY_BLUE_CB_MAX                                              31:16
253 #define NVC37E_SET_PRESENT_CONTROL                                              (0x00000308)
254 #define NVC37E_SET_PRESENT_CONTROL_MIN_PRESENT_INTERVAL                         3:0
255 #define NVC37E_SET_PRESENT_CONTROL_BEGIN_MODE                                   6:4
256 #define NVC37E_SET_PRESENT_CONTROL_BEGIN_MODE_NON_TEARING                       (0x00000000)
257 #define NVC37E_SET_PRESENT_CONTROL_BEGIN_MODE_IMMEDIATE                         (0x00000001)
258 #define NVC37E_SET_PRESENT_CONTROL_TIMESTAMP_MODE                               8:8
259 #define NVC37E_SET_PRESENT_CONTROL_TIMESTAMP_MODE_DISABLE                       (0x00000000)
260 #define NVC37E_SET_PRESENT_CONTROL_TIMESTAMP_MODE_ENABLE                        (0x00000001)
261 #define NVC37E_SET_INTERLOCK_FLAGS                                              (0x00000370)
262 #define NVC37E_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CORE                          0:0
263 #define NVC37E_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CORE_DISABLE                  (0x00000000)
264 #define NVC37E_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CORE_ENABLE                   (0x00000001)
265 #define NVC37E_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR(i)                     ((i)+1):((i)+1)
266 #define NVC37E_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR__SIZE_1                8
267 #define NVC37E_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR_DISABLE                (0x00000000)
268 #define NVC37E_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR_ENABLE                 (0x00000001)
269 #define NVC37E_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR0                       1:1
270 #define NVC37E_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR0_DISABLE               (0x00000000)
271 #define NVC37E_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR0_ENABLE                (0x00000001)
272 #define NVC37E_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR1                       2:2
273 #define NVC37E_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR1_DISABLE               (0x00000000)
274 #define NVC37E_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR1_ENABLE                (0x00000001)
275 #define NVC37E_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR2                       3:3
276 #define NVC37E_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR2_DISABLE               (0x00000000)
277 #define NVC37E_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR2_ENABLE                (0x00000001)
278 #define NVC37E_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR3                       4:4
279 #define NVC37E_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR3_DISABLE               (0x00000000)
280 #define NVC37E_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR3_ENABLE                (0x00000001)
281 #define NVC37E_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR4                       5:5
282 #define NVC37E_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR4_DISABLE               (0x00000000)
283 #define NVC37E_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR4_ENABLE                (0x00000001)
284 #define NVC37E_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR5                       6:6
285 #define NVC37E_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR5_DISABLE               (0x00000000)
286 #define NVC37E_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR5_ENABLE                (0x00000001)
287 #define NVC37E_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR6                       7:7
288 #define NVC37E_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR6_DISABLE               (0x00000000)
289 #define NVC37E_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR6_ENABLE                (0x00000001)
290 #define NVC37E_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR7                       8:8
291 #define NVC37E_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR7_DISABLE               (0x00000000)
292 #define NVC37E_SET_INTERLOCK_FLAGS_INTERLOCK_WITH_CURSOR7_ENABLE                (0x00000001)
293 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS                                       (0x00000374)
294 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW(i)              ((i)+0):((i)+0)
295 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW__SIZE_1         32
296 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW_DISABLE         (0x00000000)
297 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW_ENABLE          (0x00000001)
298 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW0                0:0
299 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW0_DISABLE        (0x00000000)
300 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW0_ENABLE         (0x00000001)
301 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW1                1:1
302 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW1_DISABLE        (0x00000000)
303 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW1_ENABLE         (0x00000001)
304 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW2                2:2
305 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW2_DISABLE        (0x00000000)
306 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW2_ENABLE         (0x00000001)
307 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW3                3:3
308 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW3_DISABLE        (0x00000000)
309 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW3_ENABLE         (0x00000001)
310 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW4                4:4
311 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW4_DISABLE        (0x00000000)
312 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW4_ENABLE         (0x00000001)
313 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW5                5:5
314 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW5_DISABLE        (0x00000000)
315 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW5_ENABLE         (0x00000001)
316 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW6                6:6
317 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW6_DISABLE        (0x00000000)
318 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW6_ENABLE         (0x00000001)
319 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW7                7:7
320 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW7_DISABLE        (0x00000000)
321 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW7_ENABLE         (0x00000001)
322 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW8                8:8
323 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW8_DISABLE        (0x00000000)
324 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW8_ENABLE         (0x00000001)
325 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW9                9:9
326 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW9_DISABLE        (0x00000000)
327 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW9_ENABLE         (0x00000001)
328 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW10               10:10
329 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW10_DISABLE       (0x00000000)
330 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW10_ENABLE        (0x00000001)
331 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW11               11:11
332 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW11_DISABLE       (0x00000000)
333 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW11_ENABLE        (0x00000001)
334 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW12               12:12
335 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW12_DISABLE       (0x00000000)
336 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW12_ENABLE        (0x00000001)
337 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW13               13:13
338 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW13_DISABLE       (0x00000000)
339 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW13_ENABLE        (0x00000001)
340 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW14               14:14
341 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW14_DISABLE       (0x00000000)
342 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW14_ENABLE        (0x00000001)
343 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW15               15:15
344 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW15_DISABLE       (0x00000000)
345 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW15_ENABLE        (0x00000001)
346 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW16               16:16
347 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW16_DISABLE       (0x00000000)
348 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW16_ENABLE        (0x00000001)
349 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW17               17:17
350 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW17_DISABLE       (0x00000000)
351 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW17_ENABLE        (0x00000001)
352 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW18               18:18
353 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW18_DISABLE       (0x00000000)
354 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW18_ENABLE        (0x00000001)
355 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW19               19:19
356 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW19_DISABLE       (0x00000000)
357 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW19_ENABLE        (0x00000001)
358 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW20               20:20
359 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW20_DISABLE       (0x00000000)
360 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW20_ENABLE        (0x00000001)
361 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW21               21:21
362 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW21_DISABLE       (0x00000000)
363 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW21_ENABLE        (0x00000001)
364 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW22               22:22
365 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW22_DISABLE       (0x00000000)
366 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW22_ENABLE        (0x00000001)
367 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW23               23:23
368 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW23_DISABLE       (0x00000000)
369 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW23_ENABLE        (0x00000001)
370 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW24               24:24
371 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW24_DISABLE       (0x00000000)
372 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW24_ENABLE        (0x00000001)
373 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW25               25:25
374 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW25_DISABLE       (0x00000000)
375 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW25_ENABLE        (0x00000001)
376 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW26               26:26
377 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW26_DISABLE       (0x00000000)
378 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW26_ENABLE        (0x00000001)
379 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW27               27:27
380 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW27_DISABLE       (0x00000000)
381 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW27_ENABLE        (0x00000001)
382 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW28               28:28
383 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW28_DISABLE       (0x00000000)
384 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW28_ENABLE        (0x00000001)
385 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW29               29:29
386 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW29_DISABLE       (0x00000000)
387 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW29_ENABLE        (0x00000001)
388 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW30               30:30
389 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW30_DISABLE       (0x00000000)
390 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW30_ENABLE        (0x00000001)
391 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW31               31:31
392 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW31_DISABLE       (0x00000000)
393 #define NVC37E_SET_WINDOW_INTERLOCK_FLAGS_INTERLOCK_WITH_WINDOW31_ENABLE        (0x00000001)
394 #endif // _clC37e_h
395