mtd: cfi_cmdset_0002: fix delayed error detection on HyperFlash
authorSergei Shtylyov <sergei.shtylyov@cogentembedded.com>
Thu, 31 Oct 2019 20:39:39 +0000 (23:39 +0300)
committerVignesh Raghavendra <vigneshr@ti.com>
Sat, 9 Nov 2019 09:13:53 +0000 (14:43 +0530)
commitc15995695ea971253ea9507f6732c8cd35384e01
tree7417785435dce04916f460bbbdf1f9d7faaa947c
parent72914a8cff7e1d910c58e125e15a0da409e3135f
mtd: cfi_cmdset_0002: fix delayed error detection on HyperFlash

The commit 4844ef80305d ("mtd: cfi_cmdset_0002: Add support for polling
status register") added checking for the status register error bits into
chip_good() to only return 1 if these bits are 0s.  Unfortunately, this
means that polling using chip_good() always reaches a timeout condition
when erase or program failure bits are set. Let's fully delegate the task
of determining the error conditions to cfi_check_err_status() and make
chip_good() only look for the Device Ready/Busy condition.

Fixes: 4844ef80305d ("mtd: cfi_cmdset_0002: Add support for polling status register")
Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
drivers/mtd/chips/cfi_cmdset_0002.c