diff --git a/qdl.c b/qdl.c index fcaf041..28ce750 100644 --- a/qdl.c +++ b/qdl.c @@ -541,7 +541,7 @@ out_cleanup: return ret; } -int main(int argc, char **argv) +static int qdl_flash(int argc, char **argv) { enum qdl_storage_type storage_type = QDL_STORAGE_UFS; struct sahara_image sahara_images[MAPPING_SZ] = {}; @@ -578,11 +578,6 @@ int main(int argc, char **argv) {0, 0, 0, 0} }; - if (argc == 2 && !strcmp(argv[1], "list")) - return qdl_list(stdout); - if (argc >= 2 && !strcmp(argv[1], "ramdump")) - return qdl_ramdump(argc - 1, argv + 1); - while ((opt = getopt_long(argc, argv, "dvi:lu:S:D:s:fcnt:T:h", options, NULL)) != -1) { switch (opt) { case 'd': @@ -762,3 +757,13 @@ out_cleanup: return !!ret; } + +int main(int argc, char **argv) +{ + if (argc == 2 && !strcmp(argv[1], "list")) + return qdl_list(stdout); + if (argc >= 2 && !strcmp(argv[1], "ramdump")) + return qdl_ramdump(argc - 1, argv + 1); + + return qdl_flash(argc, argv); +}