diff mbox

[U-Boot,2/5] altera_qspi: set fail_addr for erase ops

Message ID 1450918284-16174-2-git-send-email-thomas@wytron.com.tw
State Accepted, archived
Delegated to: Thomas Chou
Headers show

Commit Message

Thomas Chou Dec. 24, 2015, 12:51 a.m. UTC
If the erase fails, fail_addr might indicate exactly which block
failed. If fail_addr = MTD_FAIL_ADDR_UNKNOWN, the failure was not
at the device level or was not specific to any particular block.

Signed-off-by: Thomas Chou <thomas@wytron.com.tw>
---
 drivers/mtd/altera_qspi.c | 1 +
 1 file changed, 1 insertion(+)

Comments

Thomas Chou Dec. 28, 2015, 1:34 a.m. UTC | #1
On 2015年12月24日 08:51, Thomas Chou wrote:
> If the erase fails, fail_addr might indicate exactly which block
> failed. If fail_addr = MTD_FAIL_ADDR_UNKNOWN, the failure was not
> at the device level or was not specific to any particular block.
>
> Signed-off-by: Thomas Chou <thomas@wytron.com.tw>
> ---
>   drivers/mtd/altera_qspi.c | 1 +
>   1 file changed, 1 insertion(+)
>

Applied to u-boot-nios.
diff mbox

Patch

diff --git a/drivers/mtd/altera_qspi.c b/drivers/mtd/altera_qspi.c
index 627a8cc..b0d4f2c 100644
--- a/drivers/mtd/altera_qspi.c
+++ b/drivers/mtd/altera_qspi.c
@@ -145,6 +145,7 @@  static int altera_qspi_erase(struct mtd_info *mtd, struct erase_info *instr)
 			/* erase failed, sector might be protected */
 			debug("erase %08x fail %x\n", sect, stat);
 			writel(stat, &regs->isr); /* clear isr */
+			instr->fail_addr = addr;
 			instr->state = MTD_ERASE_FAILED;
 			mtd_erase_callback(instr);
 			return -EIO;