igb: use correct bits to identify if managability is enabled

igb was previously checking the wrong bits in the MANC register to determine
if managability was enabled.  As a result it was incorrectly powering down and
resetting the phy when it didn't need to.

Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Alexander Duyck 2010-03-25 17:15:06 +00:00 committed by David S. Miller
parent c0e4d4bad4
commit e017b60316

View file

@ -1367,7 +1367,8 @@ out:
* igb_enable_mng_pass_thru - Enable processing of ARP's * igb_enable_mng_pass_thru - Enable processing of ARP's
* @hw: pointer to the HW structure * @hw: pointer to the HW structure
* *
* Verifies the hardware needs to allow ARPs to be processed by the host. * Verifies the hardware needs to leave interface enabled so that frames can
* be directed to and from the management interface.
**/ **/
bool igb_enable_mng_pass_thru(struct e1000_hw *hw) bool igb_enable_mng_pass_thru(struct e1000_hw *hw)
{ {
@ -1380,8 +1381,7 @@ bool igb_enable_mng_pass_thru(struct e1000_hw *hw)
manc = rd32(E1000_MANC); manc = rd32(E1000_MANC);
if (!(manc & E1000_MANC_RCV_TCO_EN) || if (!(manc & E1000_MANC_RCV_TCO_EN))
!(manc & E1000_MANC_EN_MAC_ADDR_FILTER))
goto out; goto out;
if (hw->mac.arc_subsystem_valid) { if (hw->mac.arc_subsystem_valid) {