Go to the documentation of this file.
32 #include <linux/types.h>
64 #define E1000_EITR_82574(_n) (E1000_EITR_82574_BASE + (_n << 2))
77 #define E1000_POEMB E1000_PHY_CTRL
97 #define E1000_RDBAL(_n) (E1000_RDBAL_BASE + (_n << 8))
99 #define E1000_RDBAH(_n) (E1000_RDBAH_BASE + (_n << 8))
101 #define E1000_RDLEN(_n) (E1000_RDLEN_BASE + (_n << 8))
103 #define E1000_RDH(_n) (E1000_RDH_BASE + (_n << 8))
105 #define E1000_RDT(_n) (E1000_RDT_BASE + (_n << 8))
108 #define E1000_RXDCTL(_n) (E1000_RXDCTL_BASE + (_n << 8))
113 #define E1000_TDBAL(_n) (E1000_TDBAL_BASE + (_n << 8))
115 #define E1000_TDBAH(_n) (E1000_TDBAH_BASE + (_n << 8))
117 #define E1000_TDLEN(_n) (E1000_TDLEN_BASE + (_n << 8))
119 #define E1000_TDH(_n) (E1000_TDH_BASE + (_n << 8))
121 #define E1000_TDT(_n) (E1000_TDT_BASE + (_n << 8))
124 #define E1000_TXDCTL(_n) (E1000_TXDCTL_BASE + (_n << 8))
127 #define E1000_TARC(_n) (E1000_TARC_BASE + (_n << 8))
199 #define E1000_RAL(_n) (E1000_RAL_BASE + ((_n) * 8))
200 #define E1000_RA (E1000_RAL(0))
202 #define E1000_RAH(_n) (E1000_RAH_BASE + ((_n) * 8))
204 #define E1000_SHRAL_PCH_LPT(_n) (E1000_SHRAL_PCH_LPT_BASE + ((_n) * 8))
206 #define E1000_SHRAH_PCH_LPT(_n) (E1000_SHRAH_PCH_LTP_BASE + ((_n) * 8))
208 #define E1000_SHRAL(_n) (E1000_SHRAL_BASE + ((_n) * 8))
210 #define E1000_SHRAH(_n) (E1000_SHRAH_BASE + ((_n) * 8))
223 #define E1000_MDEF(_n) (E1000_MDEF_BASE + ((_n) * 4))
232 #define E1000_RETA(_n) (E1000_RETA_BASE + ((_n) * 4))
234 #define E1000_RSSRK(_n) (E1000_RSSRK_BASE + ((_n) * 4))
237 #define E1000_PCH_RAICC(_n) (E1000_PCH_RAICC_BASE + ((_n) * 4))
238 #define E1000_CRC_OFFSET E1000_PCH_RAICC_BASE
242 #define E1000_MAX_PHY_ADDR 4
245 #define IGP01E1000_PHY_PORT_CONFIG 0x10
246 #define IGP01E1000_PHY_PORT_STATUS 0x11
247 #define IGP01E1000_PHY_PORT_CTRL 0x12
248 #define IGP01E1000_PHY_LINK_HEALTH 0x13
249 #define IGP02E1000_PHY_POWER_MGMT 0x19
250 #define IGP01E1000_PHY_PAGE_SELECT 0x1F
251 #define BM_PHY_PAGE_SELECT 22
252 #define IGP_PAGE_SHIFT 5
253 #define PHY_REG_MASK 0x1F
255 #define BM_WUC_PAGE 800
256 #define BM_WUC_ADDRESS_OPCODE 0x11
257 #define BM_WUC_DATA_OPCODE 0x12
258 #define BM_WUC_ENABLE_PAGE 769
259 #define BM_WUC_ENABLE_REG 17
260 #define BM_WUC_ENABLE_BIT (1 << 2)
261 #define BM_WUC_HOST_WU_BIT (1 << 4)
262 #define BM_WUC_ME_WU_BIT (1 << 5)
264 #define BM_WUC PHY_REG(BM_WUC_PAGE, 1)
265 #define BM_WUFC PHY_REG(BM_WUC_PAGE, 2)
266 #define BM_WUS PHY_REG(BM_WUC_PAGE, 3)
268 #define IGP01E1000_PHY_PCS_INIT_REG 0x00B4
269 #define IGP01E1000_PHY_POLARITY_MASK 0x0078
271 #define IGP01E1000_PSCR_AUTO_MDIX 0x1000
272 #define IGP01E1000_PSCR_FORCE_MDI_MDIX 0x2000
274 #define IGP01E1000_PSCFR_SMART_SPEED 0x0080
276 #define IGP02E1000_PM_SPD 0x0001
277 #define IGP02E1000_PM_D0_LPLU 0x0002
278 #define IGP02E1000_PM_D3_LPLU 0x0004
280 #define IGP01E1000_PLHR_SS_DOWNGRADE 0x8000
282 #define IGP01E1000_PSSR_POLARITY_REVERSED 0x0002
283 #define IGP01E1000_PSSR_MDIX 0x0800
284 #define IGP01E1000_PSSR_SPEED_MASK 0xC000
285 #define IGP01E1000_PSSR_SPEED_1000MBPS 0xC000
287 #define IGP02E1000_PHY_CHANNEL_NUM 4
288 #define IGP02E1000_PHY_AGC_A 0x11B1
289 #define IGP02E1000_PHY_AGC_B 0x12B1
290 #define IGP02E1000_PHY_AGC_C 0x14B1
291 #define IGP02E1000_PHY_AGC_D 0x18B1
293 #define IGP02E1000_AGC_LENGTH_SHIFT 9
294 #define IGP02E1000_AGC_LENGTH_MASK 0x7F
295 #define IGP02E1000_AGC_RANGE 15
298 #define E1000_VFTA_ENTRY_SHIFT 5
299 #define E1000_VFTA_ENTRY_MASK 0x7F
300 #define E1000_VFTA_ENTRY_BIT_SHIFT_MASK 0x1F
302 #define E1000_HICR_EN 0x01
304 #define E1000_HICR_C 0x02
305 #define E1000_HICR_FW_RESET_ENABLE 0x40
306 #define E1000_HICR_FW_RESET 0x80
308 #define E1000_FWSM_MODE_MASK 0xE
309 #define E1000_FWSM_MODE_SHIFT 1
311 #define E1000_MNG_IAMT_MODE 0x3
312 #define E1000_MNG_DHCP_COOKIE_LENGTH 0x10
313 #define E1000_MNG_DHCP_COOKIE_OFFSET 0x6F0
314 #define E1000_MNG_DHCP_COMMAND_TIMEOUT 10
315 #define E1000_MNG_DHCP_TX_PAYLOAD_CMD 64
316 #define E1000_MNG_DHCP_COOKIE_STATUS_PARSING 0x1
317 #define E1000_MNG_DHCP_COOKIE_STATUS_VLAN 0x2
320 #define E1000_STM_OPCODE 0xDB00
322 #define E1000_KMRNCTRLSTA_OFFSET 0x001F0000
323 #define E1000_KMRNCTRLSTA_OFFSET_SHIFT 16
324 #define E1000_KMRNCTRLSTA_REN 0x00200000
325 #define E1000_KMRNCTRLSTA_CTRL_OFFSET 0x1
326 #define E1000_KMRNCTRLSTA_DIAG_OFFSET 0x3
327 #define E1000_KMRNCTRLSTA_TIMEOUTS 0x4
328 #define E1000_KMRNCTRLSTA_INBAND_PARAM 0x9
329 #define E1000_KMRNCTRLSTA_IBIST_DISABLE 0x0200
330 #define E1000_KMRNCTRLSTA_DIAG_NELPBK 0x1000
331 #define E1000_KMRNCTRLSTA_K1_CONFIG 0x7
332 #define E1000_KMRNCTRLSTA_K1_ENABLE 0x0002
333 #define E1000_KMRNCTRLSTA_HD_CTRL 0x10
335 #define IFE_PHY_EXTENDED_STATUS_CONTROL 0x10
336 #define IFE_PHY_SPECIAL_CONTROL 0x11
337 #define IFE_PHY_SPECIAL_CONTROL_LED 0x1B
338 #define IFE_PHY_MDIX_CONTROL 0x1C
341 #define IFE_PESC_POLARITY_REVERSED 0x0100
344 #define IFE_PSC_AUTO_POLARITY_DISABLE 0x0010
345 #define IFE_PSC_FORCE_POLARITY 0x0020
348 #define IFE_PSCL_PROBE_MODE 0x0020
349 #define IFE_PSCL_PROBE_LEDS_OFF 0x0006
350 #define IFE_PSCL_PROBE_LEDS_ON 0x0007
353 #define IFE_PMC_MDIX_STATUS 0x0020
354 #define IFE_PMC_FORCE_MDIX 0x0040
355 #define IFE_PMC_AUTO_MDIX 0x0080
357 #define E1000_CABLE_LENGTH_UNDEFINED 0xFF
359 #define E1000_DEV_ID_82571EB_COPPER 0x105E
360 #define E1000_DEV_ID_82571EB_FIBER 0x105F
361 #define E1000_DEV_ID_82571EB_SERDES 0x1060
362 #define E1000_DEV_ID_82571EB_QUAD_COPPER 0x10A4
363 #define E1000_DEV_ID_82571PT_QUAD_COPPER 0x10D5
364 #define E1000_DEV_ID_82571EB_QUAD_FIBER 0x10A5
365 #define E1000_DEV_ID_82571EB_QUAD_COPPER_LP 0x10BC
366 #define E1000_DEV_ID_82571EB_SERDES_DUAL 0x10D9
367 #define E1000_DEV_ID_82571EB_SERDES_QUAD 0x10DA
368 #define E1000_DEV_ID_82572EI_COPPER 0x107D
369 #define E1000_DEV_ID_82572EI_FIBER 0x107E
370 #define E1000_DEV_ID_82572EI_SERDES 0x107F
371 #define E1000_DEV_ID_82572EI 0x10B9
372 #define E1000_DEV_ID_82573E 0x108B
373 #define E1000_DEV_ID_82573E_IAMT 0x108C
374 #define E1000_DEV_ID_82573L 0x109A
375 #define E1000_DEV_ID_82574L 0x10D3
376 #define E1000_DEV_ID_82574LA 0x10F6
377 #define E1000_DEV_ID_82583V 0x150C
379 #define E1000_DEV_ID_80003ES2LAN_COPPER_DPT 0x1096
380 #define E1000_DEV_ID_80003ES2LAN_SERDES_DPT 0x1098
381 #define E1000_DEV_ID_80003ES2LAN_COPPER_SPT 0x10BA
382 #define E1000_DEV_ID_80003ES2LAN_SERDES_SPT 0x10BB
384 #define E1000_DEV_ID_ICH8_82567V_3 0x1501
385 #define E1000_DEV_ID_ICH8_IGP_M_AMT 0x1049
386 #define E1000_DEV_ID_ICH8_IGP_AMT 0x104A
387 #define E1000_DEV_ID_ICH8_IGP_C 0x104B
388 #define E1000_DEV_ID_ICH8_IFE 0x104C
389 #define E1000_DEV_ID_ICH8_IFE_GT 0x10C4
390 #define E1000_DEV_ID_ICH8_IFE_G 0x10C5
391 #define E1000_DEV_ID_ICH8_IGP_M 0x104D
392 #define E1000_DEV_ID_ICH9_IGP_AMT 0x10BD
393 #define E1000_DEV_ID_ICH9_BM 0x10E5
394 #define E1000_DEV_ID_ICH9_IGP_M_AMT 0x10F5
395 #define E1000_DEV_ID_ICH9_IGP_M 0x10BF
396 #define E1000_DEV_ID_ICH9_IGP_M_V 0x10CB
397 #define E1000_DEV_ID_ICH9_IGP_C 0x294C
398 #define E1000_DEV_ID_ICH9_IFE 0x10C0
399 #define E1000_DEV_ID_ICH9_IFE_GT 0x10C3
400 #define E1000_DEV_ID_ICH9_IFE_G 0x10C2
401 #define E1000_DEV_ID_ICH10_R_BM_LM 0x10CC
402 #define E1000_DEV_ID_ICH10_R_BM_LF 0x10CD
403 #define E1000_DEV_ID_ICH10_R_BM_V 0x10CE
404 #define E1000_DEV_ID_ICH10_D_BM_LM 0x10DE
405 #define E1000_DEV_ID_ICH10_D_BM_LF 0x10DF
406 #define E1000_DEV_ID_ICH10_D_BM_V 0x1525
407 #define E1000_DEV_ID_PCH_M_HV_LM 0x10EA
408 #define E1000_DEV_ID_PCH_M_HV_LC 0x10EB
409 #define E1000_DEV_ID_PCH_D_HV_DM 0x10EF
410 #define E1000_DEV_ID_PCH_D_HV_DC 0x10F0
411 #define E1000_DEV_ID_PCH2_LV_LM 0x1502
412 #define E1000_DEV_ID_PCH2_LV_V 0x1503
413 #define E1000_DEV_ID_PCH_LPT_I217_LM 0x153A
414 #define E1000_DEV_ID_PCH_LPT_I217_V 0x153B
415 #define E1000_DEV_ID_PCH_LPTLP_I218_LM 0x155A
416 #define E1000_DEV_ID_PCH_LPTLP_I218_V 0x1559
418 #define E1000_REVISION_4 4
420 #define E1000_FUNC_1 1
422 #define E1000_ALT_MAC_ADDRESS_OFFSET_LAN0 0
423 #define E1000_ALT_MAC_ADDRESS_OFFSET_LAN1 3
563 #define MAX_PS_BUFFERS 4
756 #define E1000_HI_MAX_DATA_LENGTH 252
771 #define E1000_HI_MAX_MNG_DATA_LENGTH 0x6F8
878 #define MAX_MTA_REG 128
977 #define E1000_ICH8_SHADOW_RAM_WORDS 2048