mkimage: fix generation of FIT image
authorAndreas Bießmann <andreas@biessmann.org>
Tue, 3 May 2016 13:17:03 +0000 (15:17 +0200)
committerTom Rini <trini@konsulko.com>
Tue, 3 May 2016 15:28:18 +0000 (11:28 -0400)
Commit 7a439cadcf3192eb012a2432ca34670b676c74d2 broke generation of SPL
loadable FIT images (CONFIG_SPL_LOAD_FIT).
Fix it by removing the unnecessary storage of expected image type. This was a
left over of the previous implementation. It is not longer necessary since the
mkimage -b switch always has one parameter.

Tested-by: Lokesh Vutla <lokeshvutla@ti.com>
Signed-off-by: Andreas Bießmann <andreas@biessmann.org>
tools/mkimage.c

index b407aed742afc8a07637b9d08dad8185fbdfaa3e..93d1c16c7ce0e8afa580ccfb84bc8e454b163f54 100644 (file)
@@ -133,10 +133,8 @@ static void process_args(int argc, char **argv)
        char *ptr;
        int type = IH_TYPE_INVALID;
        char *datafile = NULL;
-       int expecting;
        int opt;
 
-       expecting = IH_TYPE_COUNT;      /* Unknown */
        while ((opt = getopt(argc, argv,
                             "a:A:b:cC:d:D:e:Ef:Fk:K:ln:O:rR:sT:vVx")) != -1) {
                switch (opt) {
@@ -154,8 +152,7 @@ static void process_args(int argc, char **argv)
                                usage("Invalid architecture");
                        break;
                case 'b':
-                       expecting = IH_TYPE_FLATDT;
-                       if (add_content(expecting, optarg)) {
+                       if (add_content(IH_TYPE_FLATDT, optarg)) {
                                fprintf(stderr,
                                        "%s: Out of memory adding content '%s'",
                                        params.cmdname, optarg);
@@ -238,7 +235,6 @@ static void process_args(int argc, char **argv)
                                show_image_types();
                                usage("Invalid image type");
                        }
-                       expecting = type;
                        break;
                case 'v':
                        params.vflag++;
@@ -254,7 +250,8 @@ static void process_args(int argc, char **argv)
                }
        }
 
-       if (optind < argc && expecting == type)
+       /* The last parameter is expected to be the imagefile */
+       if (optind < argc)
                params.imagefile = argv[optind];
 
        /*