[linux-yocto] [PATCH 32/89] drivers/net: Switch back to regular register mode after using PHY shadow registers.

Paul Butler butler.paul at gmail.com
Sun Oct 27 12:32:57 PDT 2013


From: John Jacques <john.jacques at lsi.com>

Signed-off-by: John Jacques <john.jacques at lsi.com>
---
 drivers/net/ethernet/lsi/lsi_acp_net.c | 17 +++++++++++------
 1 file changed, 11 insertions(+), 6 deletions(-)

diff --git a/drivers/net/ethernet/lsi/lsi_acp_net.c b/drivers/net/ethernet/lsi/lsi_acp_net.c
index 71b08b4..e6051b1 100644
--- a/drivers/net/ethernet/lsi/lsi_acp_net.c
+++ b/drivers/net/ethernet/lsi/lsi_acp_net.c
@@ -2118,15 +2118,20 @@ static int phy_enable_(struct net_device *device)
 	  int rc;
 
 	  rc = phy_read_(0x1e, PHY_BCM_TEST_REG, &value);
-        /* Access Shadow reg 0x1d */
-        value = value | 0x80;
+
+	  /* Access Shadow reg 0x1d */
+	  value = value | 0x80;
 	  rc |= phy_write_(0x1e, PHY_BCM_TEST_REG, value);
 
-        /* Set RX FIFO size to 0x7 */
+	  /* Set RX FIFO size to 0x7 */
 	  rc |= phy_write_(0x1e, PHY_AUXILIARY_MODE3, 0x7);
-		if (rc != 0) {
-			return rc;
-		}	 
+
+	  /* Back to normal registers. */
+	  value &= ~0x80;
+	  rc |= phy_write_(0x1e, PHY_BCM_TEST_REG, value);
+
+	  if (rc != 0)
+	    return rc;
 	}
 
 	return 0;
-- 
1.8.3.4




More information about the linux-yocto mailing list