summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJason Liu <r64343@freescale.com>2008-03-19 23:54:25 -0500
committerDaniel Schaeffer <daniel.schaeffer@timesys.com>2008-08-25 15:20:51 -0400
commitdc3aef05ed5bf626fd4d36a9e75a9e34735e1f58 (patch)
treee103b65fd9e143ef9307d879814522ceda07142f
parent5ba764e621e6e664ff0237c77b9ced6e322fcd80 (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.c3
-rw-r--r--drivers/mtd/nand/mxc_nd2.c5
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) {