diff options
author | Alex Gonzalez <alex.gonzalez@digi.com> | 2011-04-05 15:23:31 -0500 |
---|---|---|
committer | Alex Gonzalez <alex.gonzalez@digi.com> | 2011-04-05 15:23:31 -0500 |
commit | 2f4bd72aa0ea7a7d85faa46ec76f798bdc97e869 (patch) | |
tree | 61c5a0a62e61278a05250a6ce88a5f6f14a612b5 /drivers/net | |
parent | 0395406bb91ec432c0a7b94e882bb3322fc1cadf (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.c | 4 |
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, |