[U-Boot-Users] [PATCH] tsec.c patch for receiver reset

When we upgraded from u-boot 1.1.6 to 1.2.0, we found that ethernet no longer worked reliably on our 8541-based platforms, although for some reason 8548-based systems seemed to work fine. The problem was traced to a missing assignment in function startup_tsec. We have tried this patch on all of our 8541 and 8548-based boards, and it has resolved the problem for us.
Any comments or suggestions are greatly appreciated.
Signed-off by: Alain Gravel agravel@fulcrummicro.com Signed-off by: Dan Wilson dwilson@fulcrummicro.com ==================================================== --- u-boot.git/drivers/tsec.c +++ fulcrum/drivers/tsec.c @@ -803,6 +803,7 @@ /* Tell the DMA it is clear to go */ regs->dmactrl |= DMACTRL_INIT_SETTINGS; regs->tstat = TSTAT_CLEAR_THALT; + regs->rstat = RSTAT_CLEAR_RHALT; regs->dmactrl &= ~(DMACTRL_GRS | DMACTRL_GTS); }

In message 46FD38C1.3000205@fulcrummicro.com you wrote:
When we upgraded from u-boot 1.1.6 to 1.2.0, we found that ethernet no longer worked reliably on our 8541-based platforms, although for some reason 8548-based systems seemed to work fine. The problem was traced to a missing assignment in function startup_tsec. We have tried this patch on all of our 8541 and 8548-based boards, and it has resolved the problem for us.
Any comments or suggestions are greatly appreciated.
Signed-off by: Alain Gravel agravel@fulcrummicro.com Signed-off by: Dan Wilson dwilson@fulcrummicro.com ==================================================== --- u-boot.git/drivers/tsec.c +++ fulcrum/drivers/tsec.c @@ -803,6 +803,7 @@ /* Tell the DMA it is clear to go */ regs->dmactrl |= DMACTRL_INIT_SETTINGS; regs->tstat = TSTAT_CLEAR_THALT;
regs->rstat = RSTAT_CLEAR_RHALT; regs->dmactrl &= ~(DMACTRL_GRS | DMACTRL_GTS);
}
Please indent by TABs, not spaces...
Best regards,
Wolfgang Denk

On 9/28/07, Dan Wilson dwilson@fulcrummicro.com wrote:
When we upgraded from u-boot 1.1.6 to 1.2.0, we found that ethernet no longer worked reliably on our 8541-based platforms, although for some reason 8548-based systems seemed to work fine. The problem was traced to a missing assignment in function startup_tsec. We have tried this patch on all of our 8541 and 8548-based boards, and it has resolved the problem for us.
Any comments or suggestions are greatly appreciated.
I munged this patch into applicability and applied it, thanks!
Andy
participants (3)
-
Andy Fleming
-
Dan Wilson
-
Wolfgang Denk