diff options
author | Kumar Gala <galak@kernel.crashing.org> | 2008-08-15 08:24:45 -0500 |
---|---|---|
committer | Wolfgang Denk <wd@denx.de> | 2008-08-26 23:48:01 +0200 |
commit | 40d7e99d374ba0a0a29cd1a8ba40d3b7c2c175c7 (patch) | |
tree | aedac5a8fffc541a91f1948428c242291f9c7053 /lib_avr32/bootm.c | |
parent | 40afac22a9c602e55c501c800f1c064324711b56 (diff) | |
download | u-boot-imx-40d7e99d374ba0a0a29cd1a8ba40d3b7c2c175c7.zip u-boot-imx-40d7e99d374ba0a0a29cd1a8ba40d3b7c2c175c7.tar.gz u-boot-imx-40d7e99d374ba0a0a29cd1a8ba40d3b7c2c175c7.tar.bz2 |
bootm: refactor do_reset and os boot function args
There is no need for each OS specific function to call do_reset() we
can just do it once in bootm. This means its feasible on an error for
the OS boot function to return.
Also, remove passing in cmd_tbl_t as its not needed by the OS boot
functions. flag isn't currently used but might be in the future so
we left it alone.
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Diffstat (limited to 'lib_avr32/bootm.c')
-rw-r--r-- | lib_avr32/bootm.c | 10 |
1 files changed, 2 insertions, 8 deletions
diff --git a/lib_avr32/bootm.c b/lib_avr32/bootm.c index 762701f..8a6109d 100644 --- a/lib_avr32/bootm.c +++ b/lib_avr32/bootm.c @@ -34,8 +34,6 @@ DECLARE_GLOBAL_DATA_PTR; /* CPU-specific hook to allow flushing of caches, etc. */ extern void prepare_to_boot(void); -extern int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]); - static struct tag *setup_start_tag(struct tag *params) { params->hdr.tag = ATAG_CORE; @@ -173,8 +171,7 @@ static void setup_end_tag(struct tag *params) params->hdr.size = 0; } -void do_bootm_linux(cmd_tbl_t *cmdtp, int flag, int argc, char *argv[], - bootm_headers_t *images) +int do_bootm_linux(int flag, int argc, char *argv[], bootm_headers_t *images) { void (*theKernel)(int magic, void *tagtable); struct tag *params, *params_start; @@ -205,9 +202,6 @@ void do_bootm_linux(cmd_tbl_t *cmdtp, int flag, int argc, char *argv[], theKernel(ATAG_MAGIC, params_start); /* does not return */ - return; - error: - do_reset (cmdtp, flag, argc, argv); - return; + return 1; } |