The change is based on the fix for flash erase to use chip_good() done in the past. And it is fixed as same way in the OpenWrt Project as below. <https://git.openwrt.org/?p=openwrt/openwrt.git;a=commitdiff;h=ddc11c3932> Also includes some refactoring changes. Signed-off-by: Tokunori Ikegami <ikegami.t@xxxxxxxxx> Cc: Fabio Bettoni <fbettoni@xxxxxxxxx> Co: Hauke Mehrtens <hauke@xxxxxxxxxx> Cc: Chris Packham <chris.packham@xxxxxxxxxxxxxxxxxxx> Cc: Joakim Tjernlund <Joakim.Tjernlund@xxxxxxxxxxxx> Cc: linux-mtd@xxxxxxxxxxxxxxxxxxx Tokunori Ikegami (9): mtd: cfi_cmdset_0002: Use chip_good() to retry in do_write_oneword() mtd: cfi_cmdset_0002: Remove goto statement from do_write_buffer() mtd: cfi_cmdset_0002: Split do_write_oneword() to reduce function size mtd: cfi_cmdset_0002: Split do_write_oneword() op_done goto statement mtd: cfi_cmdset_0002: Remove op_done goto statement from do_write_oneword() mtd: cfi_cmdset_0002: Split write-to-buffer-reset sequence mtd: cfi_cmdset_0002: Split to wait write buffer to check if completed mtd: cfi_cmdset_0002: Split do_write_oneword() to reduce exit paths mtd: cfi_cmdset_0002: Disable write buffer functions if FORCE_WORD_WRITE is 1 drivers/mtd/chips/cfi_cmdset_0002.c | 296 ++++++++++++++++++++++-------------- 1 file changed, 184 insertions(+), 112 deletions(-) -- 2.11.0 ______________________________________________________ Linux MTD discussion mailing list http://lists.infradead.org/mailman/listinfo/linux-mtd/