public inbox for linux-mtd@lists.infradead.org
 help / color / mirror / Atom feed
* How to write to nand with an image containing oob data, including ECC?
@ 2011-03-29 15:30 Ricard Wanderlof
  2011-03-29 15:42 ` Artem Bityutskiy
  2011-04-01  8:27 ` Artem Bityutskiy
  0 siblings, 2 replies; 5+ messages in thread
From: Ricard Wanderlof @ 2011-03-29 15:30 UTC (permalink / raw)
  To: Linux mtd


Hi,

In order to test an ECC algorithm (BCH in this case, as I recently posted 
about), i want to write an image to a nand flash which contains bit 
errors.

What I want to do, and I seem to remember doing this in the past, is to 
dump the whole image, change a single bit, and write it back, including 
the oob.

So what I'm doing is

$ nandwrite -o -n /dev/mtd3 /tmp/mtd3-badimage

where /tmp/mtd3-badimage contains an image including all oobs for all 
pages.

However, this fails saying

Writing data to block 0 at offset 0x0
libmtd: error!: cannot write 2048 bytes to mtd3 (eraseblock 0, offset 0)
         error 22 (Invalid argument)
nandwrite: error!: /dev/mtd3: MTD write failure
            error 22 (Invalid argument)
Data was only partially written due to error
: Invalid argument

Using just -o doesn't work because it seems nandwrite writes the oob, but 
then since it doesn't write the main page in raw mode, the ecc gets 
overwritten. Strangely enough, the ECC doesn't seem to match the data 
written, as I get uncorrectable errors when reading back (not just with 
BCH, but also with the standard mtd built-in algorithm). Perhaps the oob 
gets written twice, once with my data and once more with the calculated 
ecc?

Is this a known bug, or are the some other options I should be using?

nandwrite is the latest from the git repository.

The kernel version I'm using is 2.6.35 .

/Ricard
-- 
Ricard Wolf Wanderlöf                           ricardw(at)axis.com
Axis Communications AB, Lund, Sweden            www.axis.com
Phone +46 46 272 2016                           Fax +46 46 13 61 30

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2011-04-01  8:29 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-03-29 15:30 How to write to nand with an image containing oob data, including ECC? Ricard Wanderlof
2011-03-29 15:42 ` Artem Bityutskiy
2011-03-29 22:00   ` Kelly Anderson
2011-03-30  7:33     ` Ricard Wanderlof
2011-04-01  8:27 ` Artem Bityutskiy

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox