diff options
Diffstat (limited to 'drivers/net/e1000e/82571.c')
-rw-r--r-- | drivers/net/e1000e/82571.c | 22 |
1 files changed, 12 insertions, 10 deletions
diff --git a/drivers/net/e1000e/82571.c b/drivers/net/e1000e/82571.c index 89a69035e53..8295f219243 100644 --- a/drivers/net/e1000e/82571.c +++ b/drivers/net/e1000e/82571.c | |||
@@ -300,6 +300,7 @@ static s32 e1000_init_mac_params_82571(struct e1000_adapter *adapter) | |||
300 | func->set_lan_id = e1000_set_lan_id_single_port; | 300 | func->set_lan_id = e1000_set_lan_id_single_port; |
301 | func->check_mng_mode = e1000e_check_mng_mode_generic; | 301 | func->check_mng_mode = e1000e_check_mng_mode_generic; |
302 | func->led_on = e1000e_led_on_generic; | 302 | func->led_on = e1000e_led_on_generic; |
303 | func->blink_led = e1000e_blink_led_generic; | ||
303 | 304 | ||
304 | /* FWSM register */ | 305 | /* FWSM register */ |
305 | mac->has_fwsm = true; | 306 | mac->has_fwsm = true; |
@@ -320,6 +321,7 @@ static s32 e1000_init_mac_params_82571(struct e1000_adapter *adapter) | |||
320 | default: | 321 | default: |
321 | func->check_mng_mode = e1000e_check_mng_mode_generic; | 322 | func->check_mng_mode = e1000e_check_mng_mode_generic; |
322 | func->led_on = e1000e_led_on_generic; | 323 | func->led_on = e1000e_led_on_generic; |
324 | func->blink_led = e1000e_blink_led_generic; | ||
323 | 325 | ||
324 | /* FWSM register */ | 326 | /* FWSM register */ |
325 | mac->has_fwsm = true; | 327 | mac->has_fwsm = true; |
@@ -431,9 +433,6 @@ static s32 e1000_get_variants_82571(struct e1000_adapter *adapter) | |||
431 | case e1000_82573: | 433 | case e1000_82573: |
432 | case e1000_82574: | 434 | case e1000_82574: |
433 | case e1000_82583: | 435 | case e1000_82583: |
434 | /* Disable ASPM L0s due to hardware errata */ | ||
435 | e1000e_disable_aspm(adapter->pdev, PCIE_LINK_STATE_L0S); | ||
436 | |||
437 | if (pdev->device == E1000_DEV_ID_82573L) { | 436 | if (pdev->device == E1000_DEV_ID_82573L) { |
438 | adapter->flags |= FLAG_HAS_JUMBO_FRAMES; | 437 | adapter->flags |= FLAG_HAS_JUMBO_FRAMES; |
439 | adapter->max_hw_frame_size = DEFAULT_JUMBO; | 438 | adapter->max_hw_frame_size = DEFAULT_JUMBO; |
@@ -594,7 +593,7 @@ static s32 e1000_get_hw_semaphore_82573(struct e1000_hw *hw) | |||
594 | 593 | ||
595 | extcnf_ctrl |= E1000_EXTCNF_CTRL_MDIO_SW_OWNERSHIP; | 594 | extcnf_ctrl |= E1000_EXTCNF_CTRL_MDIO_SW_OWNERSHIP; |
596 | 595 | ||
597 | msleep(2); | 596 | usleep_range(2000, 4000); |
598 | i++; | 597 | i++; |
599 | } while (i < MDIO_OWNERSHIP_TIMEOUT); | 598 | } while (i < MDIO_OWNERSHIP_TIMEOUT); |
600 | 599 | ||
@@ -816,7 +815,7 @@ static s32 e1000_update_nvm_checksum_82571(struct e1000_hw *hw) | |||
816 | 815 | ||
817 | /* Check for pending operations. */ | 816 | /* Check for pending operations. */ |
818 | for (i = 0; i < E1000_FLASH_UPDATES; i++) { | 817 | for (i = 0; i < E1000_FLASH_UPDATES; i++) { |
819 | msleep(1); | 818 | usleep_range(1000, 2000); |
820 | if ((er32(EECD) & E1000_EECD_FLUPD) == 0) | 819 | if ((er32(EECD) & E1000_EECD_FLUPD) == 0) |
821 | break; | 820 | break; |
822 | } | 821 | } |
@@ -840,7 +839,7 @@ static s32 e1000_update_nvm_checksum_82571(struct e1000_hw *hw) | |||
840 | ew32(EECD, eecd); | 839 | ew32(EECD, eecd); |
841 | 840 | ||
842 | for (i = 0; i < E1000_FLASH_UPDATES; i++) { | 841 | for (i = 0; i < E1000_FLASH_UPDATES; i++) { |
843 | msleep(1); | 842 | usleep_range(1000, 2000); |
844 | if ((er32(EECD) & E1000_EECD_FLUPD) == 0) | 843 | if ((er32(EECD) & E1000_EECD_FLUPD) == 0) |
845 | break; | 844 | break; |
846 | } | 845 | } |
@@ -930,7 +929,7 @@ static s32 e1000_get_cfg_done_82571(struct e1000_hw *hw) | |||
930 | if (er32(EEMNGCTL) & | 929 | if (er32(EEMNGCTL) & |
931 | E1000_NVM_CFG_DONE_PORT_0) | 930 | E1000_NVM_CFG_DONE_PORT_0) |
932 | break; | 931 | break; |
933 | msleep(1); | 932 | usleep_range(1000, 2000); |
934 | timeout--; | 933 | timeout--; |
935 | } | 934 | } |
936 | if (!timeout) { | 935 | if (!timeout) { |
@@ -1037,7 +1036,7 @@ static s32 e1000_reset_hw_82571(struct e1000_hw *hw) | |||
1037 | ew32(TCTL, E1000_TCTL_PSP); | 1036 | ew32(TCTL, E1000_TCTL_PSP); |
1038 | e1e_flush(); | 1037 | e1e_flush(); |
1039 | 1038 | ||
1040 | msleep(10); | 1039 | usleep_range(10000, 20000); |
1041 | 1040 | ||
1042 | /* | 1041 | /* |
1043 | * Must acquire the MDIO ownership before MAC reset. | 1042 | * Must acquire the MDIO ownership before MAC reset. |
@@ -2066,7 +2065,8 @@ struct e1000_info e1000_82573_info = { | |||
2066 | | FLAG_HAS_SMART_POWER_DOWN | 2065 | | FLAG_HAS_SMART_POWER_DOWN |
2067 | | FLAG_HAS_AMT | 2066 | | FLAG_HAS_AMT |
2068 | | FLAG_HAS_SWSM_ON_LOAD, | 2067 | | FLAG_HAS_SWSM_ON_LOAD, |
2069 | .flags2 = FLAG2_DISABLE_ASPM_L1, | 2068 | .flags2 = FLAG2_DISABLE_ASPM_L1 |
2069 | | FLAG2_DISABLE_ASPM_L0S, | ||
2070 | .pba = 20, | 2070 | .pba = 20, |
2071 | .max_hw_frame_size = ETH_FRAME_LEN + ETH_FCS_LEN, | 2071 | .max_hw_frame_size = ETH_FRAME_LEN + ETH_FCS_LEN, |
2072 | .get_variants = e1000_get_variants_82571, | 2072 | .get_variants = e1000_get_variants_82571, |
@@ -2086,7 +2086,8 @@ struct e1000_info e1000_82574_info = { | |||
2086 | | FLAG_HAS_SMART_POWER_DOWN | 2086 | | FLAG_HAS_SMART_POWER_DOWN |
2087 | | FLAG_HAS_AMT | 2087 | | FLAG_HAS_AMT |
2088 | | FLAG_HAS_CTRLEXT_ON_LOAD, | 2088 | | FLAG_HAS_CTRLEXT_ON_LOAD, |
2089 | .flags2 = FLAG2_CHECK_PHY_HANG, | 2089 | .flags2 = FLAG2_CHECK_PHY_HANG |
2090 | | FLAG2_DISABLE_ASPM_L0S, | ||
2090 | .pba = 32, | 2091 | .pba = 32, |
2091 | .max_hw_frame_size = DEFAULT_JUMBO, | 2092 | .max_hw_frame_size = DEFAULT_JUMBO, |
2092 | .get_variants = e1000_get_variants_82571, | 2093 | .get_variants = e1000_get_variants_82571, |
@@ -2104,6 +2105,7 @@ struct e1000_info e1000_82583_info = { | |||
2104 | | FLAG_HAS_SMART_POWER_DOWN | 2105 | | FLAG_HAS_SMART_POWER_DOWN |
2105 | | FLAG_HAS_AMT | 2106 | | FLAG_HAS_AMT |
2106 | | FLAG_HAS_CTRLEXT_ON_LOAD, | 2107 | | FLAG_HAS_CTRLEXT_ON_LOAD, |
2108 | .flags2 = FLAG2_DISABLE_ASPM_L0S, | ||
2107 | .pba = 32, | 2109 | .pba = 32, |
2108 | .max_hw_frame_size = ETH_FRAME_LEN + ETH_FCS_LEN, | 2110 | .max_hw_frame_size = ETH_FRAME_LEN + ETH_FCS_LEN, |
2109 | .get_variants = e1000_get_variants_82571, | 2111 | .get_variants = e1000_get_variants_82571, |