Home | History | Annotate | Line # | Download | only in radeon
      1 /*	$NetBSD: ObjectID.h,v 1.3 2021/12/18 23:45:42 riastradh Exp $	*/
      2 
      3 /*
      4 * Copyright 2006-2007 Advanced Micro Devices, Inc.
      5 *
      6 * Permission is hereby granted, free of charge, to any person obtaining a
      7 * copy of this software and associated documentation files (the "Software"),
      8 * to deal in the Software without restriction, including without limitation
      9 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
     10 * and/or sell copies of the Software, and to permit persons to whom the
     11 * Software is furnished to do so, subject to the following conditions:
     12 *
     13 * The above copyright notice and this permission notice shall be included in
     14 * all copies or substantial portions of the Software.
     15 *
     16 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
     17 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
     18 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
     19 * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR
     20 * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
     21 * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
     22 * OTHER DEALINGS IN THE SOFTWARE.
     23 */
     24 /* based on stg/asic_reg/drivers/inc/asic_reg/ObjectID.h ver 23 */
     25 
     26 #ifndef _OBJECTID_H
     27 #define _OBJECTID_H
     28 
     29 #if defined(_X86_)
     30 #pragma pack(1)
     31 #endif
     32 
     33 /****************************************************/
     34 /* Graphics Object Type Definition                  */
     35 /****************************************************/
     36 #define GRAPH_OBJECT_TYPE_NONE                    0x0
     37 #define GRAPH_OBJECT_TYPE_GPU                     0x1
     38 #define GRAPH_OBJECT_TYPE_ENCODER                 0x2
     39 #define GRAPH_OBJECT_TYPE_CONNECTOR               0x3
     40 #define GRAPH_OBJECT_TYPE_ROUTER                  0x4
     41 /* deleted */
     42 #define GRAPH_OBJECT_TYPE_DISPLAY_PATH            0x6
     43 #define GRAPH_OBJECT_TYPE_GENERIC                 0x7
     44 
     45 /****************************************************/
     46 /* Encoder Object ID Definition                     */
     47 /****************************************************/
     48 #define ENCODER_OBJECT_ID_NONE                    0x00
     49 
     50 /* Radeon Class Display Hardware */
     51 #define ENCODER_OBJECT_ID_INTERNAL_LVDS           0x01
     52 #define ENCODER_OBJECT_ID_INTERNAL_TMDS1          0x02
     53 #define ENCODER_OBJECT_ID_INTERNAL_TMDS2          0x03
     54 #define ENCODER_OBJECT_ID_INTERNAL_DAC1           0x04
     55 #define ENCODER_OBJECT_ID_INTERNAL_DAC2           0x05     /* TV/CV DAC */
     56 #define ENCODER_OBJECT_ID_INTERNAL_SDVOA          0x06
     57 #define ENCODER_OBJECT_ID_INTERNAL_SDVOB          0x07
     58 
     59 /* External Third Party Encoders */
     60 #define ENCODER_OBJECT_ID_SI170B                  0x08
     61 #define ENCODER_OBJECT_ID_CH7303                  0x09
     62 #define ENCODER_OBJECT_ID_CH7301                  0x0A
     63 #define ENCODER_OBJECT_ID_INTERNAL_DVO1           0x0B    /* This belongs to Radeon Class Display Hardware */
     64 #define ENCODER_OBJECT_ID_EXTERNAL_SDVOA          0x0C
     65 #define ENCODER_OBJECT_ID_EXTERNAL_SDVOB          0x0D
     66 #define ENCODER_OBJECT_ID_TITFP513                0x0E
     67 #define ENCODER_OBJECT_ID_INTERNAL_LVTM1          0x0F    /* not used for Radeon */
     68 #define ENCODER_OBJECT_ID_VT1623                  0x10
     69 #define ENCODER_OBJECT_ID_HDMI_SI1930             0x11
     70 #define ENCODER_OBJECT_ID_HDMI_INTERNAL           0x12
     71 #define ENCODER_OBJECT_ID_ALMOND                  0x22
     72 #define ENCODER_OBJECT_ID_TRAVIS                  0x23
     73 #define ENCODER_OBJECT_ID_NUTMEG                  0x22
     74 #define ENCODER_OBJECT_ID_HDMI_ANX9805            0x26
     75 
     76 /* Kaleidoscope (KLDSCP) Class Display Hardware (internal) */
     77 #define ENCODER_OBJECT_ID_INTERNAL_KLDSCP_TMDS1   0x13
     78 #define ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DVO1    0x14
     79 #define ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DAC1    0x15
     80 #define ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DAC2    0x16  /* Shared with CV/TV and CRT */
     81 #define ENCODER_OBJECT_ID_SI178                   0X17  /* External TMDS (dual link, no HDCP.) */
     82 #define ENCODER_OBJECT_ID_MVPU_FPGA               0x18  /* MVPU FPGA chip */
     83 #define ENCODER_OBJECT_ID_INTERNAL_DDI            0x19
     84 #define ENCODER_OBJECT_ID_VT1625                  0x1A
     85 #define ENCODER_OBJECT_ID_HDMI_SI1932             0x1B
     86 #define ENCODER_OBJECT_ID_DP_AN9801               0x1C
     87 #define ENCODER_OBJECT_ID_DP_DP501                0x1D
     88 #define ENCODER_OBJECT_ID_INTERNAL_UNIPHY         0x1E
     89 #define ENCODER_OBJECT_ID_INTERNAL_KLDSCP_LVTMA   0x1F
     90 #define ENCODER_OBJECT_ID_INTERNAL_UNIPHY1        0x20
     91 #define ENCODER_OBJECT_ID_INTERNAL_UNIPHY2        0x21
     92 #define ENCODER_OBJECT_ID_INTERNAL_VCE            0x24
     93 #define ENCODER_OBJECT_ID_INTERNAL_UNIPHY3        0x25
     94 #define ENCODER_OBJECT_ID_INTERNAL_AMCLK          0x27
     95 
     96 #define ENCODER_OBJECT_ID_GENERAL_EXTERNAL_DVO    0xFF
     97 
     98 /****************************************************/
     99 /* Connector Object ID Definition                   */
    100 /****************************************************/
    101 #define CONNECTOR_OBJECT_ID_NONE                  0x00
    102 #define CONNECTOR_OBJECT_ID_SINGLE_LINK_DVI_I     0x01
    103 #define CONNECTOR_OBJECT_ID_DUAL_LINK_DVI_I       0x02
    104 #define CONNECTOR_OBJECT_ID_SINGLE_LINK_DVI_D     0x03
    105 #define CONNECTOR_OBJECT_ID_DUAL_LINK_DVI_D       0x04
    106 #define CONNECTOR_OBJECT_ID_VGA                   0x05
    107 #define CONNECTOR_OBJECT_ID_COMPOSITE             0x06
    108 #define CONNECTOR_OBJECT_ID_SVIDEO                0x07
    109 #define CONNECTOR_OBJECT_ID_YPbPr                 0x08
    110 #define CONNECTOR_OBJECT_ID_D_CONNECTOR           0x09
    111 #define CONNECTOR_OBJECT_ID_9PIN_DIN              0x0A  /* Supports both CV & TV */
    112 #define CONNECTOR_OBJECT_ID_SCART                 0x0B
    113 #define CONNECTOR_OBJECT_ID_HDMI_TYPE_A           0x0C
    114 #define CONNECTOR_OBJECT_ID_HDMI_TYPE_B           0x0D
    115 #define CONNECTOR_OBJECT_ID_LVDS                  0x0E
    116 #define CONNECTOR_OBJECT_ID_7PIN_DIN              0x0F
    117 #define CONNECTOR_OBJECT_ID_PCIE_CONNECTOR        0x10
    118 #define CONNECTOR_OBJECT_ID_CROSSFIRE             0x11
    119 #define CONNECTOR_OBJECT_ID_HARDCODE_DVI          0x12
    120 #define CONNECTOR_OBJECT_ID_DISPLAYPORT           0x13
    121 #define CONNECTOR_OBJECT_ID_eDP                   0x14
    122 #define CONNECTOR_OBJECT_ID_MXM                   0x15
    123 #define CONNECTOR_OBJECT_ID_LVDS_eDP              0x16
    124 
    125 /* deleted */
    126 
    127 /****************************************************/
    128 /* Router Object ID Definition                      */
    129 /****************************************************/
    130 #define ROUTER_OBJECT_ID_NONE											0x00
    131 #define ROUTER_OBJECT_ID_I2C_EXTENDER_CNTL				0x01
    132 
    133 /****************************************************/
    134 /* Generic Object ID Definition                     */
    135 /****************************************************/
    136 #define GENERIC_OBJECT_ID_NONE                    0x00
    137 #define GENERIC_OBJECT_ID_GLSYNC                  0x01
    138 #define GENERIC_OBJECT_ID_PX2_NON_DRIVABLE        0x02
    139 #define GENERIC_OBJECT_ID_MXM_OPM                 0x03
    140 #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
    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 /****************************************************/
    720 /* Object Cap definition - Shared with BIOS         */
    721 /****************************************************/
    722 #define GRAPHICS_OBJECT_CAP_I2C                 0x00000001L
    723 #define GRAPHICS_OBJECT_CAP_TABLE_ID            0x00000002L
    724 
    725 
    726 #define GRAPHICS_OBJECT_I2CCOMMAND_TABLE_ID                   0x01
    727 #define GRAPHICS_OBJECT_HOTPLUGDETECTIONINTERUPT_TABLE_ID     0x02
    728 #define GRAPHICS_OBJECT_ENCODER_OUTPUT_PROTECTION_TABLE_ID    0x03
    729 
    730 #if defined(_X86_)
    731 #pragma pack()
    732 #endif
    733 
    734 #endif  /*GRAPHICTYPE */
    735 
    736 
    737 
    738 
    739