blob: 88be383c4e76c6ff132706bb7981f8754b312f73 [file] [log] [blame]
From bf5140817b2d65faac9b32fc9057a097044ac35b Mon Sep 17 00:00:00 2001
From: Peter Wippich <pewi@gw-instruments.de>
Date: Mon, 6 Jun 2011 15:50:58 +0200
Subject: mtd: mtdchar: add missing initializer on raw write
From: Peter Wippich <pewi@gw-instruments.de>
commit bf5140817b2d65faac9b32fc9057a097044ac35b upstream.
On writes in MODE_RAW the mtd_oob_ops struct is not sufficiently
initialized which may cause nandwrite to fail. With this patch
it is possible to write raw nand/oob data without additional ECC
(either for testing or when some sectors need different oob layout
e.g. bootloader) like
nandwrite -n -r -o /dev/mtd0 <myfile>
Signed-off-by: Peter Wippich <pewi@gw-instruments.de>
Tested-by: Ricard Wanderlof <ricardw@axis.com>
Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
---
drivers/mtd/mtdchar.c | 1 +
1 file changed, 1 insertion(+)
--- a/drivers/mtd/mtdchar.c
+++ b/drivers/mtd/mtdchar.c
@@ -320,6 +320,7 @@ static ssize_t mtd_write(struct file *fi
ops.mode = MTD_OOB_RAW;
ops.datbuf = kbuf;
ops.oobbuf = NULL;
+ ops.ooboffs = 0;
ops.len = len;
ret = mtd->write_oob(mtd, *ppos, &ops);