From 8083d3e8bba53600fa5003c58d6ec01d03a1df6d Mon Sep 17 00:00:00 2001 From: nbd Date: Thu, 9 Feb 2006 08:47:48 +0000 Subject: [PATCH] enhance the new mtd -q option git-svn-id: svn://svn.openwrt.org/openwrt/trunk/openwrt@3200 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- package/mtd/mtd.c | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/package/mtd/mtd.c b/package/mtd/mtd.c index 31b9924aa..78d38fb6a 100644 --- a/package/mtd/mtd.c +++ b/package/mtd/mtd.c @@ -331,7 +331,8 @@ void usage(void) " erase erase all data on device\n" " write |- write (use - for stdin) to device\n" "Following options are available:\n" - " -q quiet mode\n" + " -q quiet mode (once: no [w] on writing,\n" + " twice: no status messages)\n" " -r reboot after successful command\n" " -f force write without trx checks\n" " -e erase before executing the command\n\n" @@ -365,7 +366,7 @@ int main (int argc, char **argv) boot = 1; break; case 'q': - quiet = 1; + quiet++; break; case 'e': i = 0; @@ -409,7 +410,7 @@ int main (int argc, char **argv) /* check trx file before erasing or writing anything */ if (!image_check(imagefd, device)) { - if (!quiet && force) + if ((quiet < 2) || !force) fprintf(stderr, "TRX check failed!\n"); if (!force) exit(1); @@ -428,10 +429,10 @@ int main (int argc, char **argv) i = 0; unlocked = 0; while (erase[i] != NULL) { - if (!quiet) + if (quiet < 2) fprintf(stderr, "Unlocking %s ...\n", erase[i]); mtd_unlock(erase[i]); - if (!quiet) + if (quiet < 2) fprintf(stderr, "Erasing %s ...\n", erase[i]); mtd_erase(erase[i]); if (strcmp(erase[i], device) == 0) @@ -440,7 +441,7 @@ int main (int argc, char **argv) } if (!unlocked) { - if (!quiet) + if (quiet < 2) fprintf(stderr, "Unlocking %s ...\n", device); mtd_unlock(device); } @@ -449,15 +450,15 @@ int main (int argc, char **argv) case CMD_UNLOCK: break; case CMD_ERASE: - if (!quiet) - fprintf(stderr, "Erasing %s ...\n", erase[i]); + if (quiet < 2) + fprintf(stderr, "Erasing %s ...\n", device); mtd_erase(device); break; case CMD_WRITE: - if (!quiet) + if (quiet < 2) fprintf(stderr, "Writing from %s to %s ... ", imagefile, device); mtd_write(imagefd, device, quiet); - if (!quiet) + if (quiet < 2) fprintf(stderr, "\n"); break; }