[new uImage] Move image verify flag to bootm_headers structure

Do not pass image verification flag directly to related routines.
Simplify argument passing and move it to the bootm_header structure which
contains curently processed image specific data and is already being passed
on the argument list.

Signed-off-by: Marian Balakowicz <m8@semihalf.com>
Acked-by: Kumar Gala <galak@kernel.crashing.org>
diff --git a/common/cmd_bootm.c b/common/cmd_bootm.c
index 3f09988..ce2de2e 100644
--- a/common/cmd_bootm.c
+++ b/common/cmd_bootm.c
@@ -65,10 +65,8 @@
 static void fixup_silent_linux (void);
 #endif
 
-static void *get_kernel (cmd_tbl_t *cmdtp, int flag,
-		int argc, char *argv[], int verify,
-		bootm_headers_t *images,
-		ulong *os_data, ulong *os_len);
+static void *get_kernel (cmd_tbl_t *cmdtp, int flag,int argc, char *argv[],
+		bootm_headers_t *images, ulong *os_data, ulong *os_len);
 extern int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
 
 /*
@@ -81,8 +79,7 @@
  */
 typedef void boot_os_fn (cmd_tbl_t *cmdtp, int flag,
 			int argc, char *argv[],
-			bootm_headers_t *images,/* pointers to os/initrd/fdt */
-			int verify);		/* getenv("verify")[0] != 'n' */
+			bootm_headers_t *images); /* pointers to os/initrd/fdt */
 
 extern boot_os_fn do_bootm_linux;
 static boot_os_fn do_bootm_netbsd;
@@ -114,7 +111,6 @@
 	ulong		iflag;
 	const char	*type_name;
 	uint		unc_len = CFG_BOOTM_LEN;
-	int		verify = getenv_verify();
 	uint8_t		comp, type, os;
 
 	void		*os_hdr;
@@ -123,9 +119,10 @@
 	ulong		load_start, load_end;
 
 	memset ((void *)&images, 0, sizeof (images));
+	images.verify = getenv_verify();
 
 	/* get kernel image header, start address and length */
-	os_hdr = get_kernel (cmdtp, flag, argc, argv, verify,
+	os_hdr = get_kernel (cmdtp, flag, argc, argv,
 			&images, &os_data, &os_len);
 	if (os_len == 0)
 		return 1;
@@ -246,36 +243,36 @@
 #ifdef CONFIG_SILENT_CONSOLE
 	    fixup_silent_linux();
 #endif
-	    do_bootm_linux (cmdtp, flag, argc, argv, &images, verify);
+	    do_bootm_linux (cmdtp, flag, argc, argv, &images);
 	    break;
 
 	case IH_OS_NETBSD:
-	    do_bootm_netbsd (cmdtp, flag, argc, argv, &images, verify);
+	    do_bootm_netbsd (cmdtp, flag, argc, argv, &images);
 	    break;
 
 #ifdef CONFIG_LYNXKDI
 	case IH_OS_LYNXOS:
-	    do_bootm_lynxkdi (cmdtp, flag, argc, argv, &images, verify);
+	    do_bootm_lynxkdi (cmdtp, flag, argc, argv, &images);
 	    break;
 #endif
 
 	case IH_OS_RTEMS:
-	    do_bootm_rtems (cmdtp, flag, argc, argv, &images, verify);
+	    do_bootm_rtems (cmdtp, flag, argc, argv, &images);
 	    break;
 
 #if defined(CONFIG_CMD_ELF)
 	case IH_OS_VXWORKS:
-	    do_bootm_vxworks (cmdtp, flag, argc, argv, &images, verify);
+	    do_bootm_vxworks (cmdtp, flag, argc, argv, &images);
 	    break;
 
 	case IH_OS_QNX:
-	    do_bootm_qnxelf (cmdtp, flag, argc, argv, &images, verify);
+	    do_bootm_qnxelf (cmdtp, flag, argc, argv, &images);
 	    break;
 #endif
 
 #ifdef CONFIG_ARTOS
 	case IH_OS_ARTOS:
-	    do_bootm_artos (cmdtp, flag, argc, argv, &images, verify);
+	    do_bootm_artos (cmdtp, flag, argc, argv, &images);
 	    break;
 #endif
 	}
@@ -300,10 +297,8 @@
  *     pointer to image header if valid image was found, plus kernel start
  *     address and length, otherwise NULL
  */
-static void *get_kernel (cmd_tbl_t *cmdtp, int flag,
-		int argc, char *argv[], int verify,
-		bootm_headers_t *images,
-		ulong *os_data, ulong *os_len)
+static void *get_kernel (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[],
+		bootm_headers_t *images, ulong *os_data, ulong *os_len)
 {
 	image_header_t	*hdr;
 	ulong		img_addr;
@@ -362,7 +357,7 @@
 		show_boot_progress (3);
 		image_print_contents (hdr);
 
-		if (verify) {
+		if (images->verify) {
 			puts ("   Verifying Checksum ... ");
 			if (!image_check_dcrc (hdr)) {
 				printf ("Bad Data CRC\n");
@@ -648,7 +643,7 @@
 
 static void do_bootm_netbsd (cmd_tbl_t *cmdtp, int flag,
 			    int argc, char *argv[],
-			    bootm_headers_t *images, int verify)
+			    bootm_headers_t *images)
 {
 	void (*loader)(bd_t *, image_header_t *, char *, char *);
 	image_header_t *os_hdr, *hdr;
@@ -731,7 +726,7 @@
 #ifdef CONFIG_LYNXKDI
 static void do_bootm_lynxkdi (cmd_tbl_t *cmdtp, int flag,
 			     int argc, char *argv[],
-			     bootm_headers_t *images, int verify)
+			     bootm_headers_t *images)
 {
 	image_header_t *hdr = images->legacy_hdr_os;
 
@@ -748,7 +743,7 @@
 
 static void do_bootm_rtems (cmd_tbl_t *cmdtp, int flag,
 			   int argc, char *argv[],
-			   bootm_headers_t *images, int verify)
+			   bootm_headers_t *images)
 {
 	image_header_t *hdr = images->legacy_hdr_os;
 	void (*entry_point)(bd_t *);
@@ -777,7 +772,7 @@
 #if defined(CONFIG_CMD_ELF)
 static void do_bootm_vxworks (cmd_tbl_t *cmdtp, int flag,
 			     int argc, char *argv[],
-			     bootm_headers_t *images, int verify)
+			     bootm_headers_t *images)
 {
 	char str[80];
 	image_header_t *hdr = images->legacy_hdr_os;
@@ -796,7 +791,7 @@
 
 static void do_bootm_qnxelf(cmd_tbl_t *cmdtp, int flag,
 			    int argc, char *argv[],
-			    bootm_headers_t *images, int verify)
+			    bootm_headers_t *images)
 {
 	char *local_args[2];
 	char str[16];
@@ -819,7 +814,7 @@
 #if defined(CONFIG_ARTOS) && defined(CONFIG_PPC)
 static void do_bootm_artos (cmd_tbl_t *cmdtp, int flag,
 			   int argc, char *argv[],
-			   bootm_headers_t *images, int verify)
+			   bootm_headers_t *images)
 {
 	ulong top;
 	char *s, *cmdline;
diff --git a/common/image.c b/common/image.c
index dd55264..5ca77b9 100644
--- a/common/image.c
+++ b/common/image.c
@@ -58,6 +58,10 @@
 #endif
 
 DECLARE_GLOBAL_DATA_PTR;
+
+static image_header_t* image_get_ramdisk (cmd_tbl_t *cmdtp, int flag,
+		int argc, char *argv[],
+		ulong rd_addr, uint8_t arch, int verify);
 #else
 #include "mkimage.h"
 #endif /* USE_HOSTCC*/
@@ -485,7 +489,7 @@
  *     pointer to a ramdisk image header, if image was found and valid
  *     otherwise, board is reset
  */
-image_header_t* image_get_ramdisk (cmd_tbl_t *cmdtp, int flag,
+static image_header_t* image_get_ramdisk (cmd_tbl_t *cmdtp, int flag,
 		int argc, char *argv[],
 		ulong rd_addr, uint8_t arch, int verify)
 {
@@ -539,8 +543,7 @@
  * @flag: command flag
  * @argc: command argument count
  * @argv: command argument list
- * @images: pointer to the bootm images strcture
- * @verify: checksum verification flag
+ * @images: pointer to the bootm images structure
  * @arch: expected ramdisk architecture
  * @rd_start: pointer to a ulong variable, will hold ramdisk start address
  * @rd_end: pointer to a ulong variable, will hold ramdisk end
@@ -557,7 +560,7 @@
  *     board is reset if ramdisk image is found but corrupted
  */
 void get_ramdisk (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[],
-		bootm_headers_t *images, int verify, uint8_t arch,
+		bootm_headers_t *images, uint8_t arch,
 		ulong *rd_start, ulong *rd_end)
 {
 	ulong rd_addr, rd_load;
@@ -621,7 +624,7 @@
 			debug ("*  ramdisk: legacy format image\n");
 
 			rd_hdr = image_get_ramdisk (cmdtp, flag, argc, argv,
-						rd_addr, arch, verify);
+						rd_addr, arch, images->verify);
 
 			rd_data = image_get_data (rd_hdr);
 			rd_len = image_get_data_size (rd_hdr);