summaryrefslogtreecommitdiff
path: root/common/cmd_net.c
diff options
context:
space:
mode:
authorWolfgang Denk <wd@denx.de>2007-08-06 00:55:51 +0200
committerWolfgang Denk <wd@denx.de>2007-08-06 00:55:51 +0200
commit46919751eac7d5c210e6e71ad4bf2bae4805902e (patch)
tree5a6097aef0f398adb4e60047efb28c37b79bec50 /common/cmd_net.c
parent8092fef4c29b395958bb649647da7e3775731517 (diff)
parentc7e717ebc2b044d7a71062552c9dc0f54ea9b779 (diff)
downloadu-boot-imx-46919751eac7d5c210e6e71ad4bf2bae4805902e.zip
u-boot-imx-46919751eac7d5c210e6e71ad4bf2bae4805902e.tar.gz
u-boot-imx-46919751eac7d5c210e6e71ad4bf2bae4805902e.tar.bz2
Merge with /home/wd/git/u-boot/custodian/u-boot-mpc85xx
Diffstat (limited to 'common/cmd_net.c')
-rw-r--r--common/cmd_net.c26
1 files changed, 24 insertions, 2 deletions
diff --git a/common/cmd_net.c b/common/cmd_net.c
index 26efc6d..fa4f968 100644
--- a/common/cmd_net.c
+++ b/common/cmd_net.c
@@ -30,6 +30,13 @@
#if defined(CONFIG_CMD_NET)
+#ifdef CONFIG_SHOW_BOOT_PROGRESS
+# include <status_led.h>
+extern void show_boot_progress (int val);
+# define SHOW_BOOT_PROGRESS(arg) show_boot_progress (arg)
+#else
+# define SHOW_BOOT_PROGRESS(arg)
+#endif
extern int do_bootm (cmd_tbl_t *, int, int, char *[]);
@@ -186,18 +193,25 @@ netboot_common (proto_t proto, cmd_tbl_t *cmdtp, int argc, char *argv[])
break;
default: printf ("Usage:\n%s\n", cmdtp->usage);
+ SHOW_BOOT_PROGRESS(-80);
return 1;
}
- if ((size = NetLoop(proto)) < 0)
+ SHOW_BOOT_PROGRESS(80);
+ if ((size = NetLoop(proto)) < 0) {
+ SHOW_BOOT_PROGRESS(-81);
return 1;
+ }
+ SHOW_BOOT_PROGRESS(81);
/* NetLoop ok, update environment */
netboot_update_env();
/* done if no file was loaded (no errors though) */
- if (size == 0)
+ if (size == 0) {
+ SHOW_BOOT_PROGRESS(-82);
return 0;
+ }
/* flush cache */
flush_cache(load_addr, size);
@@ -210,15 +224,23 @@ netboot_common (proto_t proto, cmd_tbl_t *cmdtp, int argc, char *argv[])
printf ("Automatic boot of image at addr 0x%08lX ...\n",
load_addr);
+ SHOW_BOOT_PROGRESS(82);
rcode = do_bootm (cmdtp, 0, 1, local_args);
}
#ifdef CONFIG_AUTOSCRIPT
if (((s = getenv("autoscript")) != NULL) && (strcmp(s,"yes") == 0)) {
printf("Running autoscript at addr 0x%08lX ...\n", load_addr);
+ SHOW_BOOT_PROGRESS(83);
rcode = autoscript (load_addr);
}
#endif
+#if defined(CONFIG_SHOW_BOOT_PROGRESS)
+ if (rcode < 0)
+ SHOW_BOOT_PROGRESS(-83);
+ else
+ SHOW_BOOT_PROGRESS(84);
+#endif
return rcode;
}