summaryrefslogtreecommitdiff
path: root/drivers/net
diff options
context:
space:
mode:
authorAlex Gonzalez <alex.gonzalez@digi.com>2011-04-05 15:23:31 -0500
committerAlex Gonzalez <alex.gonzalez@digi.com>2011-04-05 15:23:31 -0500
commit2f4bd72aa0ea7a7d85faa46ec76f798bdc97e869 (patch)
tree61c5a0a62e61278a05250a6ce88a5f6f14a612b5 /drivers/net
parent0395406bb91ec432c0a7b94e882bb3322fc1cadf (diff)
fec: Fix link up not detected
When the MAC polls the PHY after a link down, the MAC needs to be enabled in order for the PHY to be accessible. What happened is that on link down the MAC got reset and was never re-enabled, hence timing out on PHY access. Signed-off-by: Alex Gonzalez <alex.gonzalez@digi.com>
Diffstat (limited to 'drivers/net')
-rw-r--r--drivers/net/fec.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/net/fec.c b/drivers/net/fec.c
index 0aaf1664e9eb..cfee24ded468 100644
--- a/drivers/net/fec.c
+++ b/drivers/net/fec.c
@@ -1422,6 +1422,10 @@ fec_stop(struct net_device *dev)
udelay(10);
#ifdef CONFIG_ARCH_MXS
+ // Polling the PHY needs the MAC enabled
+ // Otherwise can't poll for link up
+ writel( 0x2, fep->hwp + FEC_ECNTRL);
+
/* Check MII or RMII */
if (fep->phy_interface == PHY_INTERFACE_MODE_RMII)
writel(readl(fep->hwp + FEC_R_CNTRL) | 0x100,