summaryrefslogtreecommitdiff
path: root/jffs2reset.c
diff options
context:
space:
mode:
Diffstat (limited to 'jffs2reset.c')
-rw-r--r--jffs2reset.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/jffs2reset.c b/jffs2reset.c
index 2236e38..acff913 100644
--- a/jffs2reset.c
+++ b/jffs2reset.c
@@ -19,12 +19,14 @@
#include <fcntl.h>
#include <dirent.h>
+#include <stdint.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <getopt.h>
+#include <mtd/ubi-user.h>
#include "libfstools/libfstools.h"
#include "libfstools/volume.h"
@@ -79,6 +81,13 @@ static int jffs2_mark(struct volume *v)
return -1;
}
+ if (volume_identify(v) == FS_UBIFS) {
+ uint64_t llz = 0;
+ int ret = ioctl(fd, UBI_IOCVOLUP, &llz);
+ close(fd);
+ return ret;
+ }
+
sz = write(fd, &deadc0de, sizeof(deadc0de));
close(fd);