From: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Date: Fri, 13 Jan 2006 00:50:46 +0000 (-0800)
Subject: [PATCH] e1000: Fix PHY reset when blocked
X-Git-Tag: firefly_0821_release~37609^2~110
X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=526f99572e9f18f42c8da2c9adafbe64482c0737;p=firefly-linux-kernel-4.4.55.git

[PATCH] e1000: Fix PHY reset when blocked

Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
---

diff --git a/drivers/net/e1000/e1000_hw.c b/drivers/net/e1000/e1000_hw.c
index 45fa386d212e..bb9d00e0dc14 100644
--- a/drivers/net/e1000/e1000_hw.c
+++ b/drivers/net/e1000/e1000_hw.c
@@ -838,6 +838,11 @@ e1000_setup_link(struct e1000_hw *hw)
 
     DEBUGFUNC("e1000_setup_link");
 
+    /* In the case of the phy reset being blocked, we already have a link.
+     * We do not have to set it up again. */
+    if (e1000_check_phy_reset_block(hw))
+        return E1000_SUCCESS;
+
     /* Read and store word 0x0F of the EEPROM. This word contains bits
      * that determine the hardware's default PAUSE (flow control) mode,
      * a bit that determines whether the HW defaults to enabling or