diff options
Diffstat (limited to 'drivers/net/e1000e/hw.h')
-rw-r--r-- | drivers/net/e1000e/hw.h | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/drivers/net/e1000e/hw.h b/drivers/net/e1000e/hw.h index 6cdb703be951..163c1c0cfee7 100644 --- a/drivers/net/e1000e/hw.h +++ b/drivers/net/e1000e/hw.h | |||
@@ -193,7 +193,11 @@ enum e1e_registers { | |||
193 | E1000_RXCSUM = 0x05000, /* Rx Checksum Control - RW */ | 193 | E1000_RXCSUM = 0x05000, /* Rx Checksum Control - RW */ |
194 | E1000_RFCTL = 0x05008, /* Receive Filter Control */ | 194 | E1000_RFCTL = 0x05008, /* Receive Filter Control */ |
195 | E1000_MTA = 0x05200, /* Multicast Table Array - RW Array */ | 195 | E1000_MTA = 0x05200, /* Multicast Table Array - RW Array */ |
196 | E1000_RA = 0x05400, /* Receive Address - RW Array */ | 196 | E1000_RAL_BASE = 0x05400, /* Receive Address Low - RW */ |
197 | #define E1000_RAL(_n) (E1000_RAL_BASE + ((_n) * 8)) | ||
198 | #define E1000_RA (E1000_RAL(0)) | ||
199 | E1000_RAH_BASE = 0x05404, /* Receive Address High - RW */ | ||
200 | #define E1000_RAH(_n) (E1000_RAH_BASE + ((_n) * 8)) | ||
197 | E1000_VFTA = 0x05600, /* VLAN Filter Table Array - RW Array */ | 201 | E1000_VFTA = 0x05600, /* VLAN Filter Table Array - RW Array */ |
198 | E1000_WUC = 0x05800, /* Wakeup Control - RW */ | 202 | E1000_WUC = 0x05800, /* Wakeup Control - RW */ |
199 | E1000_WUFC = 0x05808, /* Wakeup Filter Control - RW */ | 203 | E1000_WUFC = 0x05808, /* Wakeup Filter Control - RW */ |
@@ -210,6 +214,7 @@ enum e1e_registers { | |||
210 | E1000_FACTPS = 0x05B30, /* Function Active and Power State to MNG */ | 214 | E1000_FACTPS = 0x05B30, /* Function Active and Power State to MNG */ |
211 | E1000_SWSM = 0x05B50, /* SW Semaphore */ | 215 | E1000_SWSM = 0x05B50, /* SW Semaphore */ |
212 | E1000_FWSM = 0x05B54, /* FW Semaphore */ | 216 | E1000_FWSM = 0x05B54, /* FW Semaphore */ |
217 | E1000_SWSM2 = 0x05B58, /* Driver-only SW semaphore */ | ||
213 | E1000_HICR = 0x08F00, /* Host Interface Control */ | 218 | E1000_HICR = 0x08F00, /* Host Interface Control */ |
214 | }; | 219 | }; |
215 | 220 | ||
@@ -368,6 +373,10 @@ enum e1e_registers { | |||
368 | #define E1000_DEV_ID_ICH10_R_BM_V 0x10CE | 373 | #define E1000_DEV_ID_ICH10_R_BM_V 0x10CE |
369 | #define E1000_DEV_ID_ICH10_D_BM_LM 0x10DE | 374 | #define E1000_DEV_ID_ICH10_D_BM_LM 0x10DE |
370 | #define E1000_DEV_ID_ICH10_D_BM_LF 0x10DF | 375 | #define E1000_DEV_ID_ICH10_D_BM_LF 0x10DF |
376 | #define E1000_DEV_ID_PCH_M_HV_LM 0x10EA | ||
377 | #define E1000_DEV_ID_PCH_M_HV_LC 0x10EB | ||
378 | #define E1000_DEV_ID_PCH_D_HV_DM 0x10EF | ||
379 | #define E1000_DEV_ID_PCH_D_HV_DC 0x10F0 | ||
371 | 380 | ||
372 | #define E1000_REVISION_4 4 | 381 | #define E1000_REVISION_4 4 |
373 | 382 | ||
@@ -383,6 +392,7 @@ enum e1000_mac_type { | |||
383 | e1000_ich8lan, | 392 | e1000_ich8lan, |
384 | e1000_ich9lan, | 393 | e1000_ich9lan, |
385 | e1000_ich10lan, | 394 | e1000_ich10lan, |
395 | e1000_pchlan, | ||
386 | }; | 396 | }; |
387 | 397 | ||
388 | enum e1000_media_type { | 398 | enum e1000_media_type { |
@@ -417,6 +427,8 @@ enum e1000_phy_type { | |||
417 | e1000_phy_igp_3, | 427 | e1000_phy_igp_3, |
418 | e1000_phy_ife, | 428 | e1000_phy_ife, |
419 | e1000_phy_bm, | 429 | e1000_phy_bm, |
430 | e1000_phy_82578, | ||
431 | e1000_phy_82577, | ||
420 | }; | 432 | }; |
421 | 433 | ||
422 | enum e1000_bus_width { | 434 | enum e1000_bus_width { |
@@ -720,6 +732,7 @@ struct e1000_host_mng_command_info { | |||
720 | 732 | ||
721 | /* Function pointers and static data for the MAC. */ | 733 | /* Function pointers and static data for the MAC. */ |
722 | struct e1000_mac_operations { | 734 | struct e1000_mac_operations { |
735 | s32 (*id_led_init)(struct e1000_hw *); | ||
723 | bool (*check_mng_mode)(struct e1000_hw *); | 736 | bool (*check_mng_mode)(struct e1000_hw *); |
724 | s32 (*check_for_link)(struct e1000_hw *); | 737 | s32 (*check_for_link)(struct e1000_hw *); |
725 | s32 (*cleanup_led)(struct e1000_hw *); | 738 | s32 (*cleanup_led)(struct e1000_hw *); |
@@ -733,11 +746,13 @@ struct e1000_mac_operations { | |||
733 | s32 (*init_hw)(struct e1000_hw *); | 746 | s32 (*init_hw)(struct e1000_hw *); |
734 | s32 (*setup_link)(struct e1000_hw *); | 747 | s32 (*setup_link)(struct e1000_hw *); |
735 | s32 (*setup_physical_interface)(struct e1000_hw *); | 748 | s32 (*setup_physical_interface)(struct e1000_hw *); |
749 | s32 (*setup_led)(struct e1000_hw *); | ||
736 | }; | 750 | }; |
737 | 751 | ||
738 | /* Function pointers for the PHY. */ | 752 | /* Function pointers for the PHY. */ |
739 | struct e1000_phy_operations { | 753 | struct e1000_phy_operations { |
740 | s32 (*acquire_phy)(struct e1000_hw *); | 754 | s32 (*acquire_phy)(struct e1000_hw *); |
755 | s32 (*check_polarity)(struct e1000_hw *); | ||
741 | s32 (*check_reset_block)(struct e1000_hw *); | 756 | s32 (*check_reset_block)(struct e1000_hw *); |
742 | s32 (*commit_phy)(struct e1000_hw *); | 757 | s32 (*commit_phy)(struct e1000_hw *); |
743 | s32 (*force_speed_duplex)(struct e1000_hw *); | 758 | s32 (*force_speed_duplex)(struct e1000_hw *); |
@@ -869,6 +884,7 @@ struct e1000_fc_info { | |||
869 | struct e1000_dev_spec_82571 { | 884 | struct e1000_dev_spec_82571 { |
870 | bool laa_is_present; | 885 | bool laa_is_present; |
871 | bool alt_mac_addr_is_present; | 886 | bool alt_mac_addr_is_present; |
887 | u32 smb_counter; | ||
872 | }; | 888 | }; |
873 | 889 | ||
874 | struct e1000_shadow_ram { | 890 | struct e1000_shadow_ram { |