summaryrefslogtreecommitdiffstats
path: root/drivers/mtd/nand/atmel_nand.c
diff options
context:
space:
mode:
authorLadislav Michl <ladis@linux-mips.org>2018-10-28 22:23:22 +0100
committerSascha Hauer <s.hauer@pengutronix.de>2018-12-14 20:20:27 +0100
commitbabffbb19350d0119f128390c80101dbedd4dbca (patch)
treed4e55c57cbca8f34bcf935adf1b89c3653321e96 /drivers/mtd/nand/atmel_nand.c
parent3c9c9a6fee481e7d365455625e69f398680127e8 (diff)
downloadbarebox-babffbb19350d0119f128390c80101dbedd4dbca.tar.gz
barebox-babffbb19350d0119f128390c80101dbedd4dbca.tar.xz
mtd: atmel_nand: Add per board ECC setup
Signed-off-by: Ladislav Michl <ladis@linux-mips.org> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'drivers/mtd/nand/atmel_nand.c')
-rw-r--r--drivers/mtd/nand/atmel_nand.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/mtd/nand/atmel_nand.c b/drivers/mtd/nand/atmel_nand.c
index 4c1725d096..b4d4e79d91 100644
--- a/drivers/mtd/nand/atmel_nand.c
+++ b/drivers/mtd/nand/atmel_nand.c
@@ -1297,6 +1297,7 @@ static int atmel_hw_nand_init_params(struct device_d *dev,
nand_chip->ecc.hwctl = atmel_nand_hwctl;
nand_chip->ecc.read_page = atmel_nand_read_page;
nand_chip->ecc.bytes = 4;
+ nand_chip->ecc.strength = 1;
return 0;
}
@@ -1387,6 +1388,8 @@ static int __init atmel_nand_probe(struct device_d *dev)
}
nand_chip->ecc.mode = pdata->ecc_mode;
+ nand_chip->ecc.strength = pdata->ecc_strength ? : 1;
+ nand_chip->ecc.size = 1 << pdata->ecc_size_shift ? : 512;
if (IS_ENABLED(CONFIG_NAND_ECC_HW) &&
pdata->ecc_mode == NAND_ECC_HW) {