1 | /* |
2 | * Copyright 2006-2007 Advanced Micro Devices, Inc. |
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 COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR |
18 | * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, |
19 | * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR |
20 | * OTHER DEALINGS IN THE SOFTWARE. |
21 | */ |
22 | /* based on stg/asic_reg/drivers/inc/asic_reg/ObjectID.h ver 23 */ |
23 | |
24 | #ifndef _OBJECTID_H |
25 | #define _OBJECTID_H |
26 | |
27 | #if defined(_X86_) |
28 | #pragma pack(1) |
29 | #endif |
30 | |
31 | /****************************************************/ |
32 | /* Graphics Object Type Definition */ |
33 | /****************************************************/ |
34 | #define GRAPH_OBJECT_TYPE_NONE 0x0 |
35 | #define GRAPH_OBJECT_TYPE_GPU 0x1 |
36 | #define GRAPH_OBJECT_TYPE_ENCODER 0x2 |
37 | #define GRAPH_OBJECT_TYPE_CONNECTOR 0x3 |
38 | #define GRAPH_OBJECT_TYPE_ROUTER 0x4 |
39 | /* deleted */ |
40 | #define GRAPH_OBJECT_TYPE_DISPLAY_PATH 0x6 |
41 | #define GRAPH_OBJECT_TYPE_GENERIC 0x7 |
42 | |
43 | /****************************************************/ |
44 | /* Encoder Object ID Definition */ |
45 | /****************************************************/ |
46 | #define ENCODER_OBJECT_ID_NONE 0x00 |
47 | |
48 | /* Radeon Class Display Hardware */ |
49 | #define ENCODER_OBJECT_ID_INTERNAL_LVDS 0x01 |
50 | #define ENCODER_OBJECT_ID_INTERNAL_TMDS1 0x02 |
51 | #define ENCODER_OBJECT_ID_INTERNAL_TMDS2 0x03 |
52 | #define ENCODER_OBJECT_ID_INTERNAL_DAC1 0x04 |
53 | #define ENCODER_OBJECT_ID_INTERNAL_DAC2 0x05 /* TV/CV DAC */ |
54 | #define ENCODER_OBJECT_ID_INTERNAL_SDVOA 0x06 |
55 | #define ENCODER_OBJECT_ID_INTERNAL_SDVOB 0x07 |
56 | |
57 | /* External Third Party Encoders */ |
58 | #define ENCODER_OBJECT_ID_SI170B 0x08 |
59 | #define ENCODER_OBJECT_ID_CH7303 0x09 |
60 | #define ENCODER_OBJECT_ID_CH7301 0x0A |
61 | #define ENCODER_OBJECT_ID_INTERNAL_DVO1 0x0B /* This belongs to Radeon Class Display Hardware */ |
62 | #define ENCODER_OBJECT_ID_EXTERNAL_SDVOA 0x0C |
63 | #define ENCODER_OBJECT_ID_EXTERNAL_SDVOB 0x0D |
64 | #define ENCODER_OBJECT_ID_TITFP513 0x0E |
65 | #define ENCODER_OBJECT_ID_INTERNAL_LVTM1 0x0F /* not used for Radeon */ |
66 | #define ENCODER_OBJECT_ID_VT1623 0x10 |
67 | #define ENCODER_OBJECT_ID_HDMI_SI1930 0x11 |
68 | #define ENCODER_OBJECT_ID_HDMI_INTERNAL 0x12 |
69 | #define ENCODER_OBJECT_ID_ALMOND 0x22 |
70 | #define ENCODER_OBJECT_ID_TRAVIS 0x23 |
71 | #define ENCODER_OBJECT_ID_NUTMEG 0x22 |
72 | #define ENCODER_OBJECT_ID_HDMI_ANX9805 0x26 |
73 | |
74 | /* Kaleidoscope (KLDSCP) Class Display Hardware (internal) */ |
75 | #define ENCODER_OBJECT_ID_INTERNAL_KLDSCP_TMDS1 0x13 |
76 | #define ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DVO1 0x14 |
77 | #define ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DAC1 0x15 |
78 | #define ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DAC2 0x16 /* Shared with CV/TV and CRT */ |
79 | #define ENCODER_OBJECT_ID_SI178 0X17 /* External TMDS (dual link, no HDCP.) */ |
80 | #define ENCODER_OBJECT_ID_MVPU_FPGA 0x18 /* MVPU FPGA chip */ |
81 | #define ENCODER_OBJECT_ID_INTERNAL_DDI 0x19 |
82 | #define ENCODER_OBJECT_ID_VT1625 0x1A |
83 | #define ENCODER_OBJECT_ID_HDMI_SI1932 0x1B |
84 | #define ENCODER_OBJECT_ID_DP_AN9801 0x1C |
85 | #define ENCODER_OBJECT_ID_DP_DP501 0x1D |
86 | #define ENCODER_OBJECT_ID_INTERNAL_UNIPHY 0x1E |
87 | #define ENCODER_OBJECT_ID_INTERNAL_KLDSCP_LVTMA 0x1F |
88 | #define ENCODER_OBJECT_ID_INTERNAL_UNIPHY1 0x20 |
89 | #define ENCODER_OBJECT_ID_INTERNAL_UNIPHY2 0x21 |
90 | #define ENCODER_OBJECT_ID_INTERNAL_VCE 0x24 |
91 | #define ENCODER_OBJECT_ID_INTERNAL_UNIPHY3 0x25 |
92 | #define ENCODER_OBJECT_ID_INTERNAL_AMCLK 0x27 |
93 | |
94 | #define ENCODER_OBJECT_ID_GENERAL_EXTERNAL_DVO 0xFF |
95 | |
96 | /****************************************************/ |
97 | /* Connector Object ID Definition */ |
98 | /****************************************************/ |
99 | #define CONNECTOR_OBJECT_ID_NONE 0x00 |
100 | #define CONNECTOR_OBJECT_ID_SINGLE_LINK_DVI_I 0x01 |
101 | #define CONNECTOR_OBJECT_ID_DUAL_LINK_DVI_I 0x02 |
102 | #define CONNECTOR_OBJECT_ID_SINGLE_LINK_DVI_D 0x03 |
103 | #define CONNECTOR_OBJECT_ID_DUAL_LINK_DVI_D 0x04 |
104 | #define CONNECTOR_OBJECT_ID_VGA 0x05 |
105 | #define CONNECTOR_OBJECT_ID_COMPOSITE 0x06 |
106 | #define CONNECTOR_OBJECT_ID_SVIDEO 0x07 |
107 | #define CONNECTOR_OBJECT_ID_YPbPr 0x08 |
108 | #define CONNECTOR_OBJECT_ID_D_CONNECTOR 0x09 |
109 | #define CONNECTOR_OBJECT_ID_9PIN_DIN 0x0A /* Supports both CV & TV */ |
110 | #define CONNECTOR_OBJECT_ID_SCART 0x0B |
111 | #define CONNECTOR_OBJECT_ID_HDMI_TYPE_A 0x0C |
112 | #define CONNECTOR_OBJECT_ID_HDMI_TYPE_B 0x0D |
113 | #define CONNECTOR_OBJECT_ID_LVDS 0x0E |
114 | #define CONNECTOR_OBJECT_ID_7PIN_DIN 0x0F |
115 | #define CONNECTOR_OBJECT_ID_PCIE_CONNECTOR 0x10 |
116 | #define CONNECTOR_OBJECT_ID_CROSSFIRE 0x11 |
117 | #define CONNECTOR_OBJECT_ID_HARDCODE_DVI 0x12 |
118 | #define CONNECTOR_OBJECT_ID_DISPLAYPORT 0x13 |
119 | #define CONNECTOR_OBJECT_ID_eDP 0x14 |
120 | #define CONNECTOR_OBJECT_ID_MXM 0x15 |
121 | #define CONNECTOR_OBJECT_ID_LVDS_eDP 0x16 |
122 | #define CONNECTOR_OBJECT_ID_USBC 0x17 |
123 | |
124 | /* deleted */ |
125 | |
126 | /****************************************************/ |
127 | /* Router Object ID Definition */ |
128 | /****************************************************/ |
129 | #define ROUTER_OBJECT_ID_NONE 0x00 |
130 | #define ROUTER_OBJECT_ID_I2C_EXTENDER_CNTL 0x01 |
131 | |
132 | /****************************************************/ |
133 | /* Generic Object ID Definition */ |
134 | /****************************************************/ |
135 | #define GENERIC_OBJECT_ID_NONE 0x00 |
136 | #define GENERIC_OBJECT_ID_GLSYNC 0x01 |
137 | #define GENERIC_OBJECT_ID_PX2_NON_DRIVABLE 0x02 |
138 | #define GENERIC_OBJECT_ID_MXM_OPM 0x03 |
139 | #define GENERIC_OBJECT_ID_STEREO_PIN 0x04 //This object could show up from Misc Object table, it follows ATOM_OBJECT format, and contains one ATOM_OBJECT_GPIO_CNTL_RECORD for the stereo pin |
140 | #define GENERIC_OBJECT_ID_BRACKET_LAYOUT 0x05 |
141 | |
142 | /****************************************************/ |
143 | /* Graphics Object ENUM ID Definition */ |
144 | /****************************************************/ |
145 | #define GRAPH_OBJECT_ENUM_ID1 0x01 |
146 | #define GRAPH_OBJECT_ENUM_ID2 0x02 |
147 | #define GRAPH_OBJECT_ENUM_ID3 0x03 |
148 | #define GRAPH_OBJECT_ENUM_ID4 0x04 |
149 | #define GRAPH_OBJECT_ENUM_ID5 0x05 |
150 | #define GRAPH_OBJECT_ENUM_ID6 0x06 |
151 | #define GRAPH_OBJECT_ENUM_ID7 0x07 |
152 | |
153 | /****************************************************/ |
154 | /* Graphics Object ID Bit definition */ |
155 | /****************************************************/ |
156 | #define OBJECT_ID_MASK 0x00FF |
157 | #define ENUM_ID_MASK 0x0700 |
158 | #define RESERVED1_ID_MASK 0x0800 |
159 | #define OBJECT_TYPE_MASK 0x7000 |
160 | #define RESERVED2_ID_MASK 0x8000 |
161 | |
162 | #define OBJECT_ID_SHIFT 0x00 |
163 | #define ENUM_ID_SHIFT 0x08 |
164 | #define OBJECT_TYPE_SHIFT 0x0C |
165 | |
166 | |
167 | /****************************************************/ |
168 | /* Graphics Object family definition */ |
169 | /****************************************************/ |
170 | #define CONSTRUCTOBJECTFAMILYID(GRAPHICS_OBJECT_TYPE, GRAPHICS_OBJECT_ID) (GRAPHICS_OBJECT_TYPE << OBJECT_TYPE_SHIFT | \ |
171 | GRAPHICS_OBJECT_ID << OBJECT_ID_SHIFT) |
172 | /****************************************************/ |
173 | /* GPU Object ID definition - Shared with BIOS */ |
174 | /****************************************************/ |
175 | #define GPU_ENUM_ID1 ( GRAPH_OBJECT_TYPE_GPU << OBJECT_TYPE_SHIFT |\ |
176 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT) |
177 | |
178 | /****************************************************/ |
179 | /* Encoder Object ID definition - Shared with BIOS */ |
180 | /****************************************************/ |
181 | /* |
182 | #define ENCODER_INTERNAL_LVDS_ENUM_ID1 0x2101 |
183 | #define ENCODER_INTERNAL_TMDS1_ENUM_ID1 0x2102 |
184 | #define ENCODER_INTERNAL_TMDS2_ENUM_ID1 0x2103 |
185 | #define ENCODER_INTERNAL_DAC1_ENUM_ID1 0x2104 |
186 | #define ENCODER_INTERNAL_DAC2_ENUM_ID1 0x2105 |
187 | #define ENCODER_INTERNAL_SDVOA_ENUM_ID1 0x2106 |
188 | #define ENCODER_INTERNAL_SDVOB_ENUM_ID1 0x2107 |
189 | #define ENCODER_SIL170B_ENUM_ID1 0x2108 |
190 | #define ENCODER_CH7303_ENUM_ID1 0x2109 |
191 | #define ENCODER_CH7301_ENUM_ID1 0x210A |
192 | #define ENCODER_INTERNAL_DVO1_ENUM_ID1 0x210B |
193 | #define ENCODER_EXTERNAL_SDVOA_ENUM_ID1 0x210C |
194 | #define ENCODER_EXTERNAL_SDVOB_ENUM_ID1 0x210D |
195 | #define ENCODER_TITFP513_ENUM_ID1 0x210E |
196 | #define ENCODER_INTERNAL_LVTM1_ENUM_ID1 0x210F |
197 | #define ENCODER_VT1623_ENUM_ID1 0x2110 |
198 | #define ENCODER_HDMI_SI1930_ENUM_ID1 0x2111 |
199 | #define ENCODER_HDMI_INTERNAL_ENUM_ID1 0x2112 |
200 | #define ENCODER_INTERNAL_KLDSCP_TMDS1_ENUM_ID1 0x2113 |
201 | #define ENCODER_INTERNAL_KLDSCP_DVO1_ENUM_ID1 0x2114 |
202 | #define ENCODER_INTERNAL_KLDSCP_DAC1_ENUM_ID1 0x2115 |
203 | #define ENCODER_INTERNAL_KLDSCP_DAC2_ENUM_ID1 0x2116 |
204 | #define ENCODER_SI178_ENUM_ID1 0x2117 |
205 | #define ENCODER_MVPU_FPGA_ENUM_ID1 0x2118 |
206 | #define ENCODER_INTERNAL_DDI_ENUM_ID1 0x2119 |
207 | #define ENCODER_VT1625_ENUM_ID1 0x211A |
208 | #define ENCODER_HDMI_SI1932_ENUM_ID1 0x211B |
209 | #define ENCODER_ENCODER_DP_AN9801_ENUM_ID1 0x211C |
210 | #define ENCODER_DP_DP501_ENUM_ID1 0x211D |
211 | #define ENCODER_INTERNAL_UNIPHY_ENUM_ID1 0x211E |
212 | */ |
213 | #define ENCODER_INTERNAL_LVDS_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
214 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
215 | ENCODER_OBJECT_ID_INTERNAL_LVDS << OBJECT_ID_SHIFT) |
216 | |
217 | #define ENCODER_INTERNAL_TMDS1_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
218 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
219 | ENCODER_OBJECT_ID_INTERNAL_TMDS1 << OBJECT_ID_SHIFT) |
220 | |
221 | #define ENCODER_INTERNAL_TMDS2_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
222 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
223 | ENCODER_OBJECT_ID_INTERNAL_TMDS2 << OBJECT_ID_SHIFT) |
224 | |
225 | #define ENCODER_INTERNAL_DAC1_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
226 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
227 | ENCODER_OBJECT_ID_INTERNAL_DAC1 << OBJECT_ID_SHIFT) |
228 | |
229 | #define ENCODER_INTERNAL_DAC2_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
230 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
231 | ENCODER_OBJECT_ID_INTERNAL_DAC2 << OBJECT_ID_SHIFT) |
232 | |
233 | #define ENCODER_INTERNAL_SDVOA_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
234 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
235 | ENCODER_OBJECT_ID_INTERNAL_SDVOA << OBJECT_ID_SHIFT) |
236 | |
237 | #define ENCODER_INTERNAL_SDVOA_ENUM_ID2 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
238 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
239 | ENCODER_OBJECT_ID_INTERNAL_SDVOA << OBJECT_ID_SHIFT) |
240 | |
241 | #define ENCODER_INTERNAL_SDVOB_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
242 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
243 | ENCODER_OBJECT_ID_INTERNAL_SDVOB << OBJECT_ID_SHIFT) |
244 | |
245 | #define ENCODER_SIL170B_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
246 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
247 | ENCODER_OBJECT_ID_SI170B << OBJECT_ID_SHIFT) |
248 | |
249 | #define ENCODER_CH7303_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
250 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
251 | ENCODER_OBJECT_ID_CH7303 << OBJECT_ID_SHIFT) |
252 | |
253 | #define ENCODER_CH7301_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
254 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
255 | ENCODER_OBJECT_ID_CH7301 << OBJECT_ID_SHIFT) |
256 | |
257 | #define ENCODER_INTERNAL_DVO1_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
258 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
259 | ENCODER_OBJECT_ID_INTERNAL_DVO1 << OBJECT_ID_SHIFT) |
260 | |
261 | #define ENCODER_EXTERNAL_SDVOA_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
262 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
263 | ENCODER_OBJECT_ID_EXTERNAL_SDVOA << OBJECT_ID_SHIFT) |
264 | |
265 | #define ENCODER_EXTERNAL_SDVOA_ENUM_ID2 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
266 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
267 | ENCODER_OBJECT_ID_EXTERNAL_SDVOA << OBJECT_ID_SHIFT) |
268 | |
269 | |
270 | #define ENCODER_EXTERNAL_SDVOB_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
271 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
272 | ENCODER_OBJECT_ID_EXTERNAL_SDVOB << OBJECT_ID_SHIFT) |
273 | |
274 | |
275 | #define ENCODER_TITFP513_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
276 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
277 | ENCODER_OBJECT_ID_TITFP513 << OBJECT_ID_SHIFT) |
278 | |
279 | #define ENCODER_INTERNAL_LVTM1_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
280 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
281 | ENCODER_OBJECT_ID_INTERNAL_LVTM1 << OBJECT_ID_SHIFT) |
282 | |
283 | #define ENCODER_VT1623_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
284 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
285 | ENCODER_OBJECT_ID_VT1623 << OBJECT_ID_SHIFT) |
286 | |
287 | #define ENCODER_HDMI_SI1930_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
288 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
289 | ENCODER_OBJECT_ID_HDMI_SI1930 << OBJECT_ID_SHIFT) |
290 | |
291 | #define ENCODER_HDMI_INTERNAL_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
292 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
293 | ENCODER_OBJECT_ID_HDMI_INTERNAL << OBJECT_ID_SHIFT) |
294 | |
295 | #define ENCODER_INTERNAL_KLDSCP_TMDS1_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
296 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
297 | ENCODER_OBJECT_ID_INTERNAL_KLDSCP_TMDS1 << OBJECT_ID_SHIFT) |
298 | |
299 | |
300 | #define ENCODER_INTERNAL_KLDSCP_TMDS1_ENUM_ID2 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
301 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
302 | ENCODER_OBJECT_ID_INTERNAL_KLDSCP_TMDS1 << OBJECT_ID_SHIFT) |
303 | |
304 | |
305 | #define ENCODER_INTERNAL_KLDSCP_DVO1_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
306 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
307 | ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DVO1 << OBJECT_ID_SHIFT) |
308 | |
309 | #define ENCODER_INTERNAL_KLDSCP_DAC1_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
310 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
311 | ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DAC1 << OBJECT_ID_SHIFT) |
312 | |
313 | #define ENCODER_INTERNAL_KLDSCP_DAC2_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
314 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
315 | ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DAC2 << OBJECT_ID_SHIFT) // Shared with CV/TV and CRT |
316 | |
317 | #define ENCODER_SI178_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
318 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
319 | ENCODER_OBJECT_ID_SI178 << OBJECT_ID_SHIFT) |
320 | |
321 | #define ENCODER_MVPU_FPGA_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
322 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
323 | ENCODER_OBJECT_ID_MVPU_FPGA << OBJECT_ID_SHIFT) |
324 | |
325 | #define ENCODER_INTERNAL_DDI_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
326 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
327 | ENCODER_OBJECT_ID_INTERNAL_DDI << OBJECT_ID_SHIFT) |
328 | |
329 | #define ENCODER_VT1625_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
330 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
331 | ENCODER_OBJECT_ID_VT1625 << OBJECT_ID_SHIFT) |
332 | |
333 | #define ENCODER_HDMI_SI1932_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
334 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
335 | ENCODER_OBJECT_ID_HDMI_SI1932 << OBJECT_ID_SHIFT) |
336 | |
337 | #define ENCODER_DP_DP501_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
338 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
339 | ENCODER_OBJECT_ID_DP_DP501 << OBJECT_ID_SHIFT) |
340 | |
341 | #define ENCODER_DP_AN9801_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
342 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
343 | ENCODER_OBJECT_ID_DP_AN9801 << OBJECT_ID_SHIFT) |
344 | |
345 | #define ENCODER_INTERNAL_UNIPHY_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
346 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
347 | ENCODER_OBJECT_ID_INTERNAL_UNIPHY << OBJECT_ID_SHIFT) |
348 | |
349 | #define ENCODER_INTERNAL_UNIPHY_ENUM_ID2 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
350 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
351 | ENCODER_OBJECT_ID_INTERNAL_UNIPHY << OBJECT_ID_SHIFT) |
352 | |
353 | #define ENCODER_INTERNAL_KLDSCP_LVTMA_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
354 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
355 | ENCODER_OBJECT_ID_INTERNAL_KLDSCP_LVTMA << OBJECT_ID_SHIFT) |
356 | |
357 | #define ENCODER_INTERNAL_UNIPHY1_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
358 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
359 | ENCODER_OBJECT_ID_INTERNAL_UNIPHY1 << OBJECT_ID_SHIFT) |
360 | |
361 | #define ENCODER_INTERNAL_UNIPHY1_ENUM_ID2 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
362 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
363 | ENCODER_OBJECT_ID_INTERNAL_UNIPHY1 << OBJECT_ID_SHIFT) |
364 | |
365 | #define ENCODER_INTERNAL_UNIPHY2_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
366 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
367 | ENCODER_OBJECT_ID_INTERNAL_UNIPHY2 << OBJECT_ID_SHIFT) |
368 | |
369 | #define ENCODER_INTERNAL_UNIPHY2_ENUM_ID2 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
370 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
371 | ENCODER_OBJECT_ID_INTERNAL_UNIPHY2 << OBJECT_ID_SHIFT) |
372 | |
373 | #define ENCODER_INTERNAL_UNIPHY3_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
374 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
375 | ENCODER_OBJECT_ID_INTERNAL_UNIPHY3 << OBJECT_ID_SHIFT) |
376 | |
377 | #define ENCODER_INTERNAL_UNIPHY3_ENUM_ID2 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
378 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
379 | ENCODER_OBJECT_ID_INTERNAL_UNIPHY3 << OBJECT_ID_SHIFT) |
380 | |
381 | #define ENCODER_GENERAL_EXTERNAL_DVO_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
382 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
383 | ENCODER_OBJECT_ID_GENERAL_EXTERNAL_DVO << OBJECT_ID_SHIFT) |
384 | |
385 | #define ENCODER_ALMOND_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
386 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
387 | ENCODER_OBJECT_ID_ALMOND << OBJECT_ID_SHIFT) |
388 | |
389 | #define ENCODER_ALMOND_ENUM_ID2 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
390 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
391 | ENCODER_OBJECT_ID_ALMOND << OBJECT_ID_SHIFT) |
392 | |
393 | #define ENCODER_TRAVIS_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
394 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
395 | ENCODER_OBJECT_ID_TRAVIS << OBJECT_ID_SHIFT) |
396 | |
397 | #define ENCODER_TRAVIS_ENUM_ID2 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
398 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
399 | ENCODER_OBJECT_ID_TRAVIS << OBJECT_ID_SHIFT) |
400 | |
401 | #define ENCODER_NUTMEG_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
402 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
403 | ENCODER_OBJECT_ID_NUTMEG << OBJECT_ID_SHIFT) |
404 | |
405 | #define ENCODER_VCE_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
406 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
407 | ENCODER_OBJECT_ID_INTERNAL_VCE << OBJECT_ID_SHIFT) |
408 | |
409 | #define ENCODER_HDMI_ANX9805_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
410 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
411 | ENCODER_OBJECT_ID_HDMI_ANX9805 << OBJECT_ID_SHIFT) |
412 | |
413 | /****************************************************/ |
414 | /* Connector Object ID definition - Shared with BIOS */ |
415 | /****************************************************/ |
416 | /* |
417 | #define CONNECTOR_SINGLE_LINK_DVI_I_ENUM_ID1 0x3101 |
418 | #define CONNECTOR_DUAL_LINK_DVI_I_ENUM_ID1 0x3102 |
419 | #define CONNECTOR_SINGLE_LINK_DVI_D_ENUM_ID1 0x3103 |
420 | #define CONNECTOR_DUAL_LINK_DVI_D_ENUM_ID1 0x3104 |
421 | #define CONNECTOR_VGA_ENUM_ID1 0x3105 |
422 | #define CONNECTOR_COMPOSITE_ENUM_ID1 0x3106 |
423 | #define CONNECTOR_SVIDEO_ENUM_ID1 0x3107 |
424 | #define CONNECTOR_YPbPr_ENUM_ID1 0x3108 |
425 | #define CONNECTOR_D_CONNECTORE_ENUM_ID1 0x3109 |
426 | #define CONNECTOR_9PIN_DIN_ENUM_ID1 0x310A |
427 | #define CONNECTOR_SCART_ENUM_ID1 0x310B |
428 | #define CONNECTOR_HDMI_TYPE_A_ENUM_ID1 0x310C |
429 | #define CONNECTOR_HDMI_TYPE_B_ENUM_ID1 0x310D |
430 | #define CONNECTOR_LVDS_ENUM_ID1 0x310E |
431 | #define CONNECTOR_7PIN_DIN_ENUM_ID1 0x310F |
432 | #define CONNECTOR_PCIE_CONNECTOR_ENUM_ID1 0x3110 |
433 | */ |
434 | #define CONNECTOR_LVDS_ENUM_ID1 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
435 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
436 | CONNECTOR_OBJECT_ID_LVDS << OBJECT_ID_SHIFT) |
437 | |
438 | #define CONNECTOR_LVDS_ENUM_ID2 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
439 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
440 | CONNECTOR_OBJECT_ID_LVDS << OBJECT_ID_SHIFT) |
441 | |
442 | #define CONNECTOR_eDP_ENUM_ID1 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
443 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
444 | CONNECTOR_OBJECT_ID_eDP << OBJECT_ID_SHIFT) |
445 | |
446 | #define CONNECTOR_eDP_ENUM_ID2 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
447 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
448 | CONNECTOR_OBJECT_ID_eDP << OBJECT_ID_SHIFT) |
449 | |
450 | #define CONNECTOR_SINGLE_LINK_DVI_I_ENUM_ID1 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
451 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
452 | CONNECTOR_OBJECT_ID_SINGLE_LINK_DVI_I << OBJECT_ID_SHIFT) |
453 | |
454 | #define CONNECTOR_SINGLE_LINK_DVI_I_ENUM_ID2 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
455 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
456 | CONNECTOR_OBJECT_ID_SINGLE_LINK_DVI_I << OBJECT_ID_SHIFT) |
457 | |
458 | #define CONNECTOR_DUAL_LINK_DVI_I_ENUM_ID1 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
459 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
460 | CONNECTOR_OBJECT_ID_DUAL_LINK_DVI_I << OBJECT_ID_SHIFT) |
461 | |
462 | #define CONNECTOR_DUAL_LINK_DVI_I_ENUM_ID2 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
463 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
464 | CONNECTOR_OBJECT_ID_DUAL_LINK_DVI_I << OBJECT_ID_SHIFT) |
465 | |
466 | #define CONNECTOR_SINGLE_LINK_DVI_D_ENUM_ID1 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
467 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
468 | CONNECTOR_OBJECT_ID_SINGLE_LINK_DVI_D << OBJECT_ID_SHIFT) |
469 | |
470 | #define CONNECTOR_SINGLE_LINK_DVI_D_ENUM_ID2 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
471 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
472 | CONNECTOR_OBJECT_ID_SINGLE_LINK_DVI_D << OBJECT_ID_SHIFT) |
473 | |
474 | #define CONNECTOR_SINGLE_LINK_DVI_D_ENUM_ID3 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
475 | GRAPH_OBJECT_ENUM_ID3 << ENUM_ID_SHIFT |\ |
476 | CONNECTOR_OBJECT_ID_SINGLE_LINK_DVI_D << OBJECT_ID_SHIFT) |
477 | |
478 | #define CONNECTOR_SINGLE_LINK_DVI_D_ENUM_ID4 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
479 | GRAPH_OBJECT_ENUM_ID4 << ENUM_ID_SHIFT |\ |
480 | CONNECTOR_OBJECT_ID_SINGLE_LINK_DVI_D << OBJECT_ID_SHIFT) |
481 | |
482 | #define CONNECTOR_SINGLE_LINK_DVI_D_ENUM_ID5 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
483 | GRAPH_OBJECT_ENUM_ID5 << ENUM_ID_SHIFT |\ |
484 | CONNECTOR_OBJECT_ID_SINGLE_LINK_DVI_D << OBJECT_ID_SHIFT) |
485 | |
486 | #define CONNECTOR_SINGLE_LINK_DVI_D_ENUM_ID6 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
487 | GRAPH_OBJECT_ENUM_ID6 << ENUM_ID_SHIFT |\ |
488 | CONNECTOR_OBJECT_ID_SINGLE_LINK_DVI_D << OBJECT_ID_SHIFT) |
489 | |
490 | #define CONNECTOR_DUAL_LINK_DVI_D_ENUM_ID1 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
491 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
492 | CONNECTOR_OBJECT_ID_DUAL_LINK_DVI_D << OBJECT_ID_SHIFT) |
493 | |
494 | #define CONNECTOR_DUAL_LINK_DVI_D_ENUM_ID2 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
495 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
496 | CONNECTOR_OBJECT_ID_DUAL_LINK_DVI_D << OBJECT_ID_SHIFT) |
497 | |
498 | #define CONNECTOR_DUAL_LINK_DVI_D_ENUM_ID3 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
499 | GRAPH_OBJECT_ENUM_ID3 << ENUM_ID_SHIFT |\ |
500 | CONNECTOR_OBJECT_ID_DUAL_LINK_DVI_D << OBJECT_ID_SHIFT) |
501 | |
502 | #define CONNECTOR_DUAL_LINK_DVI_D_ENUM_ID4 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
503 | GRAPH_OBJECT_ENUM_ID4 << ENUM_ID_SHIFT |\ |
504 | CONNECTOR_OBJECT_ID_DUAL_LINK_DVI_D << OBJECT_ID_SHIFT) |
505 | |
506 | #define CONNECTOR_VGA_ENUM_ID1 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
507 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
508 | CONNECTOR_OBJECT_ID_VGA << OBJECT_ID_SHIFT) |
509 | |
510 | #define CONNECTOR_VGA_ENUM_ID2 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
511 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
512 | CONNECTOR_OBJECT_ID_VGA << OBJECT_ID_SHIFT) |
513 | |
514 | #define CONNECTOR_COMPOSITE_ENUM_ID1 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
515 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
516 | CONNECTOR_OBJECT_ID_COMPOSITE << OBJECT_ID_SHIFT) |
517 | |
518 | #define CONNECTOR_COMPOSITE_ENUM_ID2 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
519 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
520 | CONNECTOR_OBJECT_ID_COMPOSITE << OBJECT_ID_SHIFT) |
521 | |
522 | #define CONNECTOR_SVIDEO_ENUM_ID1 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
523 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
524 | CONNECTOR_OBJECT_ID_SVIDEO << OBJECT_ID_SHIFT) |
525 | |
526 | #define CONNECTOR_SVIDEO_ENUM_ID2 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
527 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
528 | CONNECTOR_OBJECT_ID_SVIDEO << OBJECT_ID_SHIFT) |
529 | |
530 | #define CONNECTOR_YPbPr_ENUM_ID1 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
531 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
532 | CONNECTOR_OBJECT_ID_YPbPr << OBJECT_ID_SHIFT) |
533 | |
534 | #define CONNECTOR_YPbPr_ENUM_ID2 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
535 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
536 | CONNECTOR_OBJECT_ID_YPbPr << OBJECT_ID_SHIFT) |
537 | |
538 | #define CONNECTOR_D_CONNECTOR_ENUM_ID1 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
539 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
540 | CONNECTOR_OBJECT_ID_D_CONNECTOR << OBJECT_ID_SHIFT) |
541 | |
542 | #define CONNECTOR_D_CONNECTOR_ENUM_ID2 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
543 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
544 | CONNECTOR_OBJECT_ID_D_CONNECTOR << OBJECT_ID_SHIFT) |
545 | |
546 | #define CONNECTOR_9PIN_DIN_ENUM_ID1 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
547 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
548 | CONNECTOR_OBJECT_ID_9PIN_DIN << OBJECT_ID_SHIFT) |
549 | |
550 | #define CONNECTOR_9PIN_DIN_ENUM_ID2 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
551 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
552 | CONNECTOR_OBJECT_ID_9PIN_DIN << OBJECT_ID_SHIFT) |
553 | |
554 | #define CONNECTOR_SCART_ENUM_ID1 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
555 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
556 | CONNECTOR_OBJECT_ID_SCART << OBJECT_ID_SHIFT) |
557 | |
558 | #define CONNECTOR_SCART_ENUM_ID2 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
559 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
560 | CONNECTOR_OBJECT_ID_SCART << OBJECT_ID_SHIFT) |
561 | |
562 | #define CONNECTOR_HDMI_TYPE_A_ENUM_ID1 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
563 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
564 | CONNECTOR_OBJECT_ID_HDMI_TYPE_A << OBJECT_ID_SHIFT) |
565 | |
566 | #define CONNECTOR_HDMI_TYPE_A_ENUM_ID2 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
567 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
568 | CONNECTOR_OBJECT_ID_HDMI_TYPE_A << OBJECT_ID_SHIFT) |
569 | |
570 | #define CONNECTOR_HDMI_TYPE_A_ENUM_ID3 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
571 | GRAPH_OBJECT_ENUM_ID3 << ENUM_ID_SHIFT |\ |
572 | CONNECTOR_OBJECT_ID_HDMI_TYPE_A << OBJECT_ID_SHIFT) |
573 | |
574 | #define CONNECTOR_HDMI_TYPE_A_ENUM_ID4 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
575 | GRAPH_OBJECT_ENUM_ID4 << ENUM_ID_SHIFT |\ |
576 | CONNECTOR_OBJECT_ID_HDMI_TYPE_A << OBJECT_ID_SHIFT) |
577 | |
578 | #define CONNECTOR_HDMI_TYPE_A_ENUM_ID5 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
579 | GRAPH_OBJECT_ENUM_ID5 << ENUM_ID_SHIFT |\ |
580 | CONNECTOR_OBJECT_ID_HDMI_TYPE_A << OBJECT_ID_SHIFT) |
581 | |
582 | #define CONNECTOR_HDMI_TYPE_A_ENUM_ID6 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
583 | GRAPH_OBJECT_ENUM_ID6 << ENUM_ID_SHIFT |\ |
584 | CONNECTOR_OBJECT_ID_HDMI_TYPE_A << OBJECT_ID_SHIFT) |
585 | |
586 | #define CONNECTOR_HDMI_TYPE_B_ENUM_ID1 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
587 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
588 | CONNECTOR_OBJECT_ID_HDMI_TYPE_B << OBJECT_ID_SHIFT) |
589 | |
590 | #define CONNECTOR_HDMI_TYPE_B_ENUM_ID2 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
591 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
592 | CONNECTOR_OBJECT_ID_HDMI_TYPE_B << OBJECT_ID_SHIFT) |
593 | |
594 | #define CONNECTOR_7PIN_DIN_ENUM_ID1 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
595 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
596 | CONNECTOR_OBJECT_ID_7PIN_DIN << OBJECT_ID_SHIFT) |
597 | |
598 | #define CONNECTOR_7PIN_DIN_ENUM_ID2 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
599 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
600 | CONNECTOR_OBJECT_ID_7PIN_DIN << OBJECT_ID_SHIFT) |
601 | |
602 | #define CONNECTOR_PCIE_CONNECTOR_ENUM_ID1 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
603 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
604 | CONNECTOR_OBJECT_ID_PCIE_CONNECTOR << OBJECT_ID_SHIFT) |
605 | |
606 | #define CONNECTOR_PCIE_CONNECTOR_ENUM_ID2 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
607 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
608 | CONNECTOR_OBJECT_ID_PCIE_CONNECTOR << OBJECT_ID_SHIFT) |
609 | |
610 | #define CONNECTOR_CROSSFIRE_ENUM_ID1 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
611 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
612 | CONNECTOR_OBJECT_ID_CROSSFIRE << OBJECT_ID_SHIFT) |
613 | |
614 | #define CONNECTOR_CROSSFIRE_ENUM_ID2 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
615 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
616 | CONNECTOR_OBJECT_ID_CROSSFIRE << OBJECT_ID_SHIFT) |
617 | |
618 | |
619 | #define CONNECTOR_HARDCODE_DVI_ENUM_ID1 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
620 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
621 | CONNECTOR_OBJECT_ID_HARDCODE_DVI << OBJECT_ID_SHIFT) |
622 | |
623 | #define CONNECTOR_HARDCODE_DVI_ENUM_ID2 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
624 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
625 | CONNECTOR_OBJECT_ID_HARDCODE_DVI << OBJECT_ID_SHIFT) |
626 | |
627 | #define CONNECTOR_DISPLAYPORT_ENUM_ID1 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
628 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
629 | CONNECTOR_OBJECT_ID_DISPLAYPORT << OBJECT_ID_SHIFT) |
630 | |
631 | #define CONNECTOR_DISPLAYPORT_ENUM_ID2 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
632 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
633 | CONNECTOR_OBJECT_ID_DISPLAYPORT << OBJECT_ID_SHIFT) |
634 | |
635 | #define CONNECTOR_DISPLAYPORT_ENUM_ID3 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
636 | GRAPH_OBJECT_ENUM_ID3 << ENUM_ID_SHIFT |\ |
637 | CONNECTOR_OBJECT_ID_DISPLAYPORT << OBJECT_ID_SHIFT) |
638 | |
639 | #define CONNECTOR_DISPLAYPORT_ENUM_ID4 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
640 | GRAPH_OBJECT_ENUM_ID4 << ENUM_ID_SHIFT |\ |
641 | CONNECTOR_OBJECT_ID_DISPLAYPORT << OBJECT_ID_SHIFT) |
642 | |
643 | #define CONNECTOR_DISPLAYPORT_ENUM_ID5 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
644 | GRAPH_OBJECT_ENUM_ID5 << ENUM_ID_SHIFT |\ |
645 | CONNECTOR_OBJECT_ID_DISPLAYPORT << OBJECT_ID_SHIFT) |
646 | |
647 | #define CONNECTOR_DISPLAYPORT_ENUM_ID6 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
648 | GRAPH_OBJECT_ENUM_ID6 << ENUM_ID_SHIFT |\ |
649 | CONNECTOR_OBJECT_ID_DISPLAYPORT << OBJECT_ID_SHIFT) |
650 | |
651 | #define CONNECTOR_MXM_ENUM_ID1 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
652 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
653 | CONNECTOR_OBJECT_ID_MXM << OBJECT_ID_SHIFT) //Mapping to MXM_DP_A |
654 | |
655 | #define CONNECTOR_MXM_ENUM_ID2 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
656 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
657 | CONNECTOR_OBJECT_ID_MXM << OBJECT_ID_SHIFT) //Mapping to MXM_DP_B |
658 | |
659 | #define CONNECTOR_MXM_ENUM_ID3 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
660 | GRAPH_OBJECT_ENUM_ID3 << ENUM_ID_SHIFT |\ |
661 | CONNECTOR_OBJECT_ID_MXM << OBJECT_ID_SHIFT) //Mapping to MXM_DP_C |
662 | |
663 | #define CONNECTOR_MXM_ENUM_ID4 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
664 | GRAPH_OBJECT_ENUM_ID4 << ENUM_ID_SHIFT |\ |
665 | CONNECTOR_OBJECT_ID_MXM << OBJECT_ID_SHIFT) //Mapping to MXM_DP_D |
666 | |
667 | #define CONNECTOR_MXM_ENUM_ID5 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
668 | GRAPH_OBJECT_ENUM_ID5 << ENUM_ID_SHIFT |\ |
669 | CONNECTOR_OBJECT_ID_MXM << OBJECT_ID_SHIFT) //Mapping to MXM_LVDS_TXxx |
670 | |
671 | #define CONNECTOR_MXM_ENUM_ID6 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
672 | GRAPH_OBJECT_ENUM_ID6 << ENUM_ID_SHIFT |\ |
673 | CONNECTOR_OBJECT_ID_MXM << OBJECT_ID_SHIFT) //Mapping to MXM_LVDS_UXxx |
674 | |
675 | #define CONNECTOR_MXM_ENUM_ID7 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
676 | GRAPH_OBJECT_ENUM_ID7 << ENUM_ID_SHIFT |\ |
677 | CONNECTOR_OBJECT_ID_MXM << OBJECT_ID_SHIFT) //Mapping to MXM_DAC |
678 | |
679 | #define CONNECTOR_LVDS_eDP_ENUM_ID1 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
680 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
681 | CONNECTOR_OBJECT_ID_LVDS_eDP << OBJECT_ID_SHIFT) |
682 | |
683 | #define CONNECTOR_LVDS_eDP_ENUM_ID2 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
684 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
685 | CONNECTOR_OBJECT_ID_LVDS_eDP << OBJECT_ID_SHIFT) |
686 | |
687 | /****************************************************/ |
688 | /* Router Object ID definition - Shared with BIOS */ |
689 | /****************************************************/ |
690 | #define ROUTER_I2C_EXTENDER_CNTL_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ROUTER << OBJECT_TYPE_SHIFT |\ |
691 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
692 | ROUTER_OBJECT_ID_I2C_EXTENDER_CNTL << OBJECT_ID_SHIFT) |
693 | |
694 | /* deleted */ |
695 | |
696 | /****************************************************/ |
697 | /* Generic Object ID definition - Shared with BIOS */ |
698 | /****************************************************/ |
699 | #define GENERICOBJECT_GLSYNC_ENUM_ID1 (GRAPH_OBJECT_TYPE_GENERIC << OBJECT_TYPE_SHIFT |\ |
700 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
701 | GENERIC_OBJECT_ID_GLSYNC << OBJECT_ID_SHIFT) |
702 | |
703 | #define GENERICOBJECT_PX2_NON_DRIVABLE_ID1 (GRAPH_OBJECT_TYPE_GENERIC << OBJECT_TYPE_SHIFT |\ |
704 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
705 | GENERIC_OBJECT_ID_PX2_NON_DRIVABLE<< OBJECT_ID_SHIFT) |
706 | |
707 | #define GENERICOBJECT_PX2_NON_DRIVABLE_ID2 (GRAPH_OBJECT_TYPE_GENERIC << OBJECT_TYPE_SHIFT |\ |
708 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
709 | GENERIC_OBJECT_ID_PX2_NON_DRIVABLE<< OBJECT_ID_SHIFT) |
710 | |
711 | #define GENERICOBJECT_MXM_OPM_ENUM_ID1 (GRAPH_OBJECT_TYPE_GENERIC << OBJECT_TYPE_SHIFT |\ |
712 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
713 | GENERIC_OBJECT_ID_MXM_OPM << OBJECT_ID_SHIFT) |
714 | |
715 | #define GENERICOBJECT_STEREO_PIN_ENUM_ID1 (GRAPH_OBJECT_TYPE_GENERIC << OBJECT_TYPE_SHIFT |\ |
716 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
717 | GENERIC_OBJECT_ID_STEREO_PIN << OBJECT_ID_SHIFT) |
718 | |
719 | #define GENERICOBJECT_BRACKET_LAYOUT_ENUM_ID1 (GRAPH_OBJECT_TYPE_GENERIC << OBJECT_TYPE_SHIFT |\ |
720 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
721 | GENERIC_OBJECT_ID_BRACKET_LAYOUT << OBJECT_ID_SHIFT) |
722 | |
723 | #define GENERICOBJECT_BRACKET_LAYOUT_ENUM_ID2 (GRAPH_OBJECT_TYPE_GENERIC << OBJECT_TYPE_SHIFT |\ |
724 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
725 | GENERIC_OBJECT_ID_BRACKET_LAYOUT << OBJECT_ID_SHIFT) |
726 | /****************************************************/ |
727 | /* Object Cap definition - Shared with BIOS */ |
728 | /****************************************************/ |
729 | #define GRAPHICS_OBJECT_CAP_I2C 0x00000001L |
730 | #define GRAPHICS_OBJECT_CAP_TABLE_ID 0x00000002L |
731 | |
732 | |
733 | #define GRAPHICS_OBJECT_I2CCOMMAND_TABLE_ID 0x01 |
734 | #define GRAPHICS_OBJECT_HOTPLUGDETECTIONINTERUPT_TABLE_ID 0x02 |
735 | #define GRAPHICS_OBJECT_ENCODER_OUTPUT_PROTECTION_TABLE_ID 0x03 |
736 | |
737 | #if defined(_X86_) |
738 | #pragma pack() |
739 | #endif |
740 | |
741 | #endif /*GRAPHICTYPE */ |
742 | |
743 | |
744 | |
745 | |
746 | |