diff options
| -rw-r--r-- | drivers/net/igb/e1000_82575.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/drivers/net/igb/e1000_82575.c b/drivers/net/igb/e1000_82575.c index f5e2e7235fcb..13ca73f96ec6 100644 --- a/drivers/net/igb/e1000_82575.c +++ b/drivers/net/igb/e1000_82575.c | |||
| @@ -699,11 +699,18 @@ static s32 igb_check_for_link_82575(struct e1000_hw *hw) | |||
| 699 | 699 | ||
| 700 | /* SGMII link check is done through the PCS register. */ | 700 | /* SGMII link check is done through the PCS register. */ |
| 701 | if ((hw->phy.media_type != e1000_media_type_copper) || | 701 | if ((hw->phy.media_type != e1000_media_type_copper) || |
| 702 | (igb_sgmii_active_82575(hw))) | 702 | (igb_sgmii_active_82575(hw))) { |
| 703 | ret_val = igb_get_pcs_speed_and_duplex_82575(hw, &speed, | 703 | ret_val = igb_get_pcs_speed_and_duplex_82575(hw, &speed, |
| 704 | &duplex); | 704 | &duplex); |
| 705 | else | 705 | /* |
| 706 | * Use this flag to determine if link needs to be checked or | ||
| 707 | * not. If we have link clear the flag so that we do not | ||
| 708 | * continue to check for link. | ||
| 709 | */ | ||
| 710 | hw->mac.get_link_status = !hw->mac.serdes_has_link; | ||
| 711 | } else { | ||
| 706 | ret_val = igb_check_for_copper_link(hw); | 712 | ret_val = igb_check_for_copper_link(hw); |
| 713 | } | ||
| 707 | 714 | ||
| 708 | return ret_val; | 715 | return ret_val; |
| 709 | } | 716 | } |
