summaryrefslogtreecommitdiffstats
path: root/lib_blackfin
diff options
context:
space:
mode:
authorKumar Gala <galak@kernel.crashing.org>2008-08-15 08:24:45 -0500
committerWolfgang Denk <wd@denx.de>2008-08-26 23:48:01 +0200
commit40d7e99d374ba0a0a29cd1a8ba40d3b7c2c175c7 (patch)
treeaedac5a8fffc541a91f1948428c242291f9c7053 /lib_blackfin
parent40afac22a9c602e55c501c800f1c064324711b56 (diff)
downloadu-boot-40d7e99d374ba0a0a29cd1a8ba40d3b7c2c175c7.tar.gz
u-boot-40d7e99d374ba0a0a29cd1a8ba40d3b7c2c175c7.tar.xz
u-boot-40d7e99d374ba0a0a29cd1a8ba40d3b7c2c175c7.zip
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_blackfin')
-rw-r--r--lib_blackfin/bootm.c11
1 files changed, 3 insertions, 8 deletions
diff --git a/lib_blackfin/bootm.c b/lib_blackfin/bootm.c
index f789e24edb..d0afb21ebb 100644
--- a/lib_blackfin/bootm.c
+++ b/lib_blackfin/bootm.c
@@ -14,8 +14,6 @@
#include <image.h>
#include <asm/blackfin.h>
-extern int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
-
#ifdef SHARED_RESOURCES
extern void swap_to(int device_id);
#endif
@@ -33,8 +31,7 @@ static char *make_command_line(void)
return dest;
}
-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)
{
int (*appl) (char *cmdline);
char *cmdline;
@@ -51,8 +48,6 @@ void do_bootm_linux(cmd_tbl_t *cmdtp, int flag, int argc, char *argv[],
dcache_disable();
(*appl) (cmdline);
/* does not return */
- return;
-
- error:
- do_reset (cmdtp, flag, argc, argv);
+error:
+ return 1;
}