Message ID | 20210224232553.23477-1-farhan.ali@broadcom.com |
---|---|
State | Accepted |
Commit | c146de48727da66ea7dc43f12bd41814cff2faa8 |
Delegated to: | Tom Rini |
Headers | show |
Series | mtd: Update fail_addr when erase fails due to bad blocks | expand |
On Wed, Feb 24, 2021 at 03:25:53PM -0800, Farhan Ali wrote: > For all other erase failures, the fail_addr is updated with the > failing address. Only in the case of erase failure due to bad block > detection, the fail_addr is not updated. This change simply updates > the fail_addr for this specific scenario so that it is consistent with > the rest of the code. > > Signed-off-by: Farhan Ali <farhan.ali@broadcom.com> Applied to u-boot/master, thanks!
diff --git a/drivers/mtd/nand/raw/nand_base.c b/drivers/mtd/nand/raw/nand_base.c index 6557fad..3679ee7 100644 --- a/drivers/mtd/nand/raw/nand_base.c +++ b/drivers/mtd/nand/raw/nand_base.c @@ -3559,6 +3559,8 @@ int nand_erase_nand(struct mtd_info *mtd, struct erase_info *instr, pr_warn("%s: attempt to erase a bad block at page 0x%08x\n", __func__, page); instr->state = MTD_ERASE_FAILED; + instr->fail_addr = + ((loff_t)page << chip->page_shift); goto erase_exit; }
For all other erase failures, the fail_addr is updated with the failing address. Only in the case of erase failure due to bad block detection, the fail_addr is not updated. This change simply updates the fail_addr for this specific scenario so that it is consistent with the rest of the code. Signed-off-by: Farhan Ali <farhan.ali@broadcom.com> --- Cc: Simon Glass <sjg@chromium.org> drivers/mtd/nand/raw/nand_base.c | 2 ++ 1 file changed, 2 insertions(+)