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