From: Bruce Allan Date: Fri, 16 Dec 2011 00:46:49 +0000 (+0000) Subject: e1000e: conditionally restart autoneg on 82577/8/9 when setting LPLU state X-Git-Tag: v2.6.39-400.9.0~423^2~19^2~11^2~354 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=e01140320da84fff76b63dc4c8d5801f3e9d2611;p=users%2Fjedix%2Flinux-maple.git e1000e: conditionally restart autoneg on 82577/8/9 when setting LPLU state When setting the Low Power Link Up (LPLU, a.k.a. reverse auto-negotiation) on 82577/8278/82579, do not restart auto-negotiation if reset of the Phy is blocked by the Manageability Engine. (cherry picked from commit 464c85e37e6b2d2ad4f3bea23a59408c5595db15) Signed-off-by: Bruce Allan Tested-by: Aaron Brown Signed-off-by: Jeff Kirsher Signed-off-by: Joe Jin --- diff --git a/drivers/net/e1000e/ich8lan.c b/drivers/net/e1000e/ich8lan.c index 8205b4fe45a6e..6e543eebb9413 100644 --- a/drivers/net/e1000e/ich8lan.c +++ b/drivers/net/e1000e/ich8lan.c @@ -1917,7 +1917,9 @@ static s32 e1000_set_lplu_state_pchlan(struct e1000_hw *hw, bool active) else oem_reg &= ~HV_OEM_BITS_LPLU; - oem_reg |= HV_OEM_BITS_RESTART_AN; + if (!e1000_check_reset_block(hw)) + oem_reg |= HV_OEM_BITS_RESTART_AN; + ret_val = e1e_wphy(hw, HV_OEM_BITS, oem_reg); out: