diff options
author | Jason Liu <r64343@freescale.com> | 2008-03-19 23:54:25 -0500 |
---|---|---|
committer | Daniel Schaeffer <daniel.schaeffer@timesys.com> | 2008-08-25 15:20:51 -0400 |
commit | dc3aef05ed5bf626fd4d36a9e75a9e34735e1f58 (patch) | |
tree | e103b65fd9e143ef9307d879814522ceda07142f | |
parent | 5ba764e621e6e664ff0237c77b9ced6e322fcd80 (diff) |
ENGR00069349 enable nand flash based bad block table update for all platforms
Orrignally, the bbt on nand flash will be updated only on mx37
when block gone bad during use.
Now, we will spread it to all the platfroms for all page size.
Signed-off-by: Jason Liu <r64343@freescale.com>
-rw-r--r-- | drivers/mtd/nand/mxc_nd.c | 3 | ||||
-rw-r--r-- | drivers/mtd/nand/mxc_nd2.c | 5 |
2 files changed, 6 insertions, 2 deletions
diff --git a/drivers/mtd/nand/mxc_nd.c b/drivers/mtd/nand/mxc_nd.c index 3eba30acae5a..507b346336f0 100644 --- a/drivers/mtd/nand/mxc_nd.c +++ b/drivers/mtd/nand/mxc_nd.c @@ -1117,6 +1117,9 @@ static int mxc_nand_scan_bbt(struct mtd_info *mtd) this->bbt_td = &bbt_main_descr; this->bbt_md = &bbt_mirror_descr; + /* update flash based bbt */ + this->options |= NAND_USE_FLASH_BBT; + if (!this->badblock_pattern) { if (mtd->writesize == 2048) this->badblock_pattern = &smallpage_memorybased; diff --git a/drivers/mtd/nand/mxc_nd2.c b/drivers/mtd/nand/mxc_nd2.c index 182cfae08d07..51b4ec5a16d9 100644 --- a/drivers/mtd/nand/mxc_nd2.c +++ b/drivers/mtd/nand/mxc_nd2.c @@ -990,6 +990,9 @@ static int mxc_nand_scan_bbt(struct mtd_info *mtd) this->bbt_td = &bbt_main_descr; this->bbt_md = &bbt_mirror_descr; + /* update flash based bbt */ + this->options |= NAND_USE_FLASH_BBT; + if (!this->badblock_pattern) { this->badblock_pattern = (mtd->writesize > 512) ? &largepage_memorybased : &smallpage_memorybased; @@ -1052,8 +1055,6 @@ static int __init mxcnd_probe(struct platform_device *pdev) this->read_buf = mxc_nand_read_buf; this->verify_buf = mxc_nand_verify_buf; this->scan_bbt = mxc_nand_scan_bbt; - if (IS_4K_PAGE_NAND) - this->options |= NAND_USE_FLASH_BBT; /* always use flash based bbt */ /* NAND bus width determines access funtions used by upper layer */ if (flash->width == 2) { |