nand: reinstate lazy bad block scanning
Commitff94bc40af
("mtd, ubi, ubifs: resync with Linux-3.14") accidentally reverted part of the commit13f0fd94e3
("NAND: Scan bad blocks lazily."). Reinstate the change as by commitfb49454b1b
("nand: reinstate lazy bad block scanning") Signed-off-by: Rostislav Lisovy <lisovy@merica.cz> Acked-by: Heiko Schocher <hs@denx.de>
This commit is contained in:
parent
85bafb6da4
commit
35c204d8a9
@ -634,6 +634,11 @@ static int nand_block_checkbad(struct mtd_info *mtd, loff_t ofs, int getchip,
|
|||||||
{
|
{
|
||||||
struct nand_chip *chip = mtd->priv;
|
struct nand_chip *chip = mtd->priv;
|
||||||
|
|
||||||
|
if (!(chip->options & NAND_BBT_SCANNED)) {
|
||||||
|
chip->scan_bbt(mtd);
|
||||||
|
chip->options |= NAND_BBT_SCANNED;
|
||||||
|
}
|
||||||
|
|
||||||
if (!chip->bbt)
|
if (!chip->bbt)
|
||||||
return chip->block_bad(mtd, ofs, getchip);
|
return chip->block_bad(mtd, ofs, getchip);
|
||||||
|
|
||||||
@ -4322,10 +4327,9 @@ int nand_scan_tail(struct mtd_info *mtd)
|
|||||||
|
|
||||||
/* Check, if we should skip the bad block table scan */
|
/* Check, if we should skip the bad block table scan */
|
||||||
if (chip->options & NAND_SKIP_BBTSCAN)
|
if (chip->options & NAND_SKIP_BBTSCAN)
|
||||||
return 0;
|
chip->options |= NAND_BBT_SCANNED;
|
||||||
|
|
||||||
/* Build bad block table */
|
return 0;
|
||||||
return chip->scan_bbt(mtd);
|
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL(nand_scan_tail);
|
EXPORT_SYMBOL(nand_scan_tail);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user