Hello.
Caglar Akyuz wrote:
[...]
Assuming that the DMA got stuck at some point leading up to the transmit
timeout, any ideas as to why a host error was not thrown? To help
debug, I'll post out a set of patches that dump out the MAC (and DMA)
registers on timeout. That should give us some visibility into the
problem.
I have posted a couple of additional patches for this on [1]. Would you
mind giving these a quick try? The register dumps should prove useful
in figuring this out.
Hi Cyril,
I'm having problems with suspend/resume with emac driver on dm6446. I thought
you might give an idea about the root cause of the problem.
After a successful suspend/resume, emac driver does not work as expected. When
I issue 'ifdown eth0 down' on my machine, dm6446 locks-up forever in
'cpdma_chan_stop' in this loop:
while (time_before(jiffies, timeout)) {
u32 cp = chan_read(chan, cp);
if ((cp & CPDMA_TEARDOWN_VALUE) == CPDMA_TEARDOWN_VALUE)
break;
cpu_relax();
}
'cp' is never being CPDMA_TEARDOWN_VALUE so loop never ends.
But it should exit the loop on time-out, no?
WBR, Sergei
_______________________________________________
Davinci-linux-open-source mailing list
[email protected]
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source