diff options
author | Wolfgang Denk <wd@denx.de> | 2007-08-06 00:55:51 +0200 |
---|---|---|
committer | Wolfgang Denk <wd@denx.de> | 2007-08-06 00:55:51 +0200 |
commit | 46919751eac7d5c210e6e71ad4bf2bae4805902e (patch) | |
tree | 5a6097aef0f398adb4e60047efb28c37b79bec50 /common/cmd_net.c | |
parent | 8092fef4c29b395958bb649647da7e3775731517 (diff) | |
parent | c7e717ebc2b044d7a71062552c9dc0f54ea9b779 (diff) | |
download | u-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.c | 26 |
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; } |