]> git.karo-electronics.de Git - karo-tx-uboot.git/blobdiff - tools/mkimage.c
misc: add support for Qualcomm SMD protocol
[karo-tx-uboot.git] / tools / mkimage.c
index 3cdbb2cfcd152b9984cee6f71eed228b689ca592..3c594a0f3b92f1cf73b282c85b36674838c65fa0 100644 (file)
@@ -140,7 +140,7 @@ static void process_args(int argc, char **argv)
        int opt;
 
        while ((opt = getopt(argc, argv,
-                            "a:A:b:cC:d:D:e:Ef:Fk:K:ln:p:O:rR:qsT:vVx")) != -1) {
+                            "a:A:b:c:C:d:D:e:Ef:Fk:K:ln:p:O:rR:qsT:vVx")) != -1) {
                switch (opt) {
                case 'a':
                        params.addr = strtoull(optarg, &ptr, 16);
@@ -152,8 +152,10 @@ static void process_args(int argc, char **argv)
                        break;
                case 'A':
                        params.arch = genimg_get_arch_id(optarg);
-                       if (params.arch < 0)
+                       if (params.arch < 0) {
+                               show_valid_options(IH_ARCH);
                                usage("Invalid architecture");
+                       }
                        break;
                case 'b':
                        if (add_content(IH_TYPE_FLATDT, optarg)) {
@@ -168,8 +170,10 @@ static void process_args(int argc, char **argv)
                        break;
                case 'C':
                        params.comp = genimg_get_comp_id(optarg);
-                       if (params.comp < 0)
+                       if (params.comp < 0) {
+                               show_valid_options(IH_COMP);
                                usage("Invalid compression type");
+                       }
                        break;
                case 'd':
                        params.datafile = optarg;
@@ -216,8 +220,10 @@ static void process_args(int argc, char **argv)
                        break;
                case 'O':
                        params.os = genimg_get_os_id(optarg);
-                       if (params.os < 0)
+                       if (params.os < 0) {
+                               show_valid_options(IH_OS);
                                usage("Invalid operating system");
+                       }
                        break;
                case 'p':
                        params.external_offset = strtoull(optarg, &ptr, 16);
@@ -226,6 +232,7 @@ static void process_args(int argc, char **argv)
                                        params.cmdname, optarg);
                                exit(EXIT_FAILURE);
                        }
+                       break;
                case 'q':
                        params.quiet = 1;
                        break;