[U-Boot] [PATCH v2 1/2] tools: mkimage: Fixed build warnings

Prafulla Wadaskar prafulla at marvell.com
Sun Aug 16 01:58:19 CEST 2009


uninitialized retval variable warning fixed
crc32 APIs moved to crc.h (newly added) and build warnings fixed
some indentation tabs fixed

Signed-off-by: Prafulla Wadaskar <prafulla at marvell.com>
---
Change log:
v2: updated as per review feedback for v1

 include/common.h     |    4 +---
 include/u-boot/crc.h |   33 +++++++++++++++++++++++++++++++++
 tools/mkimage.c      |   20 +++++++++++---------
 3 files changed, 45 insertions(+), 12 deletions(-)
 create mode 100644 include/u-boot/crc.h

diff --git a/include/common.h b/include/common.h
index a6922fd..c0db3ff 100644
--- a/include/common.h
+++ b/include/common.h
@@ -622,9 +622,7 @@ int	vsprintf(char *buf, const char *fmt, va_list args);
 char *	strmhz(char *buf, long hz);
 
 /* lib_generic/crc32.c */
-uint32_t crc32 (uint32_t, const unsigned char *, uint);
-uint32_t crc32_wd (uint32_t, const unsigned char *, uint, uint);
-uint32_t crc32_no_comp (uint32_t, const unsigned char *, uint);
+#include <u-boot/crc.h>
 
 /* common/console.c */
 int	console_init_f(void);	/* Before relocation; uses the serial  stuff	*/
diff --git a/include/u-boot/crc.h b/include/u-boot/crc.h
new file mode 100644
index 0000000..61bce67
--- /dev/null
+++ b/include/u-boot/crc.h
@@ -0,0 +1,33 @@
+/*
+ * (C) Copyright 2009
+ * Marvell Semiconductor <www.marvell.com>
+ * Written-by: Prafulla Wadaskar <prafulla at marvell.com>
+ *
+ * See file CREDITS for list of people who contributed to this
+ * project.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of
+ * the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301 USA
+ */
+
+#ifndef _UBOOT_CRC_H
+#define _UBOOT_CRC_H
+
+/* lib_generic/crc32.c */
+uint32_t crc32 (uint32_t, const unsigned char *, uint);
+uint32_t crc32_wd (uint32_t, const unsigned char *, uint, uint);
+uint32_t crc32_no_comp (uint32_t, const unsigned char *, uint);
+
+#endif /* _UBOOT_CRC_H */
diff --git a/tools/mkimage.c b/tools/mkimage.c
index dc42924..0cd16dd 100644
--- a/tools/mkimage.c
+++ b/tools/mkimage.c
@@ -24,8 +24,8 @@
 
 #include "mkimage.h"
 #include <image.h>
+#include <u-boot/crc.h>
 
-extern	unsigned long	crc32 (unsigned long crc, const char *buf, unsigned int len);
 static	void		copy_file (int, const char *, int);
 static	void		usage (void);
 static	int		image_verify_header (char *, int);
@@ -60,7 +60,7 @@ main (int argc, char **argv)
 	struct stat sbuf;
 	unsigned char *ptr;
 	char *name = "";
-	int retval;
+	int retval = 0;
 
 	cmdname = *argv;
 
@@ -334,9 +334,10 @@ NXTARG:		;
 	hdr = (image_header_t *)ptr;
 
 	checksum = crc32 (0,
-			  (const char *)(ptr + image_get_header_size ()),
-			  sbuf.st_size - image_get_header_size ()
-			 );
+			(const unsigned char *)(ptr +
+			image_get_header_size ()),
+			sbuf.st_size - image_get_header_size ()
+			);
 
 	/* Build new header */
 	image_set_magic (hdr, IH_MAGIC);
@@ -352,7 +353,8 @@ NXTARG:		;
 
 	image_set_name (hdr, name);
 
-	checksum = crc32 (0, (const char *)hdr, image_get_header_size ());
+	checksum = crc32 (0, (const unsigned char *)hdr,
+					image_get_header_size ());
 
 	image_set_hcrc (hdr, checksum);
 
@@ -485,7 +487,7 @@ static int
 image_verify_header (char *ptr, int image_size)
 {
 	int len;
-	char *data;
+	const unsigned char *data;
 	uint32_t checksum;
 	image_header_t header;
 	image_header_t *hdr = &header;
@@ -504,7 +506,7 @@ image_verify_header (char *ptr, int image_size)
 		return -FDT_ERR_BADMAGIC;
 	}
 
-	data = (char *)hdr;
+	data = (const unsigned char *)hdr;
 	len  = sizeof(image_header_t);
 
 	checksum = be32_to_cpu(hdr->ih_hcrc);
@@ -517,7 +519,7 @@ image_verify_header (char *ptr, int image_size)
 		return -FDT_ERR_BADSTATE;
 	}
 
-	data = ptr + sizeof(image_header_t);
+	data = (const unsigned char *)ptr + sizeof(image_header_t);
 	len  = image_size - sizeof(image_header_t) ;
 
 	if (crc32 (0, data, len) != be32_to_cpu(hdr->ih_dcrc)) {
-- 
1.5.3.4



More information about the U-Boot mailing list