From 04f899fc465c3e44f2b55ecc70618f5696fc0ddf Mon Sep 17 00:00:00 2001
From: Nick Spence <Nick.Spence@freescale.com>
Date: Sat, 30 Sep 2006 00:32:59 -0700
Subject: [PATCH] NAND Flash verify across block boundaries

This patch addresses a problem when CONFIG_MTD_NAND_VERIFY_WRITE is
defined
and the write crosses a block boundary. The pointer to the verification
buffer (bufstart) is not being updated to reflect the starting of the
new
block so the verification of the second block fails.

CHANGELOG:

* Fix NAND FLASH page verification across block boundaries
---
 drivers/nand/nand_base.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/nand/nand_base.c b/drivers/nand/nand_base.c
index b7a5d32fb3..6b13c4e0e3 100644
--- a/drivers/nand/nand_base.c
+++ b/drivers/nand/nand_base.c
@@ -1713,6 +1713,7 @@ static int nand_write_ecc (struct mtd_info *mtd, loff_t to, size_t len,
 				goto out;
 			}
 			*retlen = written;
+			bufstart = (u_char*) &buf[written];
 
 			ofs = autoplace ? mtd->oobavail : mtd->oobsize;
 			if (eccbuf)
-- 
GitLab