Skip to contentSkip to conversation

tsec.c patch for receiver reset

PATCH New Dan Wilson 3 participants 3 messages Sep 28, 2007 – Oct 19, 2007

lore
Share & tools
lore

Dan Wilson

author
#0 lore raw

PATCH 1/1 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 <[email protected]> Signed-off by: Dan Wilson <[email protected]>
====================================================

drivers/tsec.c +1 -0
@@ -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);

}

#1 lore raw

PATCH 1/1 tsec.c patch for receiver reset

Quoted 15 lines · In message <[email protected]> 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 <[email protected]> Signed-off by: Dan Wilson <[email protected]>
====================================================

drivers/tsec.c line 808

Quoted 6 lines
drivers/tsec.c +1 -0
@@ -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

Signature · 5 lines
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
They say a little knowledge is a dangerous thing,  but it is not  one
half so bad as a lot of ignorance.   - Terry Pratchett, _Equal Rites_
#2 lore raw

PATCH 1/1 tsec.c patch for receiver reset

In reply to Dan Wilson
Quoted 8 lines · Dan Wilson

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