summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPali Rohár <pali.rohar@gmail.com>2021-05-01 15:34:22 +0200
committerPali Rohár <pali.rohar@gmail.com>2021-05-01 15:34:22 +0200
commit67427daf172ffbec429830ee97410c53095086d5 (patch)
treee2c1465b2633627a556968722a74dca995e958c4
parentbf24ca23451a67b2c3c6a82bb245415b1b9aedb0 (diff)
download0xFFFF-67427daf172ffbec429830ee97410c53095086d5.tar.bz2
local: Fix calling nanddump
In last 15 years nanddump changed its command line arguments. Argument -b (omit bad blocks) was completely removed and argument -o (omit oob data) changed its meaning to "include" oob data. So for compatibility with all nanddump versions, do not use argument -b and instead of -o use argument --omitoob which is present in all nanddump versions and has same meaning to omit oob data. This change should fix dumping firmware files on devices with recent versions of nanddump.
-rw-r--r--doc/dumping5
-rw-r--r--src/local.c4
2 files changed, 4 insertions, 5 deletions
diff --git a/doc/dumping b/doc/dumping
index 4a629cd..b7e9cdf 100644
--- a/doc/dumping
+++ b/doc/dumping
@@ -30,11 +30,10 @@ Technical details:
For dumping mtd partition is used tool nanddump. Here is example how to dump
kernel image without padding to file zImage:
- $ nanddump -o -b -s 0x00000800 -l 0x001FF800 -f zImage /dev/mtd2
+ $ nanddump --omitoob -s 0x00000800 -l 0x001FF800 -f zImage /dev/mtd2
Params means:
--o - "Omit oob data"
--b - "Omit bad blocks"
+--omitoob - "Omit oob data"
-s - "Start address"
-l - "Length"
-f - "Output file"
diff --git a/src/local.c b/src/local.c
index 3813910..f9da146 100644
--- a/src/local.c
+++ b/src/local.c
@@ -227,13 +227,13 @@ static int local_nanddump(const char * file, int mtd, int offset, int length) {
return 1;
}
- size = snprintf(NULL, 0, "nanddump -o -b -s %d -l %d -f %s /dev/mtd%dro", offset, length, file, mtd);
+ size = snprintf(NULL, 0, "nanddump --omitoob -s %d -l %d -f %s /dev/mtd%d", offset, length, file, mtd);
command = malloc(size+1);
if ( ! command )
return 1;
- snprintf(command, size+1, "nanddump -o -b -s %d -l %d -f %s /dev/mtd%dro", offset, length, file, mtd);
+ snprintf(command, size+1, "nanddump --omitoob -s %d -l %d -f %s /dev/mtd%d", offset, length, file, mtd);
ret = system(command);