summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBruce Allan <bruce.w.allan@intel.com>2009-11-19 14:17:30 +0000
committerDavid S. Miller <davem@davemloft.net>2009-11-20 13:53:32 -0800
commit818f33313caab9be2a10458500dbed4a88c1b334 (patch)
tree3d4a9048e5743566fdcf6db34a417cefcb09da52
parent189983d469c6d98e64ddfb9f9ce76725cb082ee5 (diff)
downloadlinux-stable-818f33313caab9be2a10458500dbed4a88c1b334.tar.gz
linux-stable-818f33313caab9be2a10458500dbed4a88c1b334.tar.bz2
linux-stable-818f33313caab9be2a10458500dbed4a88c1b334.zip
e1000e: do not initiate autonegotiation during OEM configuration
When configuring the OEM bits in the PHY on 82577/82578, do not restart autonegotiation if the firmware is blocking it (e.g. when an IDE-R session is active) because the link must not go down. Signed-off-by: Bruce Allan <bruce.w.allan@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--drivers/net/e1000e/ich8lan.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/net/e1000e/ich8lan.c b/drivers/net/e1000e/ich8lan.c
index 92cf10333654..eff3f4783655 100644
--- a/drivers/net/e1000e/ich8lan.c
+++ b/drivers/net/e1000e/ich8lan.c
@@ -1118,7 +1118,8 @@ static s32 e1000_oem_bits_config_ich8lan(struct e1000_hw *hw, bool d0_state)
oem_reg |= HV_OEM_BITS_LPLU;
}
/* Restart auto-neg to activate the bits */
- oem_reg |= HV_OEM_BITS_RESTART_AN;
+ if (!e1000_check_reset_block(hw))
+ oem_reg |= HV_OEM_BITS_RESTART_AN;
ret_val = hw->phy.ops.write_phy_reg_locked(hw, HV_OEM_BITS, oem_reg);
out: