[PATCH] gianfar: ensure ECNTRL[R100] is cleared on link state change
Kumar Gala
galak at kernel.crashing.org
Wed Jan 7 07:52:51 EST 2009
From: Leo Li <leo at rock.ap.freescale.net>
When changing the link between 100Mbps and 1Gbps in SGMII mode it was
found out that the link would stop working. The issue is that ECNTRL[R100]
needs to be cleared when in 1Gbps mode. Older reference manuals didn't
require the explicitly clearing but has since been found it that it is
needed.
Signed-off-by: Li Yang <leoli at freescale.com>
Signed-off-by: Kumar Gala <galak at kernel.crashing.org>
---
Dave,
Please apply for 2.6.29 as it addresses a "HW" bug in real systems.
thanks
- k
drivers/net/gianfar.c | 2 ++
1 files changed, 2 insertions(+), 0 deletions(-)
diff --git a/drivers/net/gianfar.c b/drivers/net/gianfar.c
index c672ecf..7fcc3af 100644
--- a/drivers/net/gianfar.c
+++ b/drivers/net/gianfar.c
@@ -1973,6 +1973,8 @@ static void adjust_link(struct net_device *dev)
case 1000:
tempval =
((tempval & ~(MACCFG2_IF)) | MACCFG2_GMII);
+
+ ecntrl &= ~(ECNTRL_R100);
break;
case 100:
case 10:
--
1.5.6.5
More information about the Linuxppc-dev
mailing list