129 #define E1000_DEV_ID_PCH_D_HV_DC                0x10F0
 130 #define E1000_DEV_ID_PCH2_LV_LM                 0x1502
 131 #define E1000_DEV_ID_PCH2_LV_V                  0x1503
 132 #define E1000_DEV_ID_PCH_LPT_I217_LM            0x153A
 133 #define E1000_DEV_ID_PCH_LPT_I217_V             0x153B
 134 #define E1000_DEV_ID_PCH_LPTLP_I218_LM          0x155A
 135 #define E1000_DEV_ID_PCH_LPTLP_I218_V           0x1559
 136 #define E1000_DEV_ID_PCH_I218_LM2               0x15A0
 137 #define E1000_DEV_ID_PCH_I218_V2                0x15A1
 138 #define E1000_DEV_ID_PCH_I218_LM3               0x15A2 /* Wildcat Point PCH */
 139 #define E1000_DEV_ID_PCH_I218_V3                0x15A3 /* Wildcat Point PCH */
 140 #define E1000_DEV_ID_PCH_SPT_I219_LM            0x156F /* Sunrise Point PCH */
 141 #define E1000_DEV_ID_PCH_SPT_I219_V             0x1570 /* Sunrise Point PCH */
 142 #define E1000_DEV_ID_PCH_SPT_I219_LM2           0x15B7 /* Sunrise Point-H PCH */
 143 #define E1000_DEV_ID_PCH_SPT_I219_V2            0x15B8 /* Sunrise Point-H PCH */
 144 #define E1000_DEV_ID_PCH_LBG_I219_LM3           0x15B9 /* LEWISBURG PCH */
 145 #define E1000_DEV_ID_PCH_SPT_I219_LM4           0x15D7
 146 #define E1000_DEV_ID_PCH_SPT_I219_V4            0x15D8
 147 #define E1000_DEV_ID_PCH_SPT_I219_LM5           0x15E3
 148 #define E1000_DEV_ID_PCH_SPT_I219_V5            0x15D6
 149 #define E1000_DEV_ID_82576                      0x10C9
 150 #define E1000_DEV_ID_82576_FIBER                0x10E6
 151 #define E1000_DEV_ID_82576_SERDES               0x10E7
 152 #define E1000_DEV_ID_82576_QUAD_COPPER          0x10E8
 153 #define E1000_DEV_ID_82576_QUAD_COPPER_ET2      0x1526
 154 #define E1000_DEV_ID_82576_NS                   0x150A
 155 #define E1000_DEV_ID_82576_NS_SERDES            0x1518
 156 #define E1000_DEV_ID_82576_SERDES_QUAD          0x150D
 157 #define E1000_DEV_ID_82576_VF                   0x10CA
 158 #define E1000_DEV_ID_82576_VF_HV                0x152D
 159 #define E1000_DEV_ID_I350_VF                    0x1520
 160 #define E1000_DEV_ID_I350_VF_HV                 0x152F
 161 #define E1000_DEV_ID_82575EB_COPPER             0x10A7
 162 #define E1000_DEV_ID_82575EB_FIBER_SERDES       0x10A9
 163 #define E1000_DEV_ID_82575GB_QUAD_COPPER        0x10D6
 164 #define E1000_DEV_ID_82580_COPPER               0x150E
 165 #define E1000_DEV_ID_82580_FIBER                0x150F
 166 #define E1000_DEV_ID_82580_SERDES               0x1510
 167 #define E1000_DEV_ID_82580_SGMII                0x1511
 168 #define E1000_DEV_ID_82580_COPPER_DUAL          0x1516
 
 
 188 #define E1000_DEV_ID_DH89XXCC_SERDES            0x043A
 189 #define E1000_DEV_ID_DH89XXCC_BACKPLANE         0x043C
 190 #define E1000_DEV_ID_DH89XXCC_SFP               0x0440
 191 
 192 #define E1000_REVISION_0        0
 193 #define E1000_REVISION_1        1
 194 #define E1000_REVISION_2        2
 195 #define E1000_REVISION_3        3
 196 #define E1000_REVISION_4        4
 197 
 198 #define E1000_FUNC_0            0
 199 #define E1000_FUNC_1            1
 200 #define E1000_FUNC_2            2
 201 #define E1000_FUNC_3            3
 202 
 203 #define E1000_ALT_MAC_ADDRESS_OFFSET_LAN0       0
 204 #define E1000_ALT_MAC_ADDRESS_OFFSET_LAN1       3
 205 #define E1000_ALT_MAC_ADDRESS_OFFSET_LAN2       6
 206 #define E1000_ALT_MAC_ADDRESS_OFFSET_LAN3       9
 207 
 208 enum e1000_mac_type {
 209         e1000_undefined = 0,
 210         e1000_82542,
 211         e1000_82543,
 212         e1000_82544,
 213         e1000_82540,
 214         e1000_82545,
 215         e1000_82545_rev_3,
 216         e1000_82546,
 217         e1000_82546_rev_3,
 218         e1000_82541,
 219         e1000_82541_rev_2,
 220         e1000_82547,
 221         e1000_82547_rev_2,
 222         e1000_82571,
 223         e1000_82572,
 224         e1000_82573,
 225         e1000_82574,
 226         e1000_82583,
 227         e1000_80003es2lan,
 228         e1000_ich8lan,
 229         e1000_ich9lan,
 230         e1000_ich10lan,
 231         e1000_pchlan,
 232         e1000_pch2lan,
 233         e1000_pch_lpt,
 234         e1000_pch_spt,
 235         e1000_82575,
 236         e1000_82576,
 237         e1000_82580,
 238         e1000_i350,
 239         e1000_i354,
 240         e1000_i210,
 241         e1000_i211,
 242         e1000_vfadapt,
 243         e1000_vfadapt_i350,
 244         e1000_num_macs  /* List is 1-based, so subtract 1 for TRUE count. */
 245 };
 246 
 247 enum e1000_media_type {
 248         e1000_media_type_unknown = 0,
 249         e1000_media_type_copper = 1,
 250         e1000_media_type_fiber = 2,
 251         e1000_media_type_internal_serdes = 3,
 252         e1000_num_media_types
 253 };
 254 
 
 | 
 
 
 129 #define E1000_DEV_ID_PCH_D_HV_DC                0x10F0
 130 #define E1000_DEV_ID_PCH2_LV_LM                 0x1502
 131 #define E1000_DEV_ID_PCH2_LV_V                  0x1503
 132 #define E1000_DEV_ID_PCH_LPT_I217_LM            0x153A
 133 #define E1000_DEV_ID_PCH_LPT_I217_V             0x153B
 134 #define E1000_DEV_ID_PCH_LPTLP_I218_LM          0x155A
 135 #define E1000_DEV_ID_PCH_LPTLP_I218_V           0x1559
 136 #define E1000_DEV_ID_PCH_I218_LM2               0x15A0
 137 #define E1000_DEV_ID_PCH_I218_V2                0x15A1
 138 #define E1000_DEV_ID_PCH_I218_LM3               0x15A2 /* Wildcat Point PCH */
 139 #define E1000_DEV_ID_PCH_I218_V3                0x15A3 /* Wildcat Point PCH */
 140 #define E1000_DEV_ID_PCH_SPT_I219_LM            0x156F /* Sunrise Point PCH */
 141 #define E1000_DEV_ID_PCH_SPT_I219_V             0x1570 /* Sunrise Point PCH */
 142 #define E1000_DEV_ID_PCH_SPT_I219_LM2           0x15B7 /* Sunrise Point-H PCH */
 143 #define E1000_DEV_ID_PCH_SPT_I219_V2            0x15B8 /* Sunrise Point-H PCH */
 144 #define E1000_DEV_ID_PCH_LBG_I219_LM3           0x15B9 /* LEWISBURG PCH */
 145 #define E1000_DEV_ID_PCH_SPT_I219_LM4           0x15D7
 146 #define E1000_DEV_ID_PCH_SPT_I219_V4            0x15D8
 147 #define E1000_DEV_ID_PCH_SPT_I219_LM5           0x15E3
 148 #define E1000_DEV_ID_PCH_SPT_I219_V5            0x15D6
 149 #define E1000_DEV_ID_PCH_CNP_I219_LM6           0x15BD
 150 #define E1000_DEV_ID_PCH_CNP_I219_V6            0x15BE
 151 #define E1000_DEV_ID_PCH_CNP_I219_LM7           0x15BB
 152 #define E1000_DEV_ID_PCH_CNP_I219_V7            0x15BC
 153 #define E1000_DEV_ID_PCH_ICP_I219_LM8           0x15DF
 154 #define E1000_DEV_ID_PCH_ICP_I219_V8            0x15E0
 155 #define E1000_DEV_ID_PCH_ICP_I219_LM9           0x15E1
 156 #define E1000_DEV_ID_PCH_ICP_I219_V9            0x15E2
 157 #define E1000_DEV_ID_82576                      0x10C9
 158 #define E1000_DEV_ID_82576_FIBER                0x10E6
 159 #define E1000_DEV_ID_82576_SERDES               0x10E7
 160 #define E1000_DEV_ID_82576_QUAD_COPPER          0x10E8
 161 #define E1000_DEV_ID_82576_QUAD_COPPER_ET2      0x1526
 162 #define E1000_DEV_ID_82576_NS                   0x150A
 163 #define E1000_DEV_ID_82576_NS_SERDES            0x1518
 164 #define E1000_DEV_ID_82576_SERDES_QUAD          0x150D
 165 #define E1000_DEV_ID_82576_VF                   0x10CA
 166 #define E1000_DEV_ID_82576_VF_HV                0x152D
 167 #define E1000_DEV_ID_I350_VF                    0x1520
 168 #define E1000_DEV_ID_I350_VF_HV                 0x152F
 169 #define E1000_DEV_ID_82575EB_COPPER             0x10A7
 170 #define E1000_DEV_ID_82575EB_FIBER_SERDES       0x10A9
 171 #define E1000_DEV_ID_82575GB_QUAD_COPPER        0x10D6
 172 #define E1000_DEV_ID_82580_COPPER               0x150E
 173 #define E1000_DEV_ID_82580_FIBER                0x150F
 174 #define E1000_DEV_ID_82580_SERDES               0x1510
 175 #define E1000_DEV_ID_82580_SGMII                0x1511
 176 #define E1000_DEV_ID_82580_COPPER_DUAL          0x1516
 
 
 196 #define E1000_DEV_ID_DH89XXCC_SERDES            0x043A
 197 #define E1000_DEV_ID_DH89XXCC_BACKPLANE         0x043C
 198 #define E1000_DEV_ID_DH89XXCC_SFP               0x0440
 199 
 200 #define E1000_REVISION_0        0
 201 #define E1000_REVISION_1        1
 202 #define E1000_REVISION_2        2
 203 #define E1000_REVISION_3        3
 204 #define E1000_REVISION_4        4
 205 
 206 #define E1000_FUNC_0            0
 207 #define E1000_FUNC_1            1
 208 #define E1000_FUNC_2            2
 209 #define E1000_FUNC_3            3
 210 
 211 #define E1000_ALT_MAC_ADDRESS_OFFSET_LAN0       0
 212 #define E1000_ALT_MAC_ADDRESS_OFFSET_LAN1       3
 213 #define E1000_ALT_MAC_ADDRESS_OFFSET_LAN2       6
 214 #define E1000_ALT_MAC_ADDRESS_OFFSET_LAN3       9
 215 
 216 /*
 217  * This enumeration represents all of the different kinds of MAC chips that are
 218  * used by both the e1000g and igb drivers. The ordering here is important as
 219  * certain classes of MACs are very similar, but have minor differences and so
 220  * are compared based on the ordering here. Changing the order here should not
 221  * be done arbitrarily.
 222  */
 223 enum e1000_mac_type {
 224         e1000_undefined = 0,
 225         e1000_82542,
 226         e1000_82543,
 227         e1000_82544,
 228         e1000_82540,
 229         e1000_82545,
 230         e1000_82545_rev_3,
 231         e1000_82546,
 232         e1000_82546_rev_3,
 233         e1000_82541,
 234         e1000_82541_rev_2,
 235         e1000_82547,
 236         e1000_82547_rev_2,
 237         e1000_82571,
 238         e1000_82572,
 239         e1000_82573,
 240         e1000_82574,
 241         e1000_82583,
 242         e1000_80003es2lan,
 243         /*
 244          * The following MACs all share the ich8 style of hardware and are
 245          * implemented in ich8, though some are a little more different than
 246          * others. The pch_lpt, pch_spt, and pch_cnp family are a bit more
 247          * different than the others and just have slight variants in behavior
 248          * between them. They are ordered based on release.
 249          */
 250         e1000_ich8lan,
 251         e1000_ich9lan,
 252         e1000_ich10lan,
 253         e1000_pchlan,
 254         e1000_pch2lan,
 255         e1000_pch_lpt,
 256         e1000_pch_spt,
 257         e1000_pch_cnp,
 258         /*
 259          * After this point all MACs are used by the igb(7D) driver as opposed
 260          * to e1000g(7D). If a new MAC is specific to e1000g series of devices,
 261          * then it should be added above this.
 262          */
 263         e1000_82575,
 264         e1000_82576,
 265         e1000_82580,
 266         e1000_i350,
 267         e1000_i354,
 268         e1000_i210,
 269         e1000_i211,
 270         e1000_vfadapt,
 271         e1000_vfadapt_i350,
 272         e1000_num_macs  /* List is 1-based, so subtract 1 for TRUE count. */
 273 };
 274 
 275 enum e1000_media_type {
 276         e1000_media_type_unknown = 0,
 277         e1000_media_type_copper = 1,
 278         e1000_media_type_fiber = 2,
 279         e1000_media_type_internal_serdes = 3,
 280         e1000_num_media_types
 281 };
 282 
 
 |