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>
diff --git a/lib_sparc/bootm.c b/lib_sparc/bootm.c
index f3abdcf..4e8c920 100644
--- a/lib_sparc/bootm.c
+++ b/lib_sparc/bootm.c
@@ -33,7 +33,6 @@
 extern image_header_t header;
 extern void srmmu_init_cpu(unsigned int entry);
 extern void prepare_bootargs(char *bootargs);
-extern int do_reset(cmd_tbl_t * cmdtp, int flag, int argc, char *argv[]);
 
 #ifdef CONFIG_USB_UHCI
 extern int usb_lowlevel_stop(void);
@@ -83,8 +82,7 @@
 image_header_t ihdr;
 
 /* boot the linux kernel */
-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)
 {
 	char *bootargs;
 	ulong initrd_start, initrd_end;
@@ -181,6 +179,5 @@
 	while (1) ;
 
       error:
-	do_reset(cmdtp, flag, argc, argv);
-	return;
+	return 1;
 }