summaryrefslogtreecommitdiff
path: root/common/cmd_bootm.c
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2011-06-05 13:43:02 +0000
committerWolfgang Denk <wd@denx.de>2011-07-25 22:18:26 +0200
commit67d668bf926ae50a1196a8561ae5075fd69a8eb2 (patch)
treea5f7e905a55b5f32718a1d1ac7616e9eb995e9be /common/cmd_bootm.c
parent51f924e5ce4f69659ef385739f4604054d9b5bb7 (diff)
downloadu-boot-imx-67d668bf926ae50a1196a8561ae5075fd69a8eb2.zip
u-boot-imx-67d668bf926ae50a1196a8561ae5075fd69a8eb2.tar.gz
u-boot-imx-67d668bf926ae50a1196a8561ae5075fd69a8eb2.tar.bz2
autostart: unify duplicated logic into the bootm code
Rather than having a bunch of random commands handle autostart behavior, unify the logic in a single place. This also fixes building of these different commands when bootm is disabled. Acked-by: Matthew McClintock <msm@freescale.com> Acked-by: Scott Wood <scottwood@freescale.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Diffstat (limited to 'common/cmd_bootm.c')
-rw-r--r--common/cmd_bootm.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/common/cmd_bootm.c b/common/cmd_bootm.c
index 1966da4..272d879 100644
--- a/common/cmd_bootm.c
+++ b/common/cmd_bootm.c
@@ -708,6 +708,21 @@ int do_bootm (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
return 1;
}
+int bootm_maybe_autostart(cmd_tbl_t *cmdtp, const char *cmd)
+{
+ const char *ep = getenv("autostart");
+
+ if (ep && !strcmp(ep, "yes")) {
+ char *local_args[2];
+ local_args[0] = (char *)cmd;
+ local_args[1] = NULL;
+ printf("Automatic boot of image at addr 0x%08lX ...\n", load_addr);
+ return do_bootm(cmdtp, 0, 1, local_args);
+ }
+
+ return 0;
+}
+
/**
* image_get_kernel - verify legacy format kernel image
* @img_addr: in RAM address of the legacy format image to be verified