1209ff23fSmrg/*
2209ff23fSmrg* Copyright 2006-2007 Advanced Micro Devices, Inc.
3209ff23fSmrg*
4209ff23fSmrg* Permission is hereby granted, free of charge, to any person obtaining a
5209ff23fSmrg* copy of this software and associated documentation files (the "Software"),
6209ff23fSmrg* to deal in the Software without restriction, including without limitation
7209ff23fSmrg* the rights to use, copy, modify, merge, publish, distribute, sublicense,
8209ff23fSmrg* and/or sell copies of the Software, and to permit persons to whom the
9209ff23fSmrg* Software is furnished to do so, subject to the following conditions:
10209ff23fSmrg*
11209ff23fSmrg* The above copyright notice and this permission notice shall be included in
12209ff23fSmrg* all copies or substantial portions of the Software.
13209ff23fSmrg*
14209ff23fSmrg* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15209ff23fSmrg* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16209ff23fSmrg* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
17209ff23fSmrg* THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR
18209ff23fSmrg* OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
19209ff23fSmrg* ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
20209ff23fSmrg* OTHER DEALINGS IN THE SOFTWARE.
21209ff23fSmrg*/
22209ff23fSmrg/* based on stg/asic_reg/drivers/inc/asic_reg/ObjectID.h ver 23 */
23209ff23fSmrg
24209ff23fSmrg#ifndef _OBJECTID_H
25209ff23fSmrg#define _OBJECTID_H
26209ff23fSmrg
27209ff23fSmrg#if defined(_X86_)
28209ff23fSmrg#pragma pack(1)
29209ff23fSmrg#endif
30209ff23fSmrg
31209ff23fSmrg/****************************************************/
32209ff23fSmrg/* Graphics Object Type Definition                  */
33209ff23fSmrg/****************************************************/
34209ff23fSmrg#define GRAPH_OBJECT_TYPE_NONE                    0x0
35209ff23fSmrg#define GRAPH_OBJECT_TYPE_GPU                     0x1
36209ff23fSmrg#define GRAPH_OBJECT_TYPE_ENCODER                 0x2
37209ff23fSmrg#define GRAPH_OBJECT_TYPE_CONNECTOR               0x3
38209ff23fSmrg#define GRAPH_OBJECT_TYPE_ROUTER                  0x4
39209ff23fSmrg/* deleted */
40209ff23fSmrg
41209ff23fSmrg/****************************************************/
42209ff23fSmrg/* Encoder Object ID Definition                     */
43209ff23fSmrg/****************************************************/
44209ff23fSmrg#define ENCODER_OBJECT_ID_NONE                    0x00
45209ff23fSmrg
46209ff23fSmrg/* Radeon Class Display Hardware */
47209ff23fSmrg#define ENCODER_OBJECT_ID_INTERNAL_LVDS           0x01
48209ff23fSmrg#define ENCODER_OBJECT_ID_INTERNAL_TMDS1          0x02
49209ff23fSmrg#define ENCODER_OBJECT_ID_INTERNAL_TMDS2          0x03
50209ff23fSmrg#define ENCODER_OBJECT_ID_INTERNAL_DAC1           0x04
51209ff23fSmrg#define ENCODER_OBJECT_ID_INTERNAL_DAC2           0x05     /* TV/CV DAC */
52209ff23fSmrg#define ENCODER_OBJECT_ID_INTERNAL_SDVOA          0x06
53209ff23fSmrg#define ENCODER_OBJECT_ID_INTERNAL_SDVOB          0x07
54209ff23fSmrg
55209ff23fSmrg/* External Third Party Encoders */
56209ff23fSmrg#define ENCODER_OBJECT_ID_SI170B                  0x08
57209ff23fSmrg#define ENCODER_OBJECT_ID_CH7303                  0x09
58209ff23fSmrg#define ENCODER_OBJECT_ID_CH7301                  0x0A
59209ff23fSmrg#define ENCODER_OBJECT_ID_INTERNAL_DVO1           0x0B    /* This belongs to Radeon Class Display Hardware */
60209ff23fSmrg#define ENCODER_OBJECT_ID_EXTERNAL_SDVOA          0x0C
61209ff23fSmrg#define ENCODER_OBJECT_ID_EXTERNAL_SDVOB          0x0D
62209ff23fSmrg#define ENCODER_OBJECT_ID_TITFP513                0x0E
63209ff23fSmrg#define ENCODER_OBJECT_ID_INTERNAL_LVTM1          0x0F    /* not used for Radeon */
64209ff23fSmrg#define ENCODER_OBJECT_ID_VT1623                  0x10
65209ff23fSmrg#define ENCODER_OBJECT_ID_HDMI_SI1930             0x11
66209ff23fSmrg#define ENCODER_OBJECT_ID_HDMI_INTERNAL           0x12
67209ff23fSmrg/* Kaleidoscope (KLDSCP) Class Display Hardware (internal) */
68209ff23fSmrg#define ENCODER_OBJECT_ID_INTERNAL_KLDSCP_TMDS1   0x13
69209ff23fSmrg#define ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DVO1    0x14
70209ff23fSmrg#define ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DAC1    0x15
71209ff23fSmrg#define ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DAC2    0x16  /* Shared with CV/TV and CRT */
72209ff23fSmrg#define ENCODER_OBJECT_ID_SI178                   0X17  /* External TMDS (dual link, no HDCP.) */
73209ff23fSmrg#define ENCODER_OBJECT_ID_MVPU_FPGA               0x18  /* MVPU FPGA chip */
74209ff23fSmrg#define ENCODER_OBJECT_ID_INTERNAL_DDI            0x19
75209ff23fSmrg#define ENCODER_OBJECT_ID_VT1625                  0x1A
76209ff23fSmrg#define ENCODER_OBJECT_ID_HDMI_SI1932             0x1B
77209ff23fSmrg#define ENCODER_OBJECT_ID_DP_AN9801               0x1C
78209ff23fSmrg#define ENCODER_OBJECT_ID_DP_DP501                0x1D
79209ff23fSmrg#define ENCODER_OBJECT_ID_INTERNAL_UNIPHY         0x1E
80209ff23fSmrg#define ENCODER_OBJECT_ID_INTERNAL_KLDSCP_LVTMA   0x1F
81b7e1c893Smrg#define ENCODER_OBJECT_ID_INTERNAL_UNIPHY1        0x20
82b7e1c893Smrg#define ENCODER_OBJECT_ID_INTERNAL_UNIPHY2        0x21
83b7e1c893Smrg
84b7e1c893Smrg#define ENCODER_OBJECT_ID_GENERAL_EXTERNAL_DVO    0xFF
85209ff23fSmrg
86209ff23fSmrg/****************************************************/
87209ff23fSmrg/* Connector Object ID Definition                   */
88209ff23fSmrg/****************************************************/
89209ff23fSmrg#define CONNECTOR_OBJECT_ID_NONE                  0x00
90209ff23fSmrg#define CONNECTOR_OBJECT_ID_SINGLE_LINK_DVI_I     0x01
91209ff23fSmrg#define CONNECTOR_OBJECT_ID_DUAL_LINK_DVI_I       0x02
92209ff23fSmrg#define CONNECTOR_OBJECT_ID_SINGLE_LINK_DVI_D     0x03
93209ff23fSmrg#define CONNECTOR_OBJECT_ID_DUAL_LINK_DVI_D       0x04
94209ff23fSmrg#define CONNECTOR_OBJECT_ID_VGA                   0x05
95209ff23fSmrg#define CONNECTOR_OBJECT_ID_COMPOSITE             0x06
96209ff23fSmrg#define CONNECTOR_OBJECT_ID_SVIDEO                0x07
97209ff23fSmrg#define CONNECTOR_OBJECT_ID_YPbPr                 0x08
98209ff23fSmrg#define CONNECTOR_OBJECT_ID_D_CONNECTOR           0x09
99209ff23fSmrg#define CONNECTOR_OBJECT_ID_9PIN_DIN              0x0A  /* Supports both CV & TV */
100209ff23fSmrg#define CONNECTOR_OBJECT_ID_SCART                 0x0B
101209ff23fSmrg#define CONNECTOR_OBJECT_ID_HDMI_TYPE_A           0x0C
102209ff23fSmrg#define CONNECTOR_OBJECT_ID_HDMI_TYPE_B           0x0D
103209ff23fSmrg#define CONNECTOR_OBJECT_ID_LVDS                  0x0E
104209ff23fSmrg#define CONNECTOR_OBJECT_ID_7PIN_DIN              0x0F
105209ff23fSmrg#define CONNECTOR_OBJECT_ID_PCIE_CONNECTOR        0x10
106209ff23fSmrg#define CONNECTOR_OBJECT_ID_CROSSFIRE             0x11
107209ff23fSmrg#define CONNECTOR_OBJECT_ID_HARDCODE_DVI          0x12
108209ff23fSmrg#define CONNECTOR_OBJECT_ID_DISPLAYPORT           0x13
109ad43ddacSmrg#define CONNECTOR_OBJECT_ID_eDP                   0x14
110ad43ddacSmrg#define CONNECTOR_OBJECT_ID_MXM                   0x15
111209ff23fSmrg
112209ff23fSmrg/* deleted */
113209ff23fSmrg
114209ff23fSmrg/****************************************************/
115209ff23fSmrg/* Router Object ID Definition                      */
116209ff23fSmrg/****************************************************/
117209ff23fSmrg#define ROUTER_OBJECT_ID_NONE											0x00
118209ff23fSmrg#define ROUTER_OBJECT_ID_I2C_EXTENDER_CNTL				0x01
119209ff23fSmrg
120209ff23fSmrg/****************************************************/
121ad43ddacSmrg/* Generic Object ID Definition                     */
122ad43ddacSmrg/****************************************************/
123ad43ddacSmrg#define GENERIC_OBJECT_ID_NONE                    0x00
124ad43ddacSmrg#define GENERIC_OBJECT_ID_GLSYNC                  0x01
125ad43ddacSmrg#define GENERIC_OBJECT_ID_PX2_NON_DRIVABLE        0x02
126ad43ddacSmrg#define GENERIC_OBJECT_ID_MXM_OPM                 0x03
127ad43ddacSmrg
128ad43ddacSmrg/****************************************************/
129ad43ddacSmrg/* Graphics Object ENUM ID Definition               */
130209ff23fSmrg/****************************************************/
131209ff23fSmrg#define GRAPH_OBJECT_ENUM_ID1                     0x01
132209ff23fSmrg#define GRAPH_OBJECT_ENUM_ID2                     0x02
133209ff23fSmrg#define GRAPH_OBJECT_ENUM_ID3                     0x03
134209ff23fSmrg#define GRAPH_OBJECT_ENUM_ID4                     0x04
135b7e1c893Smrg#define GRAPH_OBJECT_ENUM_ID5                     0x05
136b7e1c893Smrg#define GRAPH_OBJECT_ENUM_ID6                     0x06
137ad43ddacSmrg#define GRAPH_OBJECT_ENUM_ID7                     0x07
138209ff23fSmrg
139209ff23fSmrg/****************************************************/
140209ff23fSmrg/* Graphics Object ID Bit definition                */
141209ff23fSmrg/****************************************************/
142209ff23fSmrg#define OBJECT_ID_MASK                            0x00FF
143209ff23fSmrg#define ENUM_ID_MASK                              0x0700
144209ff23fSmrg#define RESERVED1_ID_MASK                         0x0800
145209ff23fSmrg#define OBJECT_TYPE_MASK                          0x7000
146209ff23fSmrg#define RESERVED2_ID_MASK                         0x8000
147209ff23fSmrg
148209ff23fSmrg#define OBJECT_ID_SHIFT                           0x00
149209ff23fSmrg#define ENUM_ID_SHIFT                             0x08
150209ff23fSmrg#define OBJECT_TYPE_SHIFT                         0x0C
151209ff23fSmrg
152209ff23fSmrg
153209ff23fSmrg/****************************************************/
154209ff23fSmrg/* Graphics Object family definition                */
155209ff23fSmrg/****************************************************/
156209ff23fSmrg#define CONSTRUCTOBJECTFAMILYID(GRAPHICS_OBJECT_TYPE, GRAPHICS_OBJECT_ID) (GRAPHICS_OBJECT_TYPE << OBJECT_TYPE_SHIFT | \
157209ff23fSmrg                                                                           GRAPHICS_OBJECT_ID   << OBJECT_ID_SHIFT)
158209ff23fSmrg/****************************************************/
159209ff23fSmrg/* GPU Object ID definition - Shared with BIOS      */
160209ff23fSmrg/****************************************************/
161209ff23fSmrg#define GPU_ENUM_ID1                            ( GRAPH_OBJECT_TYPE_GPU << OBJECT_TYPE_SHIFT |\
162209ff23fSmrg                                                 GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT)
163209ff23fSmrg
164209ff23fSmrg/****************************************************/
165209ff23fSmrg/* Encoder Object ID definition - Shared with BIOS  */
166209ff23fSmrg/****************************************************/
167209ff23fSmrg/*
168209ff23fSmrg#define ENCODER_INTERNAL_LVDS_ENUM_ID1        0x2101
169209ff23fSmrg#define ENCODER_INTERNAL_TMDS1_ENUM_ID1       0x2102
170209ff23fSmrg#define ENCODER_INTERNAL_TMDS2_ENUM_ID1       0x2103
171209ff23fSmrg#define ENCODER_INTERNAL_DAC1_ENUM_ID1        0x2104
172209ff23fSmrg#define ENCODER_INTERNAL_DAC2_ENUM_ID1        0x2105
173209ff23fSmrg#define ENCODER_INTERNAL_SDVOA_ENUM_ID1       0x2106
174209ff23fSmrg#define ENCODER_INTERNAL_SDVOB_ENUM_ID1       0x2107
175209ff23fSmrg#define ENCODER_SIL170B_ENUM_ID1              0x2108
176209ff23fSmrg#define ENCODER_CH7303_ENUM_ID1               0x2109
177209ff23fSmrg#define ENCODER_CH7301_ENUM_ID1               0x210A
178209ff23fSmrg#define ENCODER_INTERNAL_DVO1_ENUM_ID1        0x210B
179209ff23fSmrg#define ENCODER_EXTERNAL_SDVOA_ENUM_ID1       0x210C
180209ff23fSmrg#define ENCODER_EXTERNAL_SDVOB_ENUM_ID1       0x210D
181209ff23fSmrg#define ENCODER_TITFP513_ENUM_ID1             0x210E
182209ff23fSmrg#define ENCODER_INTERNAL_LVTM1_ENUM_ID1       0x210F
183209ff23fSmrg#define ENCODER_VT1623_ENUM_ID1               0x2110
184209ff23fSmrg#define ENCODER_HDMI_SI1930_ENUM_ID1          0x2111
185209ff23fSmrg#define ENCODER_HDMI_INTERNAL_ENUM_ID1        0x2112
186209ff23fSmrg#define ENCODER_INTERNAL_KLDSCP_TMDS1_ENUM_ID1   0x2113
187209ff23fSmrg#define ENCODER_INTERNAL_KLDSCP_DVO1_ENUM_ID1    0x2114
188209ff23fSmrg#define ENCODER_INTERNAL_KLDSCP_DAC1_ENUM_ID1    0x2115
189209ff23fSmrg#define ENCODER_INTERNAL_KLDSCP_DAC2_ENUM_ID1    0x2116
190209ff23fSmrg#define ENCODER_SI178_ENUM_ID1                   0x2117
191209ff23fSmrg#define ENCODER_MVPU_FPGA_ENUM_ID1               0x2118
192209ff23fSmrg#define ENCODER_INTERNAL_DDI_ENUM_ID1            0x2119
193b7e1c893Smrg#define ENCODER_VT1625_ENUM_ID1                  0x211A
194209ff23fSmrg#define ENCODER_HDMI_SI1932_ENUM_ID1             0x211B
195209ff23fSmrg#define ENCODER_ENCODER_DP_AN9801_ENUM_ID1       0x211C
196209ff23fSmrg#define ENCODER_DP_DP501_ENUM_ID1                0x211D
197209ff23fSmrg#define ENCODER_INTERNAL_UNIPHY_ENUM_ID1         0x211E
198209ff23fSmrg*/
199209ff23fSmrg#define ENCODER_INTERNAL_LVDS_ENUM_ID1     ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\
200209ff23fSmrg                                             GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
201209ff23fSmrg                                             ENCODER_OBJECT_ID_INTERNAL_LVDS << OBJECT_ID_SHIFT)
202209ff23fSmrg
203209ff23fSmrg#define ENCODER_INTERNAL_TMDS1_ENUM_ID1    ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\
204209ff23fSmrg                                             GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
205209ff23fSmrg                                             ENCODER_OBJECT_ID_INTERNAL_TMDS1 << OBJECT_ID_SHIFT)
206209ff23fSmrg
207209ff23fSmrg#define ENCODER_INTERNAL_TMDS2_ENUM_ID1    ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\
208209ff23fSmrg                                             GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
209209ff23fSmrg                                             ENCODER_OBJECT_ID_INTERNAL_TMDS2 << OBJECT_ID_SHIFT)
210209ff23fSmrg
211209ff23fSmrg#define ENCODER_INTERNAL_DAC1_ENUM_ID1     ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\
212209ff23fSmrg                                             GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
213209ff23fSmrg                                             ENCODER_OBJECT_ID_INTERNAL_DAC1 << OBJECT_ID_SHIFT)
214209ff23fSmrg
215209ff23fSmrg#define ENCODER_INTERNAL_DAC2_ENUM_ID1     ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\
216209ff23fSmrg                                             GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
217209ff23fSmrg                                             ENCODER_OBJECT_ID_INTERNAL_DAC2 << OBJECT_ID_SHIFT)
218209ff23fSmrg
219209ff23fSmrg#define ENCODER_INTERNAL_SDVOA_ENUM_ID1    ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\
220209ff23fSmrg                                             GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
221209ff23fSmrg                                             ENCODER_OBJECT_ID_INTERNAL_SDVOA << OBJECT_ID_SHIFT)
222209ff23fSmrg
223209ff23fSmrg#define ENCODER_INTERNAL_SDVOA_ENUM_ID2    ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\
224209ff23fSmrg                                             GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\
225209ff23fSmrg                                             ENCODER_OBJECT_ID_INTERNAL_SDVOA << OBJECT_ID_SHIFT)
226209ff23fSmrg
227209ff23fSmrg#define ENCODER_INTERNAL_SDVOB_ENUM_ID1    ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\
228209ff23fSmrg                                             GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
229209ff23fSmrg                                             ENCODER_OBJECT_ID_INTERNAL_SDVOB << OBJECT_ID_SHIFT)
230209ff23fSmrg
231209ff23fSmrg#define ENCODER_SIL170B_ENUM_ID1           ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\
232209ff23fSmrg                                             GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
233209ff23fSmrg                                             ENCODER_OBJECT_ID_SI170B << OBJECT_ID_SHIFT)
234209ff23fSmrg
235209ff23fSmrg#define ENCODER_CH7303_ENUM_ID1            ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\
236209ff23fSmrg                                             GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
237209ff23fSmrg                                             ENCODER_OBJECT_ID_CH7303 << OBJECT_ID_SHIFT)
238209ff23fSmrg
239209ff23fSmrg#define ENCODER_CH7301_ENUM_ID1            ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\
240209ff23fSmrg                                             GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
241209ff23fSmrg                                             ENCODER_OBJECT_ID_CH7301 << OBJECT_ID_SHIFT)
242209ff23fSmrg
243209ff23fSmrg#define ENCODER_INTERNAL_DVO1_ENUM_ID1     ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\
244209ff23fSmrg                                             GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
245209ff23fSmrg                                             ENCODER_OBJECT_ID_INTERNAL_DVO1 << OBJECT_ID_SHIFT)
246209ff23fSmrg
247209ff23fSmrg#define ENCODER_EXTERNAL_SDVOA_ENUM_ID1    ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\
248209ff23fSmrg                                             GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
249209ff23fSmrg                                             ENCODER_OBJECT_ID_EXTERNAL_SDVOA << OBJECT_ID_SHIFT)
250209ff23fSmrg
251209ff23fSmrg#define ENCODER_EXTERNAL_SDVOA_ENUM_ID2    ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\
252209ff23fSmrg                                             GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\
253209ff23fSmrg                                             ENCODER_OBJECT_ID_EXTERNAL_SDVOA << OBJECT_ID_SHIFT)
254209ff23fSmrg
255209ff23fSmrg
256209ff23fSmrg#define ENCODER_EXTERNAL_SDVOB_ENUM_ID1    ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\
257209ff23fSmrg                                             GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
258209ff23fSmrg                                             ENCODER_OBJECT_ID_EXTERNAL_SDVOB << OBJECT_ID_SHIFT)
259209ff23fSmrg
260209ff23fSmrg
261209ff23fSmrg#define ENCODER_TITFP513_ENUM_ID1          ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\
262209ff23fSmrg                                             GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
263209ff23fSmrg                                             ENCODER_OBJECT_ID_TITFP513 << OBJECT_ID_SHIFT)
264209ff23fSmrg
265209ff23fSmrg#define ENCODER_INTERNAL_LVTM1_ENUM_ID1    ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\
266209ff23fSmrg                                             GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
267209ff23fSmrg                                             ENCODER_OBJECT_ID_INTERNAL_LVTM1 << OBJECT_ID_SHIFT)
268209ff23fSmrg
269209ff23fSmrg#define ENCODER_VT1623_ENUM_ID1            ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\
270209ff23fSmrg                                             GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
271209ff23fSmrg                                             ENCODER_OBJECT_ID_VT1623 << OBJECT_ID_SHIFT)
272209ff23fSmrg
273209ff23fSmrg#define ENCODER_HDMI_SI1930_ENUM_ID1       ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\
274209ff23fSmrg                                             GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
275209ff23fSmrg                                             ENCODER_OBJECT_ID_HDMI_SI1930 << OBJECT_ID_SHIFT)
276209ff23fSmrg
277209ff23fSmrg#define ENCODER_HDMI_INTERNAL_ENUM_ID1     ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\
278209ff23fSmrg                                             GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
279209ff23fSmrg                                             ENCODER_OBJECT_ID_HDMI_INTERNAL << OBJECT_ID_SHIFT)
280209ff23fSmrg
281209ff23fSmrg#define ENCODER_INTERNAL_KLDSCP_TMDS1_ENUM_ID1   ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\
282209ff23fSmrg                                                   GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
283209ff23fSmrg                                                   ENCODER_OBJECT_ID_INTERNAL_KLDSCP_TMDS1 << OBJECT_ID_SHIFT)
284209ff23fSmrg
285209ff23fSmrg
286209ff23fSmrg#define ENCODER_INTERNAL_KLDSCP_TMDS1_ENUM_ID2   ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\
287209ff23fSmrg                                                   GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\
288209ff23fSmrg                                                   ENCODER_OBJECT_ID_INTERNAL_KLDSCP_TMDS1 << OBJECT_ID_SHIFT)
289209ff23fSmrg
290209ff23fSmrg
291209ff23fSmrg#define ENCODER_INTERNAL_KLDSCP_DVO1_ENUM_ID1    ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\
292209ff23fSmrg                                                   GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
293209ff23fSmrg                                                   ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DVO1 << OBJECT_ID_SHIFT)
294209ff23fSmrg
295209ff23fSmrg#define ENCODER_INTERNAL_KLDSCP_DAC1_ENUM_ID1    ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\
296209ff23fSmrg                                                   GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
297209ff23fSmrg                                                   ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DAC1 << OBJECT_ID_SHIFT)
298209ff23fSmrg
299209ff23fSmrg#define ENCODER_INTERNAL_KLDSCP_DAC2_ENUM_ID1    ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\
300209ff23fSmrg                                                   GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
301209ff23fSmrg                                                   ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DAC2 << OBJECT_ID_SHIFT)  // Shared with CV/TV and CRT
302209ff23fSmrg
303209ff23fSmrg#define ENCODER_SI178_ENUM_ID1                    ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\
304209ff23fSmrg                                                   GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
305209ff23fSmrg                                                   ENCODER_OBJECT_ID_SI178 << OBJECT_ID_SHIFT)
306209ff23fSmrg
307209ff23fSmrg#define ENCODER_MVPU_FPGA_ENUM_ID1                ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\
308209ff23fSmrg                                                   GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
309209ff23fSmrg                                                   ENCODER_OBJECT_ID_MVPU_FPGA << OBJECT_ID_SHIFT)
310209ff23fSmrg
311209ff23fSmrg#define ENCODER_INTERNAL_DDI_ENUM_ID1     (  GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\
312209ff23fSmrg                                             GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
313209ff23fSmrg                                             ENCODER_OBJECT_ID_INTERNAL_DDI << OBJECT_ID_SHIFT)
314209ff23fSmrg
315209ff23fSmrg#define ENCODER_VT1625_ENUM_ID1            ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\
316209ff23fSmrg                                             GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
317209ff23fSmrg                                             ENCODER_OBJECT_ID_VT1625 << OBJECT_ID_SHIFT)
318209ff23fSmrg
319209ff23fSmrg#define ENCODER_HDMI_SI1932_ENUM_ID1       ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\
320209ff23fSmrg                                             GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
321209ff23fSmrg                                             ENCODER_OBJECT_ID_HDMI_SI1932 << OBJECT_ID_SHIFT)
322209ff23fSmrg
323209ff23fSmrg#define ENCODER_DP_DP501_ENUM_ID1            ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\
324209ff23fSmrg                                             GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
325209ff23fSmrg                                             ENCODER_OBJECT_ID_DP_DP501 << OBJECT_ID_SHIFT)
326209ff23fSmrg
327209ff23fSmrg#define ENCODER_DP_AN9801_ENUM_ID1            ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\
328209ff23fSmrg                                             GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
329209ff23fSmrg                                             ENCODER_OBJECT_ID_DP_AN9801 << OBJECT_ID_SHIFT)
330209ff23fSmrg
331209ff23fSmrg#define ENCODER_INTERNAL_UNIPHY_ENUM_ID1         ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\
332209ff23fSmrg                                                 GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
333209ff23fSmrg                                                 ENCODER_OBJECT_ID_INTERNAL_UNIPHY << OBJECT_ID_SHIFT)
334209ff23fSmrg
335209ff23fSmrg#define ENCODER_INTERNAL_UNIPHY_ENUM_ID2         ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\
336209ff23fSmrg                                                 GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\
337209ff23fSmrg                                                 ENCODER_OBJECT_ID_INTERNAL_UNIPHY << OBJECT_ID_SHIFT)
338209ff23fSmrg
339209ff23fSmrg#define ENCODER_INTERNAL_KLDSCP_LVTMA_ENUM_ID1   ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\
340209ff23fSmrg                                                 GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
341209ff23fSmrg                                                 ENCODER_OBJECT_ID_INTERNAL_KLDSCP_LVTMA << OBJECT_ID_SHIFT)
342209ff23fSmrg
343b7e1c893Smrg#define ENCODER_INTERNAL_UNIPHY1_ENUM_ID1         ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\
344b7e1c893Smrg                                                 GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
345b7e1c893Smrg                                                 ENCODER_OBJECT_ID_INTERNAL_UNIPHY1 << OBJECT_ID_SHIFT)
346b7e1c893Smrg
347b7e1c893Smrg#define ENCODER_INTERNAL_UNIPHY1_ENUM_ID2         ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\
348b7e1c893Smrg                                                 GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\
349b7e1c893Smrg                                                 ENCODER_OBJECT_ID_INTERNAL_UNIPHY1 << OBJECT_ID_SHIFT)
350b7e1c893Smrg
351b7e1c893Smrg#define ENCODER_INTERNAL_UNIPHY2_ENUM_ID1         ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\
352b7e1c893Smrg                                                 GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
353b7e1c893Smrg                                                 ENCODER_OBJECT_ID_INTERNAL_UNIPHY2 << OBJECT_ID_SHIFT)
354b7e1c893Smrg
355b7e1c893Smrg#define ENCODER_INTERNAL_UNIPHY2_ENUM_ID2         ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\
356b7e1c893Smrg                                                 GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\
357b7e1c893Smrg                                                 ENCODER_OBJECT_ID_INTERNAL_UNIPHY2 << OBJECT_ID_SHIFT)
358b7e1c893Smrg
359b7e1c893Smrg#define ENCODER_GENERAL_EXTERNAL_DVO_ENUM_ID1    ( GRAPH_OBJECT_TYPE_ENCODER << OBJECT_TYPE_SHIFT |\
360b7e1c893Smrg                                                  GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
361b7e1c893Smrg                                                  ENCODER_OBJECT_ID_GENERAL_EXTERNAL_DVO << OBJECT_ID_SHIFT)
362b7e1c893Smrg
363209ff23fSmrg/****************************************************/
364209ff23fSmrg/* Connector Object ID definition - Shared with BIOS */
365209ff23fSmrg/****************************************************/
366209ff23fSmrg/*
367209ff23fSmrg#define CONNECTOR_SINGLE_LINK_DVI_I_ENUM_ID1        0x3101
368209ff23fSmrg#define CONNECTOR_DUAL_LINK_DVI_I_ENUM_ID1          0x3102
369209ff23fSmrg#define CONNECTOR_SINGLE_LINK_DVI_D_ENUM_ID1        0x3103
370209ff23fSmrg#define CONNECTOR_DUAL_LINK_DVI_D_ENUM_ID1          0x3104
371209ff23fSmrg#define CONNECTOR_VGA_ENUM_ID1                      0x3105
372209ff23fSmrg#define CONNECTOR_COMPOSITE_ENUM_ID1                0x3106
373209ff23fSmrg#define CONNECTOR_SVIDEO_ENUM_ID1                   0x3107
374209ff23fSmrg#define CONNECTOR_YPbPr_ENUM_ID1                    0x3108
375209ff23fSmrg#define CONNECTOR_D_CONNECTORE_ENUM_ID1             0x3109
376209ff23fSmrg#define CONNECTOR_9PIN_DIN_ENUM_ID1                 0x310A
377209ff23fSmrg#define CONNECTOR_SCART_ENUM_ID1                    0x310B
378209ff23fSmrg#define CONNECTOR_HDMI_TYPE_A_ENUM_ID1              0x310C
379209ff23fSmrg#define CONNECTOR_HDMI_TYPE_B_ENUM_ID1              0x310D
380209ff23fSmrg#define CONNECTOR_LVDS_ENUM_ID1                     0x310E
381209ff23fSmrg#define CONNECTOR_7PIN_DIN_ENUM_ID1                 0x310F
382209ff23fSmrg#define CONNECTOR_PCIE_CONNECTOR_ENUM_ID1           0x3110
383209ff23fSmrg*/
384209ff23fSmrg#define CONNECTOR_LVDS_ENUM_ID1                ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
385209ff23fSmrg                                                 GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
386209ff23fSmrg                                                 CONNECTOR_OBJECT_ID_LVDS << OBJECT_ID_SHIFT)
387209ff23fSmrg
388ad43ddacSmrg#define CONNECTOR_LVDS_ENUM_ID2                ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
389ad43ddacSmrg                                                 GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\
390ad43ddacSmrg                                                 CONNECTOR_OBJECT_ID_LVDS << OBJECT_ID_SHIFT)
391ad43ddacSmrg
392ad43ddacSmrg#define CONNECTOR_eDP_ENUM_ID1                 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
393ad43ddacSmrg                                                 GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
394ad43ddacSmrg                                                 CONNECTOR_OBJECT_ID_eDP << OBJECT_ID_SHIFT)
395ad43ddacSmrg
396ad43ddacSmrg#define CONNECTOR_eDP_ENUM_ID2                 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
397ad43ddacSmrg                                                 GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\
398ad43ddacSmrg                                                 CONNECTOR_OBJECT_ID_eDP << OBJECT_ID_SHIFT)
399ad43ddacSmrg
400209ff23fSmrg#define CONNECTOR_SINGLE_LINK_DVI_I_ENUM_ID1   ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
401209ff23fSmrg                                                 GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
402209ff23fSmrg                                                 CONNECTOR_OBJECT_ID_SINGLE_LINK_DVI_I << OBJECT_ID_SHIFT)
403209ff23fSmrg
404209ff23fSmrg#define CONNECTOR_SINGLE_LINK_DVI_I_ENUM_ID2   ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
405209ff23fSmrg                                                 GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\
406209ff23fSmrg                                                 CONNECTOR_OBJECT_ID_SINGLE_LINK_DVI_I << OBJECT_ID_SHIFT)
407209ff23fSmrg
408209ff23fSmrg#define CONNECTOR_DUAL_LINK_DVI_I_ENUM_ID1     ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
409209ff23fSmrg                                                 GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
410209ff23fSmrg                                                 CONNECTOR_OBJECT_ID_DUAL_LINK_DVI_I << OBJECT_ID_SHIFT)
411209ff23fSmrg
412209ff23fSmrg#define CONNECTOR_DUAL_LINK_DVI_I_ENUM_ID2     ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
413209ff23fSmrg                                                 GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\
414209ff23fSmrg                                                 CONNECTOR_OBJECT_ID_DUAL_LINK_DVI_I << OBJECT_ID_SHIFT)
415209ff23fSmrg
416209ff23fSmrg#define CONNECTOR_SINGLE_LINK_DVI_D_ENUM_ID1   ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
417209ff23fSmrg                                                 GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
418209ff23fSmrg                                                 CONNECTOR_OBJECT_ID_SINGLE_LINK_DVI_D << OBJECT_ID_SHIFT)
419209ff23fSmrg
420209ff23fSmrg#define CONNECTOR_SINGLE_LINK_DVI_D_ENUM_ID2   ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
421209ff23fSmrg                                                 GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\
422209ff23fSmrg                                                 CONNECTOR_OBJECT_ID_SINGLE_LINK_DVI_D << OBJECT_ID_SHIFT)
423209ff23fSmrg
424209ff23fSmrg#define CONNECTOR_DUAL_LINK_DVI_D_ENUM_ID1     ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
425209ff23fSmrg                                                 GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
426209ff23fSmrg                                                 CONNECTOR_OBJECT_ID_DUAL_LINK_DVI_D << OBJECT_ID_SHIFT)
427209ff23fSmrg
428ad43ddacSmrg#define CONNECTOR_DUAL_LINK_DVI_D_ENUM_ID2     ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
429ad43ddacSmrg                                                 GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\
430ad43ddacSmrg                                                 CONNECTOR_OBJECT_ID_DUAL_LINK_DVI_D << OBJECT_ID_SHIFT)
431ad43ddacSmrg
432ad43ddacSmrg#define CONNECTOR_DUAL_LINK_DVI_D_ENUM_ID3     ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
433ad43ddacSmrg                                                 GRAPH_OBJECT_ENUM_ID3 << ENUM_ID_SHIFT |\
434ad43ddacSmrg                                                 CONNECTOR_OBJECT_ID_DUAL_LINK_DVI_D << OBJECT_ID_SHIFT)
435ad43ddacSmrg
436209ff23fSmrg#define CONNECTOR_VGA_ENUM_ID1                 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
437209ff23fSmrg                                                 GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
438209ff23fSmrg                                                 CONNECTOR_OBJECT_ID_VGA << OBJECT_ID_SHIFT)
439209ff23fSmrg
440209ff23fSmrg#define CONNECTOR_VGA_ENUM_ID2                 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
441209ff23fSmrg                                                 GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\
442209ff23fSmrg                                                 CONNECTOR_OBJECT_ID_VGA << OBJECT_ID_SHIFT)
443209ff23fSmrg
444209ff23fSmrg#define CONNECTOR_COMPOSITE_ENUM_ID1           ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
445209ff23fSmrg                                                 GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
446209ff23fSmrg                                                 CONNECTOR_OBJECT_ID_COMPOSITE << OBJECT_ID_SHIFT)
447209ff23fSmrg
448ad43ddacSmrg#define CONNECTOR_COMPOSITE_ENUM_ID2           ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
449ad43ddacSmrg                                                 GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\
450ad43ddacSmrg                                                 CONNECTOR_OBJECT_ID_COMPOSITE << OBJECT_ID_SHIFT)
451ad43ddacSmrg
452209ff23fSmrg#define CONNECTOR_SVIDEO_ENUM_ID1              ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
453209ff23fSmrg                                                 GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
454209ff23fSmrg                                                 CONNECTOR_OBJECT_ID_SVIDEO << OBJECT_ID_SHIFT)
455209ff23fSmrg
456ad43ddacSmrg#define CONNECTOR_SVIDEO_ENUM_ID2              ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
457ad43ddacSmrg                                                 GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\
458ad43ddacSmrg                                                 CONNECTOR_OBJECT_ID_SVIDEO << OBJECT_ID_SHIFT)
459ad43ddacSmrg
460209ff23fSmrg#define CONNECTOR_YPbPr_ENUM_ID1               ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
461209ff23fSmrg                                                 GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
462209ff23fSmrg                                                 CONNECTOR_OBJECT_ID_YPbPr << OBJECT_ID_SHIFT)
463209ff23fSmrg
464ad43ddacSmrg#define CONNECTOR_YPbPr_ENUM_ID2               ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
465ad43ddacSmrg                                                 GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\
466ad43ddacSmrg                                                 CONNECTOR_OBJECT_ID_YPbPr << OBJECT_ID_SHIFT)
467ad43ddacSmrg
468209ff23fSmrg#define CONNECTOR_D_CONNECTOR_ENUM_ID1         ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
469209ff23fSmrg                                                 GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
470209ff23fSmrg                                                 CONNECTOR_OBJECT_ID_D_CONNECTOR << OBJECT_ID_SHIFT)
471209ff23fSmrg
472ad43ddacSmrg#define CONNECTOR_D_CONNECTOR_ENUM_ID2         ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
473ad43ddacSmrg                                                 GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\
474ad43ddacSmrg                                                 CONNECTOR_OBJECT_ID_D_CONNECTOR << OBJECT_ID_SHIFT)
475ad43ddacSmrg
476209ff23fSmrg#define CONNECTOR_9PIN_DIN_ENUM_ID1            ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
477209ff23fSmrg                                                 GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
478209ff23fSmrg                                                 CONNECTOR_OBJECT_ID_9PIN_DIN << OBJECT_ID_SHIFT)
479209ff23fSmrg
480ad43ddacSmrg#define CONNECTOR_9PIN_DIN_ENUM_ID2            ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
481ad43ddacSmrg                                                 GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\
482ad43ddacSmrg                                                 CONNECTOR_OBJECT_ID_9PIN_DIN << OBJECT_ID_SHIFT)
483ad43ddacSmrg
484209ff23fSmrg#define CONNECTOR_SCART_ENUM_ID1               ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
485209ff23fSmrg                                                 GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
486209ff23fSmrg                                                 CONNECTOR_OBJECT_ID_SCART << OBJECT_ID_SHIFT)
487209ff23fSmrg
488ad43ddacSmrg#define CONNECTOR_SCART_ENUM_ID2               ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
489ad43ddacSmrg                                                 GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\
490ad43ddacSmrg                                                 CONNECTOR_OBJECT_ID_SCART << OBJECT_ID_SHIFT)
491ad43ddacSmrg
492209ff23fSmrg#define CONNECTOR_HDMI_TYPE_A_ENUM_ID1         ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
493209ff23fSmrg                                                 GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
494209ff23fSmrg                                                 CONNECTOR_OBJECT_ID_HDMI_TYPE_A << OBJECT_ID_SHIFT)
495209ff23fSmrg
496ad43ddacSmrg#define CONNECTOR_HDMI_TYPE_A_ENUM_ID2         ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
497ad43ddacSmrg                                                 GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\
498ad43ddacSmrg                                                 CONNECTOR_OBJECT_ID_HDMI_TYPE_A << OBJECT_ID_SHIFT)
499ad43ddacSmrg
500ad43ddacSmrg#define CONNECTOR_HDMI_TYPE_A_ENUM_ID3         ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
501ad43ddacSmrg                                                 GRAPH_OBJECT_ENUM_ID3 << ENUM_ID_SHIFT |\
502ad43ddacSmrg                                                 CONNECTOR_OBJECT_ID_HDMI_TYPE_A << OBJECT_ID_SHIFT)
503ad43ddacSmrg
504209ff23fSmrg#define CONNECTOR_HDMI_TYPE_B_ENUM_ID1         ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
505209ff23fSmrg                                                 GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
506209ff23fSmrg                                                 CONNECTOR_OBJECT_ID_HDMI_TYPE_B << OBJECT_ID_SHIFT)
507209ff23fSmrg
508ad43ddacSmrg#define CONNECTOR_HDMI_TYPE_B_ENUM_ID2         ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
509ad43ddacSmrg                                                 GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\
510ad43ddacSmrg                                                 CONNECTOR_OBJECT_ID_HDMI_TYPE_B << OBJECT_ID_SHIFT)
511ad43ddacSmrg
512209ff23fSmrg#define CONNECTOR_7PIN_DIN_ENUM_ID1            ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
513209ff23fSmrg                                                 GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
514209ff23fSmrg                                                 CONNECTOR_OBJECT_ID_7PIN_DIN << OBJECT_ID_SHIFT)
515ad43ddacSmrg#define CONNECTOR_7PIN_DIN_ENUM_ID2            ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
516ad43ddacSmrg                                                 GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\
517ad43ddacSmrg                                                 CONNECTOR_OBJECT_ID_7PIN_DIN << OBJECT_ID_SHIFT)
518209ff23fSmrg
519209ff23fSmrg#define CONNECTOR_PCIE_CONNECTOR_ENUM_ID1      ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
520209ff23fSmrg                                                 GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
521209ff23fSmrg                                                 CONNECTOR_OBJECT_ID_PCIE_CONNECTOR << OBJECT_ID_SHIFT)
522209ff23fSmrg
523209ff23fSmrg#define CONNECTOR_PCIE_CONNECTOR_ENUM_ID2      ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
524209ff23fSmrg                                                 GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\
525209ff23fSmrg                                                 CONNECTOR_OBJECT_ID_PCIE_CONNECTOR << OBJECT_ID_SHIFT)
526209ff23fSmrg
527209ff23fSmrg#define CONNECTOR_CROSSFIRE_ENUM_ID1           ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
528209ff23fSmrg                                                 GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
529209ff23fSmrg                                                 CONNECTOR_OBJECT_ID_CROSSFIRE << OBJECT_ID_SHIFT)
530209ff23fSmrg
531209ff23fSmrg#define CONNECTOR_CROSSFIRE_ENUM_ID2           ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
532209ff23fSmrg                                                 GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\
533209ff23fSmrg                                                 CONNECTOR_OBJECT_ID_CROSSFIRE << OBJECT_ID_SHIFT)
534209ff23fSmrg
535209ff23fSmrg
536209ff23fSmrg#define CONNECTOR_HARDCODE_DVI_ENUM_ID1        ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
537209ff23fSmrg                                                 GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
538209ff23fSmrg                                                 CONNECTOR_OBJECT_ID_HARDCODE_DVI << OBJECT_ID_SHIFT)
539209ff23fSmrg
540209ff23fSmrg#define CONNECTOR_HARDCODE_DVI_ENUM_ID2        ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
541209ff23fSmrg                                                 GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\
542209ff23fSmrg                                                 CONNECTOR_OBJECT_ID_HARDCODE_DVI << OBJECT_ID_SHIFT)
543209ff23fSmrg
544209ff23fSmrg#define CONNECTOR_DISPLAYPORT_ENUM_ID1         ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
545209ff23fSmrg                                                 GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
546209ff23fSmrg                                                 CONNECTOR_OBJECT_ID_DISPLAYPORT << OBJECT_ID_SHIFT)
547209ff23fSmrg
548209ff23fSmrg#define CONNECTOR_DISPLAYPORT_ENUM_ID2         ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
549209ff23fSmrg                                                 GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\
550209ff23fSmrg                                                 CONNECTOR_OBJECT_ID_DISPLAYPORT << OBJECT_ID_SHIFT)
551209ff23fSmrg
552b7e1c893Smrg#define CONNECTOR_DISPLAYPORT_ENUM_ID3         ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
553b7e1c893Smrg                                                 GRAPH_OBJECT_ENUM_ID3 << ENUM_ID_SHIFT |\
554b7e1c893Smrg                                                 CONNECTOR_OBJECT_ID_DISPLAYPORT << OBJECT_ID_SHIFT)
555b7e1c893Smrg
556b7e1c893Smrg#define CONNECTOR_DISPLAYPORT_ENUM_ID4         ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
557b7e1c893Smrg                                                 GRAPH_OBJECT_ENUM_ID4 << ENUM_ID_SHIFT |\
558b7e1c893Smrg                                                 CONNECTOR_OBJECT_ID_DISPLAYPORT << OBJECT_ID_SHIFT)
559b7e1c893Smrg
560ad43ddacSmrg#define CONNECTOR_DISPLAYPORT_ENUM_ID5         ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
561ad43ddacSmrg                                                 GRAPH_OBJECT_ENUM_ID5 << ENUM_ID_SHIFT |\
562ad43ddacSmrg                                                 CONNECTOR_OBJECT_ID_DISPLAYPORT << OBJECT_ID_SHIFT)
563ad43ddacSmrg
564ad43ddacSmrg#define CONNECTOR_DISPLAYPORT_ENUM_ID6         ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
565ad43ddacSmrg                                                 GRAPH_OBJECT_ENUM_ID6 << ENUM_ID_SHIFT |\
566ad43ddacSmrg                                                 CONNECTOR_OBJECT_ID_DISPLAYPORT << OBJECT_ID_SHIFT)
567ad43ddacSmrg
568ad43ddacSmrg#define CONNECTOR_MXM_ENUM_ID1                 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
569ad43ddacSmrg                                                 GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
570ad43ddacSmrg                                                 CONNECTOR_OBJECT_ID_MXM << OBJECT_ID_SHIFT)          //Mapping to MXM_DP_A
571ad43ddacSmrg
572ad43ddacSmrg#define CONNECTOR_MXM_ENUM_ID2                 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
573ad43ddacSmrg                                                 GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\
574ad43ddacSmrg                                                 CONNECTOR_OBJECT_ID_MXM << OBJECT_ID_SHIFT)          //Mapping to MXM_DP_B
575ad43ddacSmrg
576ad43ddacSmrg#define CONNECTOR_MXM_ENUM_ID3                 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
577ad43ddacSmrg                                                 GRAPH_OBJECT_ENUM_ID3 << ENUM_ID_SHIFT |\
578ad43ddacSmrg                                                 CONNECTOR_OBJECT_ID_MXM << OBJECT_ID_SHIFT)          //Mapping to MXM_DP_C
579ad43ddacSmrg
580ad43ddacSmrg#define CONNECTOR_MXM_ENUM_ID4                 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
581ad43ddacSmrg                                                 GRAPH_OBJECT_ENUM_ID4 << ENUM_ID_SHIFT |\
582ad43ddacSmrg                                                 CONNECTOR_OBJECT_ID_MXM << OBJECT_ID_SHIFT)          //Mapping to MXM_DP_D
583ad43ddacSmrg
584ad43ddacSmrg#define CONNECTOR_MXM_ENUM_ID5                 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
585ad43ddacSmrg                                                 GRAPH_OBJECT_ENUM_ID5 << ENUM_ID_SHIFT |\
586ad43ddacSmrg                                                 CONNECTOR_OBJECT_ID_MXM << OBJECT_ID_SHIFT)          //Mapping to MXM_LVDS_TXxx
587ad43ddacSmrg
588ad43ddacSmrg#define CONNECTOR_MXM_ENUM_ID6                 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
589ad43ddacSmrg                                                 GRAPH_OBJECT_ENUM_ID6 << ENUM_ID_SHIFT |\
590ad43ddacSmrg                                                 CONNECTOR_OBJECT_ID_MXM << OBJECT_ID_SHIFT)          //Mapping to MXM_LVDS_UXxx
591ad43ddacSmrg
592ad43ddacSmrg#define CONNECTOR_MXM_ENUM_ID7                 ( GRAPH_OBJECT_TYPE_CONNECTOR << OBJECT_TYPE_SHIFT |\
593ad43ddacSmrg                                                 GRAPH_OBJECT_ENUM_ID7 << ENUM_ID_SHIFT |\
594ad43ddacSmrg                                                 CONNECTOR_OBJECT_ID_MXM << OBJECT_ID_SHIFT)          //Mapping to MXM_DAC
595ad43ddacSmrg
596209ff23fSmrg/****************************************************/
597209ff23fSmrg/* Router Object ID definition - Shared with BIOS   */
598209ff23fSmrg/****************************************************/
599209ff23fSmrg#define ROUTER_I2C_EXTENDER_CNTL_ENUM_ID1      ( GRAPH_OBJECT_TYPE_ROUTER << OBJECT_TYPE_SHIFT |\
600209ff23fSmrg                                                GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
601209ff23fSmrg                                                ROUTER_OBJECT_ID_I2C_EXTENDER_CNTL << OBJECT_ID_SHIFT)
602209ff23fSmrg
603209ff23fSmrg/* deleted */
604209ff23fSmrg
605ad43ddacSmrg/****************************************************/
606ad43ddacSmrg/* Generic Object ID definition - Shared with BIOS  */
607ad43ddacSmrg/****************************************************/
608ad43ddacSmrg#define GENERICOBJECT_GLSYNC_ENUM_ID1           (GRAPH_OBJECT_TYPE_GENERIC << OBJECT_TYPE_SHIFT |\
609ad43ddacSmrg                                                 GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
610ad43ddacSmrg                                                 GENERIC_OBJECT_ID_GLSYNC << OBJECT_ID_SHIFT)
611ad43ddacSmrg
612ad43ddacSmrg#define GENERICOBJECT_PX2_NON_DRIVABLE_ID1       (GRAPH_OBJECT_TYPE_GENERIC << OBJECT_TYPE_SHIFT |\
613ad43ddacSmrg                                                 GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
614ad43ddacSmrg                                                 GENERIC_OBJECT_ID_PX2_NON_DRIVABLE<< OBJECT_ID_SHIFT)
615ad43ddacSmrg
616ad43ddacSmrg#define GENERICOBJECT_PX2_NON_DRIVABLE_ID2       (GRAPH_OBJECT_TYPE_GENERIC << OBJECT_TYPE_SHIFT |\
617ad43ddacSmrg                                                 GRAPH_OBJECT_ENUM_ID2 << ENUM_ID_SHIFT |\
618ad43ddacSmrg                                                 GENERIC_OBJECT_ID_PX2_NON_DRIVABLE<< OBJECT_ID_SHIFT)
619ad43ddacSmrg
620ad43ddacSmrg#define GENERICOBJECT_MXM_OPM_ENUM_ID1           (GRAPH_OBJECT_TYPE_GENERIC << OBJECT_TYPE_SHIFT |\
621ad43ddacSmrg                                                 GRAPH_OBJECT_ENUM_ID1 << ENUM_ID_SHIFT |\
622ad43ddacSmrg                                                 GENERIC_OBJECT_ID_MXM_OPM << OBJECT_ID_SHIFT)
623ad43ddacSmrg
624209ff23fSmrg/****************************************************/
625209ff23fSmrg/* Object Cap definition - Shared with BIOS         */
626209ff23fSmrg/****************************************************/
627209ff23fSmrg#define GRAPHICS_OBJECT_CAP_I2C                 0x00000001L
628209ff23fSmrg#define GRAPHICS_OBJECT_CAP_TABLE_ID            0x00000002L
629209ff23fSmrg
630209ff23fSmrg
631209ff23fSmrg#define GRAPHICS_OBJECT_I2CCOMMAND_TABLE_ID                   0x01
632209ff23fSmrg#define GRAPHICS_OBJECT_HOTPLUGDETECTIONINTERUPT_TABLE_ID     0x02
633209ff23fSmrg#define GRAPHICS_OBJECT_ENCODER_OUTPUT_PROTECTION_TABLE_ID    0x03
634209ff23fSmrg
635209ff23fSmrg#if defined(_X86_)
636209ff23fSmrg#pragma pack()
637209ff23fSmrg#endif
638209ff23fSmrg
639209ff23fSmrg#endif  /*GRAPHICTYPE */
640209ff23fSmrg
641209ff23fSmrg
642209ff23fSmrg
643209ff23fSmrg
644