summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBen Dooks <ben-mtd@fluff.org>2008-04-15 11:36:21 +0100
committerDavid Woodhouse <dwmw2@infradead.org>2008-04-22 21:41:19 +0100
commit1c21ab67b7d3c9a1296019939e0efb69350487cf (patch)
tree6050041e56b1f064dc38dd5c5e5493c9ab0caaa4
parentc45c6c68333c04de84c21a4b869f36a96f642779 (diff)
[MTD] [NAND] S3C2410 Allow ECC layout to be passed through platform data
Add support for the ECC layout to be passed via the platform data specified by the board. Signed-off-by: Ben Dooks <ben-linux@fluff.org> Signed-off-by: David Woodhouse <dwmw2@infradead.org>
-rw-r--r--drivers/mtd/nand/s3c2410.c3
-rw-r--r--include/asm-arm/plat-s3c/nand.h1
2 files changed, 4 insertions, 0 deletions
diff --git a/drivers/mtd/nand/s3c2410.c b/drivers/mtd/nand/s3c2410.c
index 35401f7b930..ccacc40e64e 100644
--- a/drivers/mtd/nand/s3c2410.c
+++ b/drivers/mtd/nand/s3c2410.c
@@ -672,6 +672,9 @@ static void s3c2410_nand_init_chip(struct s3c2410_nand_info *info,
} else {
chip->ecc.mode = NAND_ECC_SOFT;
}
+
+ if (set->ecc_layout != NULL)
+ chip->ecc.layout = set->ecc_layout;
}
/* s3c2410_nand_update_chip
diff --git a/include/asm-arm/plat-s3c/nand.h b/include/asm-arm/plat-s3c/nand.h
index ab278d5f63d..01d175b54bc 100644
--- a/include/asm-arm/plat-s3c/nand.h
+++ b/include/asm-arm/plat-s3c/nand.h
@@ -27,6 +27,7 @@ struct s3c2410_nand_set {
char *name;
int *nr_map;
struct mtd_partition *partitions;
+ struct nand_ecclayout *ecc_layout;
};
struct s3c2410_platform_nand {