|
@@ -0,0 +1,64 @@
|
|
|
+From: Matthias Schiffer <mschiffer@universe-factory.net>
|
|
|
+Date: Thu, 25 Feb 2016 21:39:03 +0100
|
|
|
+Subject: firmware-utils: mkfwimage: add -Wall, fix obvious bugs causing compile warnings
|
|
|
+
|
|
|
+Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
|
|
|
+
|
|
|
+diff --git a/tools/firmware-utils/Makefile b/tools/firmware-utils/Makefile
|
|
|
+index bd69cb4..6d88845 100644
|
|
|
+--- a/tools/firmware-utils/Makefile
|
|
|
++++ b/tools/firmware-utils/Makefile
|
|
|
+@@ -32,7 +32,7 @@ define Host/Compile
|
|
|
+ $(call cc,mkzynfw)
|
|
|
+ $(call cc,lzma2eva,-lz)
|
|
|
+ $(call cc,mkcasfw)
|
|
|
+- $(call cc,mkfwimage,-lz)
|
|
|
++ $(call cc,mkfwimage,-lz -Wall)
|
|
|
+ $(call cc,mkfwimage2,-lz)
|
|
|
+ $(call cc,imagetag imagetag_cmdline cyg_crc32)
|
|
|
+ $(call cc,add_header)
|
|
|
+diff --git a/tools/firmware-utils/src/mkfwimage.c b/tools/firmware-utils/src/mkfwimage.c
|
|
|
+index e3a03c1..00bf439 100644
|
|
|
+--- a/tools/firmware-utils/src/mkfwimage.c
|
|
|
++++ b/tools/firmware-utils/src/mkfwimage.c
|
|
|
+@@ -104,8 +104,6 @@ typedef struct part_data {
|
|
|
+
|
|
|
+ #define OPTIONS "B:hv:m:o:r:k:"
|
|
|
+
|
|
|
+-static int debug = 0;
|
|
|
+-
|
|
|
+ typedef struct image_info {
|
|
|
+ char magic[16];
|
|
|
+ char version[256];
|
|
|
+@@ -236,9 +234,9 @@ static int create_image_layout(const char* kernelfile, const char* rootfsfile, c
|
|
|
+ fw_layout_t* p;
|
|
|
+
|
|
|
+ p = &fw_layout_data[0];
|
|
|
+- while ((strlen(p->name) != 0) && (strncmp(p->name, board_name, sizeof(board_name)) != 0))
|
|
|
++ while (*p->name && (strcmp(p->name, board_name) != 0))
|
|
|
+ p++;
|
|
|
+- if (p->name == NULL) {
|
|
|
++ if (!*p->name) {
|
|
|
+ printf("BUG! Unable to find default fw layout!\n");
|
|
|
+ exit(-1);
|
|
|
+ }
|
|
|
+@@ -247,7 +245,7 @@ static int create_image_layout(const char* kernelfile, const char* rootfsfile, c
|
|
|
+ strcpy(kernel->partition_name, "kernel");
|
|
|
+ kernel->partition_index = 1;
|
|
|
+ kernel->partition_baseaddr = p->kern_start;
|
|
|
+- if ( (kernel->partition_length = filelength(kernelfile)) < 0) return (-1);
|
|
|
++ if ( (kernel->partition_length = filelength(kernelfile)) == (u_int32_t)-1) return (-1);
|
|
|
+ kernel->partition_memaddr = p->kern_entry;
|
|
|
+ kernel->partition_entryaddr = p->kern_entry;
|
|
|
+ strncpy(kernel->filename, kernelfile, sizeof(kernel->filename));
|
|
|
+@@ -263,8 +261,8 @@ static int create_image_layout(const char* kernelfile, const char* rootfsfile, c
|
|
|
+ rootfs->partition_entryaddr = 0x00000000;
|
|
|
+ strncpy(rootfs->filename, rootfsfile, sizeof(rootfs->filename));
|
|
|
+
|
|
|
+-printf("kernel: %d 0x%08x\n", kernel->partition_length, kernel->partition_baseaddr);
|
|
|
+-printf("root: %d 0x%08x\n", rootfs->partition_length, rootfs->partition_baseaddr);
|
|
|
++ printf("kernel: %d 0x%08x\n", kernel->partition_length, kernel->partition_baseaddr);
|
|
|
++ printf("root: %d 0x%08x\n", rootfs->partition_length, rootfs->partition_baseaddr);
|
|
|
+ im->part_count = 2;
|
|
|
+
|
|
|
+ return 0;
|