On Fri, 2008-02-22 at 09:32 +0100, Stefan Roese wrote: > 405EX(r) has SDR0_MFR[E0CS/E1CS] set after reset. This selects > the internal loopback mode. Clear these bits so that both EMACs > don't use loopback mode as default. > > Signed-off-by: Stefan Roese <[EMAIL PROTECTED]> > --- > I'm not sure if this should be done here in the board platform code, > or in the newemac driver or perhaps in some code common for 405EX. > > Any thoughts on this welcome.
This should be done in EMAC since we also need to force internal loopback & clocking when probing the PHY or we might not probe it properly (and fail reset) if there is no link. I need to work on that. Ben. > Thanks. > > arch/powerpc/platforms/40x/kilauea.c | 11 ++++++++++- > 1 files changed, 10 insertions(+), 1 deletions(-) > > diff --git a/arch/powerpc/platforms/40x/kilauea.c > b/arch/powerpc/platforms/40x/kilauea.c > index f9206a7..b5456cc 100644 > --- a/arch/powerpc/platforms/40x/kilauea.c > +++ b/arch/powerpc/platforms/40x/kilauea.c > @@ -1,7 +1,7 @@ > /* > * Kilauea board specific routines > * > - * Copyright 2007 DENX Software Engineering, Stefan Roese <[EMAIL PROTECTED]> > + * Copyright 2007-2008 DENX Software Engineering, Stefan Roese <[EMAIL > PROTECTED]> > * > * Based on the Walnut code by > * Josh Boyer <[EMAIL PROTECTED]> > @@ -20,6 +20,8 @@ > #include <asm/time.h> > #include <asm/uic.h> > #include <asm/pci-bridge.h> > +#include <asm/dcr.h> > +#include <asm/dcr-regs.h> > > static __initdata struct of_device_id kilauea_of_bus[] = { > { .compatible = "ibm,plb4", }, > @@ -45,6 +47,13 @@ static int __init kilauea_probe(void) > > ppc_pci_flags = PPC_PCI_REASSIGN_ALL_RSRC; > > + /* > + * 405EX(r) has SDR0_MFR[E0CS/E1CS] set after reset. This selects > + * the internal loopback mode. Clear these bits so that both EMACs > + * don't use loopback mode as deafult. > + */ > + mtdcri(SDR0, SDR0_MFR, mfdcri(SDR0, SDR0_MFR) & ~0x0c000000); > + > return 1; > } > _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-dev