Name

nand_verify_pages — [GENERIC] verify the chip contents after a write

Synopsis

int nand_verify_pages (struct mtd_info *  mtd,
 struct nand_chip *  this,
 int  page,
 int  numpages,
 u_char *  oob_buf,
 struct nand_oobinfo *  oobsel,
 int  chipnr,
 int  oobmode);

Arguments

mtd

MTD device structure

this

NAND chip structure

page

startpage inside the chip, must be called with (page & this->pagemask)

numpages

number of pages to verify

oob_buf

out of band data buffer

oobsel

out of band selecttion structre

chipnr

number of the current chip

oobmode

1 = full buffer verify, 0 = ecc only

Description

The NAND device assumes that it is always writing to a cleanly erased page. Hence, it performs its internal write verification only on bits that transitioned from 1 to 0. The device does NOT verify the whole page on a byte by byte basis. It is possible that the page was not completely erased or the page is becoming unusable due to wear. The read with ECC would catch the error later when the ECC page check fails, but we would rather catch it early in the page write stage. Better to write no data than invalid data.