summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGerlando Falauto <[email protected]>2013-01-15 22:34:28 +0000
committerPrafulla Wadaskar <[email protected]>2013-04-12 21:42:01 +0530
commit7070b550bee9341bcb53ceda15f9e0a58df88140 (patch)
tree1b28d99bed7c0d8a7edbdf0efce07cc097166770
parentc97b6df1ae92679d67f94c1cfef51323782a506d (diff)
kirkwood_nand: allow usage of NAND_ECC_SOFT_BCH
If CONFIG_NAND_ECC_BCH is set use 4-bit error correction code instead of the 1-bit error correction code on the NAND device. Signed-off-by: Gerlando Falauto <[email protected]> Signed-off-by: Holger Brunck <[email protected]> cc: Valentin Longchamp <[email protected]> cc: Prafulla Wadaskar <[email protected]> Acked-by: Prafulla Wadaskar <[email protected]> Acked-by: Scott Wood <[email protected]>
-rw-r--r--drivers/mtd/nand/kirkwood_nand.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/mtd/nand/kirkwood_nand.c b/drivers/mtd/nand/kirkwood_nand.c
index bdab5aa795b..0a99a10de17 100644
--- a/drivers/mtd/nand/kirkwood_nand.c
+++ b/drivers/mtd/nand/kirkwood_nand.c
@@ -74,7 +74,11 @@ void kw_nand_select_chip(struct mtd_info *mtd, int chip)
int board_nand_init(struct nand_chip *nand)
{
nand->options = NAND_COPYBACK | NAND_CACHEPRG | NAND_NO_PADDING;
+#if defined(CONFIG_NAND_ECC_BCH)
+ nand->ecc.mode = NAND_ECC_SOFT_BCH;
+#else
nand->ecc.mode = NAND_ECC_SOFT;
+#endif
nand->cmd_ctrl = kw_nand_hwcontrol;
nand->chip_delay = 40;
nand->select_chip = kw_nand_select_chip;