davinci_emac/mdio: SOFT_RESET of EMAC module resets MDIO on AM1808

Rajashekhara, Sudhakar sudhakar.raj at ti.com
Mon Feb 27 23:46:08 CST 2012


Hi Christian,

On Mon, Feb 27, 2012 at 15:44:54, Rajashekhara, Sudhakar wrote:
> Hi Christian,
> 
> On Fri, Feb 24, 2012 at 19:45:23, Christian Riesch wrote:
> > Hello Sudhakar,
> > 
> > On Fri, Feb 24, 2012 at 2:02 PM, Rajashekhara, Sudhakar <sudhakar.raj at ti.com> wrote:
> > > On Thu, Feb 23, 2012 at 14:39:49, Christian Riesch wrote:
> > >> Hi,
> > >> I observed this behavior on a Texas Instruments AM1808 SoC (AM1808
> > >> experimenter's kit) running the current mainline kernel:
> > >>
> 
> [snip]
> 
> > >>
> > >> According to the AM1808 Technical Reference Manual (sections 18.2.14.1
> > >> and 18.3.3.34 in [1]), writing a 1 to the EMAC_SOFTRESET register
> > >> resets the EMAC module, but not the MDIO module. However, when I
> > >> comment out the code above, the MDIO control register is not affected
> > >> and the warning 'resetting idled controller' disappears.
> > >>
> > >
> > > But this was not the case for me. Even after commenting out the above lines,
> > > I could still see that MDIO was getting reset.
> > 
> > Uh, I am sorry. I forgot to mention that there is a second
> > emac_write(EMAC_SOFTRESET,1); in emac_dev_stop() in davinci_emac.c. 
> > This one must also be commented out to make the resetting idled controller 
> > message go away.
> > 
> > The patch below shows that changes that I did. May I please ask you to try
> > again with these changes?
> > 
> 
> I was able to reproduce the issue. I'll debug this further and get back to you.
> 

I was going through the mailing list discussions where a work around for emac
soft-reset tie-up to mdio controller has been proposed. I think this was a known
issue on TI's da8xx family of devices. Please refer to the thread at
http://www.spinics.net/lists/netdev/msg140465.html.

Cyril,
As you have mentioned in your patch, did you get any confirmation from TI designer
regarding emac soft reset behavior? I see that nothing has been mentioned in the
EMAC user guide.

Thanks,
Sudhakar



More information about the Davinci-linux-open-source mailing list