[PATCH] mtd: cfi_cmdset_0002: Change write buffer to check correct value

smtpuser smtpuser at allied-telesis.co.jp
Mon May 7 21:45:34 PDT 2018


From: Tokunori Ikegami <ikegami at allied-telesis.co.jp>

For the word write it is checked if the chip has the correct value.
But it is not checked for the write buffer as only checked if ready.
To make sure for the write buffer change to check the value.

Signed-off-by: Tokunori Ikegami <ikegami at allied-telesis.co.jp>
Cc: Chris Packham <chris.packham at alliedtelesis.co.nz>
Cc: David Woodhouse <dwmw2 at infradead.org>
Cc: Boris Brezillon <boris.brezillon at free-electrons.com>
Cc: Marek Vasut <marek.vasut at gmail.com>
Cc: Richard Weinberger <richard at nod.at>
Cc: Cyrille Pitchen <cyrille.pitchen at wedev4u.fr>
Cc: linux-mtd at lists.infradead.org
---
 drivers/mtd/chips/cfi_cmdset_0002.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/mtd/chips/cfi_cmdset_0002.c b/drivers/mtd/chips/cfi_cmdset_0002.c
index 56aa6b75213d..5e9f2ca0a6c1 100644
--- a/drivers/mtd/chips/cfi_cmdset_0002.c
+++ b/drivers/mtd/chips/cfi_cmdset_0002.c
@@ -1879,7 +1879,7 @@ static int __xipram do_write_buffer(struct map_info *map, struct flchip *chip,
 		if (time_after(jiffies, timeo) && !chip_ready(map, adr))
 			break;
 
-		if (chip_ready(map, adr)) {
+		if (chip_ready(map, adr) && chip_good(map, adr, datum)) {
 			xip_enable(map, chip, adr);
 			goto op_done;
 		}
-- 
2.16.1




More information about the linux-mtd mailing list