summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPavel Machek <pavel@denx.de>2015-08-18 14:34:26 +0200
committerJoe Hershberger <joe.hershberger@ni.com>2015-08-21 16:31:00 -0500
commit620776d734e4b126c407f636bda825a594a17723 (patch)
treed40d26d13edd7662891ff66808cc08344d52d6d3
parent8d77576371381ade83de475bb639949b44941e8c (diff)
downloadu-boot-imx-620776d734e4b126c407f636bda825a594a17723.zip
u-boot-imx-620776d734e4b126c407f636bda825a594a17723.tar.gz
u-boot-imx-620776d734e4b126c407f636bda825a594a17723.tar.bz2
tftp: adjust settings to be suitable for 100Mbit ethernet
Adjust timouts and retry counts to be suitable for loaded ethernet network. With 5 seconds timeout, 10 retries maximum, tftp is impossible even on local network with single full-speed TCP connection. 100msec timeout should be suitable for most networks tftp is used on, that is local ethernets. Timeout count really needs to be way higher, as lost packets are normal when TCP is running over the same network. Enforce 10msec minimum. Signed-off-by: Pavel Machek <pavel@denx.de> Acked-by: Joe Hershberger <joe.hershberger@ni.com>
-rw-r--r--net/tftp.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/net/tftp.c b/net/tftp.c
index 89be32a..18ce84c 100644
--- a/net/tftp.c
+++ b/net/tftp.c
@@ -19,10 +19,10 @@
/* Well known TFTP port # */
#define WELL_KNOWN_PORT 69
/* Millisecs to timeout for lost pkt */
-#define TIMEOUT 5000UL
+#define TIMEOUT 100UL
#ifndef CONFIG_NET_RETRY_COUNT
/* # of timeouts before giving up */
-# define TIMEOUT_COUNT 10
+# define TIMEOUT_COUNT 1000
#else
# define TIMEOUT_COUNT (CONFIG_NET_RETRY_COUNT * 2)
#endif
@@ -711,10 +711,10 @@ void tftp_start(enum proto_t protocol)
if (ep != NULL)
timeout_ms = simple_strtol(ep, NULL, 10);
- if (timeout_ms < 1000) {
- printf("TFTP timeout (%ld ms) too low, set min = 1000 ms\n",
+ if (timeout_ms < 10) {
+ printf("TFTP timeout (%ld ms) too low, set min = 10 ms\n",
timeout_ms);
- timeout_ms = 1000;
+ timeout_ms = 10;
}
debug("TFTP blocksize = %i, timeout = %ld ms\n",