[U-Boot-Users] [PATCH] net: make ARP timeout configurable
Guennadi Liakhovetski
lg at denx.de
Thu Apr 3 16:39:18 CEST 2008
On Thu, 3 Apr 2008, Ben Warren wrote:
> Hi Guennadi,
>
> Guennadi Liakhovetski wrote:
> > Currently the timeout waiting for an ARP reply is hard set to 5 seconds. On
> > i.MX31ADS due to a hardware "strangeness" up to four first IP packets to the
> > boards get lost, which typically are ARP replies. By configuring the timeout
> > to a lower value we significantly improve the first network transfer time on
> > this board. The timeout is specified in deciseconds, because it has to be
> > converted to hardware ticks, and CFG_HZ ranges from 900 to 27000000 on
> > different boards.
> >
> I like this, but let's stick to SI units please, probably ms. This isn't an
> important enough calculation to worry about precision, only overflow, so just
> make sure you handle order of operations properly and it should be fine. If
> I'm not thinking this through properly, which is entirely possible, make the
> code do a /100 to get into ds rather than asking the user to provide it. I'm
> concerned that people will say ***WTF is a decisecond!***
Ok, expect a new version shortly.
> > @@ -253,7 +258,7 @@ void ArpTimeoutCheck(void)
> > t = get_timer(0);
> > /* check for arp timeout */
> > - if ((t - NetArpWaitTimerStart) > ARP_TIMEOUT * CFG_HZ) {
> > + if ((t - NetArpWaitTimerStart) > ARP_TIMEOUT * CFG_HZ / 10) {
> > NetArpWaitTry++;
> > if (NetArpWaitTry >= ARP_TIMEOUT_COUNT) {
> > @@ -494,7 +499,7 @@ restart:
> > * Check the ethernet for a new packet. The ethernet
> > * receive routine will process it.
> > */
> > - eth_rx();
> > + eth_rx();
> >
> Not sure why you did this. Is it indented from the if() once applied?
It is not under an if - it is another hunk.
Thanks
Guennadi
---
Guennadi Liakhovetski, Ph.D.
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-0 Fax: +49-8142-66989-80 Email: office at denx.de
More information about the U-Boot
mailing list