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 | |
123 | /* deleted */ |
124 | |
125 | /****************************************************/ |
126 | /* Router Object ID Definition */ |
127 | /****************************************************/ |
128 | #define ROUTER_OBJECT_ID_NONE 0x00 |
129 | #define ROUTER_OBJECT_ID_I2C_EXTENDER_CNTL 0x01 |
130 | |
131 | /****************************************************/ |
132 | /* Generic Object ID Definition */ |
133 | /****************************************************/ |
134 | #define GENERIC_OBJECT_ID_NONE 0x00 |
135 | #define GENERIC_OBJECT_ID_GLSYNC 0x01 |
136 | #define GENERIC_OBJECT_ID_PX2_NON_DRIVABLE 0x02 |
137 | #define GENERIC_OBJECT_ID_MXM_OPM 0x03 |
138 | #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 |
139 | |
140 | /****************************************************/ |
141 | /* Graphics Object ENUM ID Definition */ |
142 | /****************************************************/ |
143 | #define GRAPH_OBJECT_ENUM_ID1 0x01 |
144 | #define GRAPH_OBJECT_ENUM_ID2 0x02 |
145 | #define GRAPH_OBJECT_ENUM_ID3 0x03 |
146 | #define GRAPH_OBJECT_ENUM_ID4 0x04 |
147 | #define GRAPH_OBJECT_ENUM_ID5 0x05 |
148 | #define GRAPH_OBJECT_ENUM_ID6 0x06 |
149 | #define GRAPH_OBJECT_ENUM_ID7 0x07 |
150 | |
151 | /****************************************************/ |
152 | /* Graphics Object ID Bit definition */ |
153 | /****************************************************/ |
154 | #define OBJECT_ID_MASK 0x00FF |
155 | #define ENUM_ID_MASK 0x0700 |
156 | #define RESERVED1_ID_MASK 0x0800 |
157 | #define OBJECT_TYPE_MASK 0x7000 |
158 | #define RESERVED2_ID_MASK 0x8000 |
159 | |
160 | #define OBJECT_ID_SHIFT 0x00 |
161 | #define ENUM_ID_SHIFT 0x08 |
162 | #define OBJECT_TYPE_SHIFT 0x0C |
163 | |
164 | |
165 | /****************************************************/ |
166 | /* Graphics Object family definition */ |
167 | /****************************************************/ |
168 | #define CONSTRUCTOBJECTFAMILYID(GRAPHICS_OBJECT_TYPE, GRAPHICS_OBJECT_ID) (GRAPHICS_OBJECT_TYPE << OBJECT_TYPE_SHIFT | \ |
169 | GRAPHICS_OBJECT_ID << OBJECT_ID_SHIFT) |
170 | /****************************************************/ |
171 | /* GPU Object ID definition - Shared with BIOS */ |
172 | /****************************************************/ |
173 | #define GPU_ENUM_ID1 ( GRAPH_OBJECT_TYPE_GPU << OBJECT_TYPE_SHIFT |\ |
174 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT) |
175 | |
176 | /****************************************************/ |
177 | /* Encoder Object ID definition - Shared with BIOS */ |
178 | /****************************************************/ |
179 | /* |
180 | #define ENCODER_INTERNAL_LVDS_ENUM_ID1 0x2101 |
181 | #define ENCODER_INTERNAL_TMDS1_ENUM_ID1 0x2102 |
182 | #define ENCODER_INTERNAL_TMDS2_ENUM_ID1 0x2103 |
183 | #define ENCODER_INTERNAL_DAC1_ENUM_ID1 0x2104 |
184 | #define ENCODER_INTERNAL_DAC2_ENUM_ID1 0x2105 |
185 | #define ENCODER_INTERNAL_SDVOA_ENUM_ID1 0x2106 |
186 | #define ENCODER_INTERNAL_SDVOB_ENUM_ID1 0x2107 |
187 | #define ENCODER_SIL170B_ENUM_ID1 0x2108 |
188 | #define ENCODER_CH7303_ENUM_ID1 0x2109 |
189 | #define ENCODER_CH7301_ENUM_ID1 0x210A |
190 | #define ENCODER_INTERNAL_DVO1_ENUM_ID1 0x210B |
191 | #define ENCODER_EXTERNAL_SDVOA_ENUM_ID1 0x210C |
192 | #define ENCODER_EXTERNAL_SDVOB_ENUM_ID1 0x210D |
193 | #define ENCODER_TITFP513_ENUM_ID1 0x210E |
194 | #define ENCODER_INTERNAL_LVTM1_ENUM_ID1 0x210F |
195 | #define ENCODER_VT1623_ENUM_ID1 0x2110 |
196 | #define ENCODER_HDMI_SI1930_ENUM_ID1 0x2111 |
197 | #define ENCODER_HDMI_INTERNAL_ENUM_ID1 0x2112 |
198 | #define ENCODER_INTERNAL_KLDSCP_TMDS1_ENUM_ID1 0x2113 |
199 | #define ENCODER_INTERNAL_KLDSCP_DVO1_ENUM_ID1 0x2114 |
200 | #define ENCODER_INTERNAL_KLDSCP_DAC1_ENUM_ID1 0x2115 |
201 | #define ENCODER_INTERNAL_KLDSCP_DAC2_ENUM_ID1 0x2116 |
202 | #define ENCODER_SI178_ENUM_ID1 0x2117 |
203 | #define ENCODER_MVPU_FPGA_ENUM_ID1 0x2118 |
204 | #define ENCODER_INTERNAL_DDI_ENUM_ID1 0x2119 |
205 | #define ENCODER_VT1625_ENUM_ID1 0x211A |
206 | #define ENCODER_HDMI_SI1932_ENUM_ID1 0x211B |
207 | #define ENCODER_ENCODER_DP_AN9801_ENUM_ID1 0x211C |
208 | #define ENCODER_DP_DP501_ENUM_ID1 0x211D |
209 | #define ENCODER_INTERNAL_UNIPHY_ENUM_ID1 0x211E |
210 | */ |
211 | #define ENCODER_INTERNAL_LVDS_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
212 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
213 | ENCODER_OBJECT_ID_INTERNAL_LVDS << OBJECT_ID_SHIFT) |
214 | |
215 | #define ENCODER_INTERNAL_TMDS1_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
216 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
217 | ENCODER_OBJECT_ID_INTERNAL_TMDS1 << OBJECT_ID_SHIFT) |
218 | |
219 | #define ENCODER_INTERNAL_TMDS2_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
220 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
221 | ENCODER_OBJECT_ID_INTERNAL_TMDS2 << OBJECT_ID_SHIFT) |
222 | |
223 | #define ENCODER_INTERNAL_DAC1_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
224 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
225 | ENCODER_OBJECT_ID_INTERNAL_DAC1 << OBJECT_ID_SHIFT) |
226 | |
227 | #define ENCODER_INTERNAL_DAC2_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
228 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
229 | ENCODER_OBJECT_ID_INTERNAL_DAC2 << OBJECT_ID_SHIFT) |
230 | |
231 | #define ENCODER_INTERNAL_SDVOA_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
232 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
233 | ENCODER_OBJECT_ID_INTERNAL_SDVOA << OBJECT_ID_SHIFT) |
234 | |
235 | #define ENCODER_INTERNAL_SDVOA_ENUM_ID2 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
236 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
237 | ENCODER_OBJECT_ID_INTERNAL_SDVOA << OBJECT_ID_SHIFT) |
238 | |
239 | #define ENCODER_INTERNAL_SDVOB_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
240 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
241 | ENCODER_OBJECT_ID_INTERNAL_SDVOB << OBJECT_ID_SHIFT) |
242 | |
243 | #define ENCODER_SIL170B_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
244 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
245 | ENCODER_OBJECT_ID_SI170B << OBJECT_ID_SHIFT) |
246 | |
247 | #define ENCODER_CH7303_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
248 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
249 | ENCODER_OBJECT_ID_CH7303 << OBJECT_ID_SHIFT) |
250 | |
251 | #define ENCODER_CH7301_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
252 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
253 | ENCODER_OBJECT_ID_CH7301 << OBJECT_ID_SHIFT) |
254 | |
255 | #define ENCODER_INTERNAL_DVO1_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
256 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
257 | ENCODER_OBJECT_ID_INTERNAL_DVO1 << OBJECT_ID_SHIFT) |
258 | |
259 | #define ENCODER_EXTERNAL_SDVOA_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
260 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
261 | ENCODER_OBJECT_ID_EXTERNAL_SDVOA << OBJECT_ID_SHIFT) |
262 | |
263 | #define ENCODER_EXTERNAL_SDVOA_ENUM_ID2 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
264 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
265 | ENCODER_OBJECT_ID_EXTERNAL_SDVOA << OBJECT_ID_SHIFT) |
266 | |
267 | |
268 | #define ENCODER_EXTERNAL_SDVOB_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
269 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
270 | ENCODER_OBJECT_ID_EXTERNAL_SDVOB << OBJECT_ID_SHIFT) |
271 | |
272 | |
273 | #define ENCODER_TITFP513_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
274 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
275 | ENCODER_OBJECT_ID_TITFP513 << OBJECT_ID_SHIFT) |
276 | |
277 | #define ENCODER_INTERNAL_LVTM1_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
278 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
279 | ENCODER_OBJECT_ID_INTERNAL_LVTM1 << OBJECT_ID_SHIFT) |
280 | |
281 | #define ENCODER_VT1623_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
282 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
283 | ENCODER_OBJECT_ID_VT1623 << OBJECT_ID_SHIFT) |
284 | |
285 | #define ENCODER_HDMI_SI1930_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
286 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
287 | ENCODER_OBJECT_ID_HDMI_SI1930 << OBJECT_ID_SHIFT) |
288 | |
289 | #define ENCODER_HDMI_INTERNAL_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
290 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
291 | ENCODER_OBJECT_ID_HDMI_INTERNAL << OBJECT_ID_SHIFT) |
292 | |
293 | #define ENCODER_INTERNAL_KLDSCP_TMDS1_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
294 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
295 | ENCODER_OBJECT_ID_INTERNAL_KLDSCP_TMDS1 << OBJECT_ID_SHIFT) |
296 | |
297 | |
298 | #define ENCODER_INTERNAL_KLDSCP_TMDS1_ENUM_ID2 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
299 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
300 | ENCODER_OBJECT_ID_INTERNAL_KLDSCP_TMDS1 << OBJECT_ID_SHIFT) |
301 | |
302 | |
303 | #define ENCODER_INTERNAL_KLDSCP_DVO1_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
304 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
305 | ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DVO1 << OBJECT_ID_SHIFT) |
306 | |
307 | #define ENCODER_INTERNAL_KLDSCP_DAC1_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
308 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
309 | ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DAC1 << OBJECT_ID_SHIFT) |
310 | |
311 | #define ENCODER_INTERNAL_KLDSCP_DAC2_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
312 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
313 | ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DAC2 << OBJECT_ID_SHIFT) // Shared with CV/TV and CRT |
314 | |
315 | #define ENCODER_SI178_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
316 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
317 | ENCODER_OBJECT_ID_SI178 << OBJECT_ID_SHIFT) |
318 | |
319 | #define ENCODER_MVPU_FPGA_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
320 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
321 | ENCODER_OBJECT_ID_MVPU_FPGA << OBJECT_ID_SHIFT) |
322 | |
323 | #define ENCODER_INTERNAL_DDI_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
324 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
325 | ENCODER_OBJECT_ID_INTERNAL_DDI << OBJECT_ID_SHIFT) |
326 | |
327 | #define ENCODER_VT1625_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
328 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
329 | ENCODER_OBJECT_ID_VT1625 << OBJECT_ID_SHIFT) |
330 | |
331 | #define ENCODER_HDMI_SI1932_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
332 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
333 | ENCODER_OBJECT_ID_HDMI_SI1932 << OBJECT_ID_SHIFT) |
334 | |
335 | #define ENCODER_DP_DP501_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
336 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
337 | ENCODER_OBJECT_ID_DP_DP501 << OBJECT_ID_SHIFT) |
338 | |
339 | #define ENCODER_DP_AN9801_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
340 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
341 | ENCODER_OBJECT_ID_DP_AN9801 << OBJECT_ID_SHIFT) |
342 | |
343 | #define ENCODER_INTERNAL_UNIPHY_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
344 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
345 | ENCODER_OBJECT_ID_INTERNAL_UNIPHY << OBJECT_ID_SHIFT) |
346 | |
347 | #define ENCODER_INTERNAL_UNIPHY_ENUM_ID2 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
348 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
349 | ENCODER_OBJECT_ID_INTERNAL_UNIPHY << OBJECT_ID_SHIFT) |
350 | |
351 | #define ENCODER_INTERNAL_KLDSCP_LVTMA_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
352 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
353 | ENCODER_OBJECT_ID_INTERNAL_KLDSCP_LVTMA << OBJECT_ID_SHIFT) |
354 | |
355 | #define ENCODER_INTERNAL_UNIPHY1_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
356 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
357 | ENCODER_OBJECT_ID_INTERNAL_UNIPHY1 << OBJECT_ID_SHIFT) |
358 | |
359 | #define ENCODER_INTERNAL_UNIPHY1_ENUM_ID2 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
360 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
361 | ENCODER_OBJECT_ID_INTERNAL_UNIPHY1 << OBJECT_ID_SHIFT) |
362 | |
363 | #define ENCODER_INTERNAL_UNIPHY2_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
364 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
365 | ENCODER_OBJECT_ID_INTERNAL_UNIPHY2 << OBJECT_ID_SHIFT) |
366 | |
367 | #define ENCODER_INTERNAL_UNIPHY2_ENUM_ID2 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
368 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
369 | ENCODER_OBJECT_ID_INTERNAL_UNIPHY2 << OBJECT_ID_SHIFT) |
370 | |
371 | #define ENCODER_INTERNAL_UNIPHY3_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
372 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
373 | ENCODER_OBJECT_ID_INTERNAL_UNIPHY3 << OBJECT_ID_SHIFT) |
374 | |
375 | #define ENCODER_INTERNAL_UNIPHY3_ENUM_ID2 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
376 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
377 | ENCODER_OBJECT_ID_INTERNAL_UNIPHY3 << OBJECT_ID_SHIFT) |
378 | |
379 | #define ENCODER_GENERAL_EXTERNAL_DVO_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
380 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
381 | ENCODER_OBJECT_ID_GENERAL_EXTERNAL_DVO << OBJECT_ID_SHIFT) |
382 | |
383 | #define ENCODER_ALMOND_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
384 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
385 | ENCODER_OBJECT_ID_ALMOND << OBJECT_ID_SHIFT) |
386 | |
387 | #define ENCODER_ALMOND_ENUM_ID2 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
388 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
389 | ENCODER_OBJECT_ID_ALMOND << OBJECT_ID_SHIFT) |
390 | |
391 | #define ENCODER_TRAVIS_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
392 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
393 | ENCODER_OBJECT_ID_TRAVIS << OBJECT_ID_SHIFT) |
394 | |
395 | #define ENCODER_TRAVIS_ENUM_ID2 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
396 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
397 | ENCODER_OBJECT_ID_TRAVIS << OBJECT_ID_SHIFT) |
398 | |
399 | #define ENCODER_NUTMEG_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
400 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
401 | ENCODER_OBJECT_ID_NUTMEG << OBJECT_ID_SHIFT) |
402 | |
403 | #define ENCODER_VCE_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
404 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
405 | ENCODER_OBJECT_ID_INTERNAL_VCE << OBJECT_ID_SHIFT) |
406 | |
407 | #define ENCODER_HDMI_ANX9805_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\ |
408 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
409 | ENCODER_OBJECT_ID_HDMI_ANX9805 << OBJECT_ID_SHIFT) |
410 | |
411 | /****************************************************/ |
412 | /* Connector Object ID definition - Shared with BIOS */ |
413 | /****************************************************/ |
414 | /* |
415 | #define CONNECTOR_SINGLE_LINK_DVI_I_ENUM_ID1 0x3101 |
416 | #define CONNECTOR_DUAL_LINK_DVI_I_ENUM_ID1 0x3102 |
417 | #define CONNECTOR_SINGLE_LINK_DVI_D_ENUM_ID1 0x3103 |
418 | #define CONNECTOR_DUAL_LINK_DVI_D_ENUM_ID1 0x3104 |
419 | #define CONNECTOR_VGA_ENUM_ID1 0x3105 |
420 | #define CONNECTOR_COMPOSITE_ENUM_ID1 0x3106 |
421 | #define CONNECTOR_SVIDEO_ENUM_ID1 0x3107 |
422 | #define CONNECTOR_YPbPr_ENUM_ID1 0x3108 |
423 | #define CONNECTOR_D_CONNECTORE_ENUM_ID1 0x3109 |
424 | #define CONNECTOR_9PIN_DIN_ENUM_ID1 0x310A |
425 | #define CONNECTOR_SCART_ENUM_ID1 0x310B |
426 | #define CONNECTOR_HDMI_TYPE_A_ENUM_ID1 0x310C |
427 | #define CONNECTOR_HDMI_TYPE_B_ENUM_ID1 0x310D |
428 | #define CONNECTOR_LVDS_ENUM_ID1 0x310E |
429 | #define CONNECTOR_7PIN_DIN_ENUM_ID1 0x310F |
430 | #define CONNECTOR_PCIE_CONNECTOR_ENUM_ID1 0x3110 |
431 | */ |
432 | #define CONNECTOR_LVDS_ENUM_ID1 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
433 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
434 | CONNECTOR_OBJECT_ID_LVDS << OBJECT_ID_SHIFT) |
435 | |
436 | #define CONNECTOR_LVDS_ENUM_ID2 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
437 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
438 | CONNECTOR_OBJECT_ID_LVDS << OBJECT_ID_SHIFT) |
439 | |
440 | #define CONNECTOR_eDP_ENUM_ID1 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
441 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
442 | CONNECTOR_OBJECT_ID_eDP << OBJECT_ID_SHIFT) |
443 | |
444 | #define CONNECTOR_eDP_ENUM_ID2 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
445 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
446 | CONNECTOR_OBJECT_ID_eDP << OBJECT_ID_SHIFT) |
447 | |
448 | #define CONNECTOR_SINGLE_LINK_DVI_I_ENUM_ID1 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
449 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
450 | CONNECTOR_OBJECT_ID_SINGLE_LINK_DVI_I << OBJECT_ID_SHIFT) |
451 | |
452 | #define CONNECTOR_SINGLE_LINK_DVI_I_ENUM_ID2 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
453 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
454 | CONNECTOR_OBJECT_ID_SINGLE_LINK_DVI_I << OBJECT_ID_SHIFT) |
455 | |
456 | #define CONNECTOR_DUAL_LINK_DVI_I_ENUM_ID1 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
457 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
458 | CONNECTOR_OBJECT_ID_DUAL_LINK_DVI_I << OBJECT_ID_SHIFT) |
459 | |
460 | #define CONNECTOR_DUAL_LINK_DVI_I_ENUM_ID2 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
461 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
462 | CONNECTOR_OBJECT_ID_DUAL_LINK_DVI_I << OBJECT_ID_SHIFT) |
463 | |
464 | #define CONNECTOR_SINGLE_LINK_DVI_D_ENUM_ID1 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
465 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
466 | CONNECTOR_OBJECT_ID_SINGLE_LINK_DVI_D << OBJECT_ID_SHIFT) |
467 | |
468 | #define CONNECTOR_SINGLE_LINK_DVI_D_ENUM_ID2 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
469 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
470 | CONNECTOR_OBJECT_ID_SINGLE_LINK_DVI_D << OBJECT_ID_SHIFT) |
471 | |
472 | #define CONNECTOR_SINGLE_LINK_DVI_D_ENUM_ID3 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
473 | GRAPH_OBJECT_ENUM_ID3 << ENUM_ID_SHIFT |\ |
474 | CONNECTOR_OBJECT_ID_SINGLE_LINK_DVI_D << OBJECT_ID_SHIFT) |
475 | |
476 | #define CONNECTOR_SINGLE_LINK_DVI_D_ENUM_ID4 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
477 | GRAPH_OBJECT_ENUM_ID4 << ENUM_ID_SHIFT |\ |
478 | CONNECTOR_OBJECT_ID_SINGLE_LINK_DVI_D << OBJECT_ID_SHIFT) |
479 | |
480 | #define CONNECTOR_SINGLE_LINK_DVI_D_ENUM_ID5 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
481 | GRAPH_OBJECT_ENUM_ID5 << ENUM_ID_SHIFT |\ |
482 | CONNECTOR_OBJECT_ID_SINGLE_LINK_DVI_D << OBJECT_ID_SHIFT) |
483 | |
484 | #define CONNECTOR_SINGLE_LINK_DVI_D_ENUM_ID6 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
485 | GRAPH_OBJECT_ENUM_ID6 << ENUM_ID_SHIFT |\ |
486 | CONNECTOR_OBJECT_ID_SINGLE_LINK_DVI_D << OBJECT_ID_SHIFT) |
487 | |
488 | #define CONNECTOR_DUAL_LINK_DVI_D_ENUM_ID1 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
489 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
490 | CONNECTOR_OBJECT_ID_DUAL_LINK_DVI_D << OBJECT_ID_SHIFT) |
491 | |
492 | #define CONNECTOR_DUAL_LINK_DVI_D_ENUM_ID2 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
493 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
494 | CONNECTOR_OBJECT_ID_DUAL_LINK_DVI_D << OBJECT_ID_SHIFT) |
495 | |
496 | #define CONNECTOR_DUAL_LINK_DVI_D_ENUM_ID3 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
497 | GRAPH_OBJECT_ENUM_ID3 << ENUM_ID_SHIFT |\ |
498 | CONNECTOR_OBJECT_ID_DUAL_LINK_DVI_D << OBJECT_ID_SHIFT) |
499 | |
500 | #define CONNECTOR_DUAL_LINK_DVI_D_ENUM_ID4 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
501 | GRAPH_OBJECT_ENUM_ID4 << ENUM_ID_SHIFT |\ |
502 | CONNECTOR_OBJECT_ID_DUAL_LINK_DVI_D << OBJECT_ID_SHIFT) |
503 | |
504 | #define CONNECTOR_VGA_ENUM_ID1 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
505 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
506 | CONNECTOR_OBJECT_ID_VGA << OBJECT_ID_SHIFT) |
507 | |
508 | #define CONNECTOR_VGA_ENUM_ID2 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
509 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
510 | CONNECTOR_OBJECT_ID_VGA << OBJECT_ID_SHIFT) |
511 | |
512 | #define CONNECTOR_COMPOSITE_ENUM_ID1 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
513 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
514 | CONNECTOR_OBJECT_ID_COMPOSITE << OBJECT_ID_SHIFT) |
515 | |
516 | #define CONNECTOR_COMPOSITE_ENUM_ID2 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
517 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
518 | CONNECTOR_OBJECT_ID_COMPOSITE << OBJECT_ID_SHIFT) |
519 | |
520 | #define CONNECTOR_SVIDEO_ENUM_ID1 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
521 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
522 | CONNECTOR_OBJECT_ID_SVIDEO << OBJECT_ID_SHIFT) |
523 | |
524 | #define CONNECTOR_SVIDEO_ENUM_ID2 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
525 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
526 | CONNECTOR_OBJECT_ID_SVIDEO << OBJECT_ID_SHIFT) |
527 | |
528 | #define CONNECTOR_YPbPr_ENUM_ID1 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
529 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
530 | CONNECTOR_OBJECT_ID_YPbPr << OBJECT_ID_SHIFT) |
531 | |
532 | #define CONNECTOR_YPbPr_ENUM_ID2 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
533 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
534 | CONNECTOR_OBJECT_ID_YPbPr << OBJECT_ID_SHIFT) |
535 | |
536 | #define CONNECTOR_D_CONNECTOR_ENUM_ID1 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
537 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
538 | CONNECTOR_OBJECT_ID_D_CONNECTOR << OBJECT_ID_SHIFT) |
539 | |
540 | #define CONNECTOR_D_CONNECTOR_ENUM_ID2 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
541 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
542 | CONNECTOR_OBJECT_ID_D_CONNECTOR << OBJECT_ID_SHIFT) |
543 | |
544 | #define CONNECTOR_9PIN_DIN_ENUM_ID1 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
545 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
546 | CONNECTOR_OBJECT_ID_9PIN_DIN << OBJECT_ID_SHIFT) |
547 | |
548 | #define CONNECTOR_9PIN_DIN_ENUM_ID2 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
549 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
550 | CONNECTOR_OBJECT_ID_9PIN_DIN << OBJECT_ID_SHIFT) |
551 | |
552 | #define CONNECTOR_SCART_ENUM_ID1 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
553 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
554 | CONNECTOR_OBJECT_ID_SCART << OBJECT_ID_SHIFT) |
555 | |
556 | #define CONNECTOR_SCART_ENUM_ID2 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
557 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
558 | CONNECTOR_OBJECT_ID_SCART << OBJECT_ID_SHIFT) |
559 | |
560 | #define CONNECTOR_HDMI_TYPE_A_ENUM_ID1 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
561 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
562 | CONNECTOR_OBJECT_ID_HDMI_TYPE_A << OBJECT_ID_SHIFT) |
563 | |
564 | #define CONNECTOR_HDMI_TYPE_A_ENUM_ID2 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
565 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
566 | CONNECTOR_OBJECT_ID_HDMI_TYPE_A << OBJECT_ID_SHIFT) |
567 | |
568 | #define CONNECTOR_HDMI_TYPE_A_ENUM_ID3 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
569 | GRAPH_OBJECT_ENUM_ID3 << ENUM_ID_SHIFT |\ |
570 | CONNECTOR_OBJECT_ID_HDMI_TYPE_A << OBJECT_ID_SHIFT) |
571 | |
572 | #define CONNECTOR_HDMI_TYPE_A_ENUM_ID4 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
573 | GRAPH_OBJECT_ENUM_ID4 << ENUM_ID_SHIFT |\ |
574 | CONNECTOR_OBJECT_ID_HDMI_TYPE_A << OBJECT_ID_SHIFT) |
575 | |
576 | #define CONNECTOR_HDMI_TYPE_A_ENUM_ID5 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
577 | GRAPH_OBJECT_ENUM_ID5 << ENUM_ID_SHIFT |\ |
578 | CONNECTOR_OBJECT_ID_HDMI_TYPE_A << OBJECT_ID_SHIFT) |
579 | |
580 | #define CONNECTOR_HDMI_TYPE_A_ENUM_ID6 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
581 | GRAPH_OBJECT_ENUM_ID6 << ENUM_ID_SHIFT |\ |
582 | CONNECTOR_OBJECT_ID_HDMI_TYPE_A << OBJECT_ID_SHIFT) |
583 | |
584 | #define CONNECTOR_HDMI_TYPE_B_ENUM_ID1 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
585 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
586 | CONNECTOR_OBJECT_ID_HDMI_TYPE_B << OBJECT_ID_SHIFT) |
587 | |
588 | #define CONNECTOR_HDMI_TYPE_B_ENUM_ID2 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
589 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
590 | CONNECTOR_OBJECT_ID_HDMI_TYPE_B << OBJECT_ID_SHIFT) |
591 | |
592 | #define CONNECTOR_7PIN_DIN_ENUM_ID1 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
593 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
594 | CONNECTOR_OBJECT_ID_7PIN_DIN << OBJECT_ID_SHIFT) |
595 | |
596 | #define CONNECTOR_7PIN_DIN_ENUM_ID2 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
597 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
598 | CONNECTOR_OBJECT_ID_7PIN_DIN << OBJECT_ID_SHIFT) |
599 | |
600 | #define CONNECTOR_PCIE_CONNECTOR_ENUM_ID1 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
601 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
602 | CONNECTOR_OBJECT_ID_PCIE_CONNECTOR << OBJECT_ID_SHIFT) |
603 | |
604 | #define CONNECTOR_PCIE_CONNECTOR_ENUM_ID2 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
605 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
606 | CONNECTOR_OBJECT_ID_PCIE_CONNECTOR << OBJECT_ID_SHIFT) |
607 | |
608 | #define CONNECTOR_CROSSFIRE_ENUM_ID1 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
609 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
610 | CONNECTOR_OBJECT_ID_CROSSFIRE << OBJECT_ID_SHIFT) |
611 | |
612 | #define CONNECTOR_CROSSFIRE_ENUM_ID2 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
613 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
614 | CONNECTOR_OBJECT_ID_CROSSFIRE << OBJECT_ID_SHIFT) |
615 | |
616 | |
617 | #define CONNECTOR_HARDCODE_DVI_ENUM_ID1 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
618 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
619 | CONNECTOR_OBJECT_ID_HARDCODE_DVI << OBJECT_ID_SHIFT) |
620 | |
621 | #define CONNECTOR_HARDCODE_DVI_ENUM_ID2 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
622 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
623 | CONNECTOR_OBJECT_ID_HARDCODE_DVI << OBJECT_ID_SHIFT) |
624 | |
625 | #define CONNECTOR_DISPLAYPORT_ENUM_ID1 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
626 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
627 | CONNECTOR_OBJECT_ID_DISPLAYPORT << OBJECT_ID_SHIFT) |
628 | |
629 | #define CONNECTOR_DISPLAYPORT_ENUM_ID2 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
630 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
631 | CONNECTOR_OBJECT_ID_DISPLAYPORT << OBJECT_ID_SHIFT) |
632 | |
633 | #define CONNECTOR_DISPLAYPORT_ENUM_ID3 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
634 | GRAPH_OBJECT_ENUM_ID3 << ENUM_ID_SHIFT |\ |
635 | CONNECTOR_OBJECT_ID_DISPLAYPORT << OBJECT_ID_SHIFT) |
636 | |
637 | #define CONNECTOR_DISPLAYPORT_ENUM_ID4 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
638 | GRAPH_OBJECT_ENUM_ID4 << ENUM_ID_SHIFT |\ |
639 | CONNECTOR_OBJECT_ID_DISPLAYPORT << OBJECT_ID_SHIFT) |
640 | |
641 | #define CONNECTOR_DISPLAYPORT_ENUM_ID5 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
642 | GRAPH_OBJECT_ENUM_ID5 << ENUM_ID_SHIFT |\ |
643 | CONNECTOR_OBJECT_ID_DISPLAYPORT << OBJECT_ID_SHIFT) |
644 | |
645 | #define CONNECTOR_DISPLAYPORT_ENUM_ID6 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
646 | GRAPH_OBJECT_ENUM_ID6 << ENUM_ID_SHIFT |\ |
647 | CONNECTOR_OBJECT_ID_DISPLAYPORT << OBJECT_ID_SHIFT) |
648 | |
649 | #define CONNECTOR_MXM_ENUM_ID1 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
650 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
651 | CONNECTOR_OBJECT_ID_MXM << OBJECT_ID_SHIFT) //Mapping to MXM_DP_A |
652 | |
653 | #define CONNECTOR_MXM_ENUM_ID2 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
654 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
655 | CONNECTOR_OBJECT_ID_MXM << OBJECT_ID_SHIFT) //Mapping to MXM_DP_B |
656 | |
657 | #define CONNECTOR_MXM_ENUM_ID3 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
658 | GRAPH_OBJECT_ENUM_ID3 << ENUM_ID_SHIFT |\ |
659 | CONNECTOR_OBJECT_ID_MXM << OBJECT_ID_SHIFT) //Mapping to MXM_DP_C |
660 | |
661 | #define CONNECTOR_MXM_ENUM_ID4 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
662 | GRAPH_OBJECT_ENUM_ID4 << ENUM_ID_SHIFT |\ |
663 | CONNECTOR_OBJECT_ID_MXM << OBJECT_ID_SHIFT) //Mapping to MXM_DP_D |
664 | |
665 | #define CONNECTOR_MXM_ENUM_ID5 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
666 | GRAPH_OBJECT_ENUM_ID5 << ENUM_ID_SHIFT |\ |
667 | CONNECTOR_OBJECT_ID_MXM << OBJECT_ID_SHIFT) //Mapping to MXM_LVDS_TXxx |
668 | |
669 | #define CONNECTOR_MXM_ENUM_ID6 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
670 | GRAPH_OBJECT_ENUM_ID6 << ENUM_ID_SHIFT |\ |
671 | CONNECTOR_OBJECT_ID_MXM << OBJECT_ID_SHIFT) //Mapping to MXM_LVDS_UXxx |
672 | |
673 | #define CONNECTOR_MXM_ENUM_ID7 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
674 | GRAPH_OBJECT_ENUM_ID7 << ENUM_ID_SHIFT |\ |
675 | CONNECTOR_OBJECT_ID_MXM << OBJECT_ID_SHIFT) //Mapping to MXM_DAC |
676 | |
677 | #define CONNECTOR_LVDS_eDP_ENUM_ID1 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
678 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
679 | CONNECTOR_OBJECT_ID_LVDS_eDP << OBJECT_ID_SHIFT) |
680 | |
681 | #define CONNECTOR_LVDS_eDP_ENUM_ID2 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\ |
682 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
683 | CONNECTOR_OBJECT_ID_LVDS_eDP << OBJECT_ID_SHIFT) |
684 | |
685 | /****************************************************/ |
686 | /* Router Object ID definition - Shared with BIOS */ |
687 | /****************************************************/ |
688 | #define ROUTER_I2C_EXTENDER_CNTL_ENUM_ID1 ( GRAPH_OBJECT_TYPE_ROUTER << OBJECT_TYPE_SHIFT |\ |
689 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
690 | ROUTER_OBJECT_ID_I2C_EXTENDER_CNTL << OBJECT_ID_SHIFT) |
691 | |
692 | /* deleted */ |
693 | |
694 | /****************************************************/ |
695 | /* Generic Object ID definition - Shared with BIOS */ |
696 | /****************************************************/ |
697 | #define GENERICOBJECT_GLSYNC_ENUM_ID1 (GRAPH_OBJECT_TYPE_GENERIC << OBJECT_TYPE_SHIFT |\ |
698 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
699 | GENERIC_OBJECT_ID_GLSYNC << OBJECT_ID_SHIFT) |
700 | |
701 | #define GENERICOBJECT_PX2_NON_DRIVABLE_ID1 (GRAPH_OBJECT_TYPE_GENERIC << OBJECT_TYPE_SHIFT |\ |
702 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
703 | GENERIC_OBJECT_ID_PX2_NON_DRIVABLE<< OBJECT_ID_SHIFT) |
704 | |
705 | #define GENERICOBJECT_PX2_NON_DRIVABLE_ID2 (GRAPH_OBJECT_TYPE_GENERIC << OBJECT_TYPE_SHIFT |\ |
706 | GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\ |
707 | GENERIC_OBJECT_ID_PX2_NON_DRIVABLE<< OBJECT_ID_SHIFT) |
708 | |
709 | #define GENERICOBJECT_MXM_OPM_ENUM_ID1 (GRAPH_OBJECT_TYPE_GENERIC << OBJECT_TYPE_SHIFT |\ |
710 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
711 | GENERIC_OBJECT_ID_MXM_OPM << OBJECT_ID_SHIFT) |
712 | |
713 | #define GENERICOBJECT_STEREO_PIN_ENUM_ID1 (GRAPH_OBJECT_TYPE_GENERIC << OBJECT_TYPE_SHIFT |\ |
714 | GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\ |
715 | GENERIC_OBJECT_ID_STEREO_PIN << OBJECT_ID_SHIFT) |
716 | |
717 | /****************************************************/ |
718 | /* Object Cap definition - Shared with BIOS */ |
719 | /****************************************************/ |
720 | #define GRAPHICS_OBJECT_CAP_I2C 0x00000001L |
721 | #define GRAPHICS_OBJECT_CAP_TABLE_ID 0x00000002L |
722 | |
723 | |
724 | #define GRAPHICS_OBJECT_I2CCOMMAND_TABLE_ID 0x01 |
725 | #define GRAPHICS_OBJECT_HOTPLUGDETECTIONINTERUPT_TABLE_ID 0x02 |
726 | #define GRAPHICS_OBJECT_ENCODER_OUTPUT_PROTECTION_TABLE_ID 0x03 |
727 | |
728 | #if defined(_X86_) |
729 | #pragma pack() |
730 | #endif |
731 | |
732 | #endif /*GRAPHICTYPE */ |
733 | |
734 | |
735 | |
736 | |
737 | |