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
|