diff options
Diffstat (limited to 'nandwrite.c')
-rw-r--r-- | nandwrite.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/nandwrite.c b/nandwrite.c index f4c399d..f74581d 100644 --- a/nandwrite.c +++ b/nandwrite.c @@ -271,9 +271,12 @@ int main(int argc, char **argv) } if (noecc) { - switch (ioctl(fd, MTDFILEMODE, (void *) MTD_MODE_RAW)) { - - case -ENOTTY: + ret = ioctl(fd, MTDFILEMODE, (void *) MTD_MODE_RAW); + if (ret == 0) { + oobinfochanged = 2; + } else { + switch (errno) { + case ENOTTY: if (ioctl (fd, MEMGETOOBSEL, &old_oobinfo) != 0) { perror ("MEMGETOOBSEL"); close (fd); @@ -286,14 +289,11 @@ int main(int argc, char **argv) } oobinfochanged = 1; break; - - case 0: - oobinfochanged = 2; - break; default: perror ("MTDFILEMODE"); close (fd); exit (1); + } } } |