]> git.sur5r.net Git - u-boot/blobdiff - net/nfs.c
imximage: Sort bootops alphabetically
[u-boot] / net / nfs.c
index c39f616d9ba98b7f0686bd8f4304d7d066090be5..b5b482c3f3cefce41f22e8e596194f4e21b469a3 100644 (file)
--- a/net/nfs.c
+++ b/net/nfs.c
@@ -29,8 +29,6 @@
 #include "nfs.h"
 #include "bootp.h"
 
-#if defined(CONFIG_CMD_NET) && defined(CONFIG_CMD_NFS)
-
 #define HASHES_PER_LINE 65     /* Number of "loading" hashes per line  */
 #define NFS_RETRY_COUNT 30
 #define NFS_TIMEOUT 2000UL
@@ -571,17 +569,18 @@ Interfaces of U-BOOT
 static void
 NfsTimeout (void)
 {
-       if ( NfsTimeoutCount++ < NFS_RETRY_COUNT ) {
+       if ( ++NfsTimeoutCount > NFS_RETRY_COUNT ) {
+               puts ("\nRetry count exceeded; starting again\n");
+               NetStartAgain ();
+       } else {
+               puts("T ");
+               NetSetTimeout (NFS_TIMEOUT, NfsTimeout);
                NfsSend ();
-               return;
        }
-       puts ("Timeout\n");
-       NetState = NETLOOP_FAIL;
-       return;
 }
 
 static void
-NfsHandler (uchar *pkt, unsigned dest, unsigned src, unsigned len)
+NfsHandler(uchar *pkt, unsigned dest, IPaddr_t sip, unsigned src, unsigned len)
 {
        int rlen;
 
@@ -689,7 +688,7 @@ NfsStart (void)
        }
 
        if (BootFile[0] == '\0') {
-               sprintf (default_filename, "/nfsroot/%02lX%02lX%02lX%02lX.img",
+               sprintf(default_filename, "/nfsroot/%02X%02X%02X%02X.img",
                        NetOurIP & 0xFF,
                        (NetOurIP >>  8) & 0xFF,
                        (NetOurIP >> 16) & 0xFF,
@@ -715,9 +714,7 @@ NfsStart (void)
        nfs_filename = basename (nfs_path);
        nfs_path     = dirname (nfs_path);
 
-#if defined(CONFIG_NET_MULTI)
        printf ("Using %s device\n", eth_get_name());
-#endif
 
        printf("File transfer via NFS from server %pI4"
                "; our IP address is %pI4", &NfsServerIP, &NetOurIP);
@@ -754,5 +751,3 @@ NfsStart (void)
 
        NfsSend ();
 }
-
-#endif