]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
e1000e: conditionally restart autoneg on 82577/8/9 when setting LPLU state
authorBruce Allan <bruce.w.allan@intel.com>
Fri, 16 Dec 2011 00:46:49 +0000 (00:46 +0000)
committerJoe Jin <joe.jin@oracle.com>
Thu, 17 May 2012 07:08:57 +0000 (15:08 +0800)
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 <bruce.w.allan@intel.com>
Tested-by: Aaron Brown <aaron.f.brown@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Joe Jin <joe.jin@oracle.com>
drivers/net/e1000e/ich8lan.c

index 8205b4fe45a6eb506db973df47b85fdf90372cd0..6e543eebb94135130a7be0984e621a9fdcf74715 100644 (file)
@@ -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: