| From: Tokunori Ikegami <ikegami@allied-telesis.co.jp> |
| Date: Wed, 30 May 2018 18:32:26 +0900 |
| Subject: mtd: cfi_cmdset_0002: Change write buffer to check correct value |
| |
| commit dfeae1073583dc35c33b32150e18b7048bbb37e6 upstream. |
| |
| 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. |
| |
| It is enough as this patch is only checking the last written word. |
| Since it is described by data sheets to check the operation status. |
| |
| Signed-off-by: Tokunori Ikegami <ikegami@allied-telesis.co.jp> |
| Reviewed-by: Joakim Tjernlund <Joakim.Tjernlund@infinera.com> |
| Cc: Chris Packham <chris.packham@alliedtelesis.co.nz> |
| Cc: Brian Norris <computersforpeace@gmail.com> |
| Cc: David Woodhouse <dwmw2@infradead.org> |
| Cc: Boris Brezillon <boris.brezillon@free-electrons.com> |
| Cc: Marek Vasut <marek.vasut@gmail.com> |
| Cc: Richard Weinberger <richard@nod.at> |
| Cc: Cyrille Pitchen <cyrille.pitchen@wedev4u.fr> |
| Cc: linux-mtd@lists.infradead.org |
| Signed-off-by: Boris Brezillon <boris.brezillon@bootlin.com> |
| Signed-off-by: Ben Hutchings <ben@decadent.org.uk> |
| --- |
| drivers/mtd/chips/cfi_cmdset_0002.c | 2 +- |
| 1 file changed, 1 insertion(+), 1 deletion(-) |
| |
| --- a/drivers/mtd/chips/cfi_cmdset_0002.c |
| +++ b/drivers/mtd/chips/cfi_cmdset_0002.c |
| @@ -1541,7 +1541,7 @@ static int __xipram do_write_buffer(stru |
| if (time_after(jiffies, timeo) && !chip_ready(map, adr)) |
| break; |
| |
| - if (chip_ready(map, adr)) { |
| + if (chip_good(map, adr, datum)) { |
| xip_enable(map, chip, adr); |
| goto op_done; |
| } |