From ee782e877d8c50f3ed775aee8934565699a5fc99 Mon Sep 17 00:00:00 2001 From: mokopatches Date: Wed, 16 Jul 2008 14:44:10 +0100 Subject: [PATCH] s3c2410-bbt.patch [PATCH] Add Kconfig option to enable NAND bad-block-table support for s3c2410 This patch adds a new CONFIG_MTD_NAND_S3C2410_BBT which, if enabled, asks the mtd NAND core to use a bad-block table. Signed-off-by: Harald Welte --- drivers/mtd/nand/s3c2410.c | 6 +++++- include/asm-arm/plat-s3c/nand.h | 3 +++ 2 files changed, 8 insertions(+), 1 deletions(-) diff --git a/drivers/mtd/nand/s3c2410.c b/drivers/mtd/nand/s3c2410.c index 101b6b5..cd2e1da 100644 --- a/drivers/mtd/nand/s3c2410.c +++ b/drivers/mtd/nand/s3c2410.c @@ -619,9 +619,13 @@ static void s3c2410_nand_init_chip(struct s3c2410_nand_info *info, chip->select_chip = s3c2410_nand_select_chip; chip->chip_delay = 50; chip->priv = nmtd; - chip->options = 0; chip->controller = &info->controller; + if (set->flags & S3C2410_NAND_BBT) + chip->options = NAND_USE_FLASH_BBT; + else + chip->options = 0; + switch (info->cpu_type) { case TYPE_S3C2410: chip->IO_ADDR_W = regs + S3C2410_NFDATA; diff --git a/include/asm-arm/plat-s3c/nand.h b/include/asm-arm/plat-s3c/nand.h index ad6bbe9..54f479e 100644 --- a/include/asm-arm/plat-s3c/nand.h +++ b/include/asm-arm/plat-s3c/nand.h @@ -21,11 +21,14 @@ * partitions = mtd partition list */ +#define S3C2410_NAND_BBT 0x0001 + struct s3c2410_nand_set { unsigned int disable_ecc : 1; int nr_chips; int nr_partitions; + unsigned int flags; char *name; int *nr_map; struct mtd_partition *partitions; -- 1.5.6.3