#include <libmtd.h>
// oob layouts to pass into the kernel as default
-static struct nand_oobinfo none_oobinfo = {
- .useecc = MTD_NANDECC_OFF,
-};
-
static struct nand_oobinfo jffs2_oobinfo = {
.useecc = MTD_NANDECC_PLACE,
.eccbytes = 6,
} else {
switch (errno) {
case ENOTTY:
- if (ioctl(fd, MEMGETOOBSEL, &old_oobinfo) != 0) {
- perror("MEMGETOOBSEL");
- close(fd);
- exit(EXIT_FAILURE);
- }
- if (ioctl(fd, MEMSETOOBSEL, &none_oobinfo) != 0) {
- perror("MEMSETOOBSEL");
- close(fd);
- exit(EXIT_FAILURE);
- }
- oobinfochanged = 1;
- break;
+ errmsg_die("ioctl MTDFILEMODE is missing");
default:
perror("MTDFILEMODE");
close(fd);
libmtd_close(mtd_desc);
free(filebuf);
free(oobbuf);
-
- if (oobinfochanged == 1) {
- if (ioctl(fd, MEMSETOOBSEL, &old_oobinfo) != 0) {
- perror("MEMSETOOBSEL");
- close(fd);
- exit(EXIT_FAILURE);
- }
- }
-
close(fd);
if (failed