Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 79082457 authored by Rafał Miłecki's avatar Rafał Miłecki Committed by Boris Brezillon
Browse files

mtd: nand: set ECC algorithm in nand_dt_init



Use recently added of_get_nand_ecc_algo for that.

Signed-off-by: default avatarRafał Miłecki <zajec5@gmail.com>
Signed-off-by: default avatarBoris Brezillon <boris.brezillon@free-electrons.com>
parent dd2dcc00
Loading
Loading
Loading
Loading
+5 −1
Original line number Diff line number Diff line
@@ -3954,7 +3954,7 @@ static struct nand_flash_dev *nand_get_flash_type(struct mtd_info *mtd,
static int nand_dt_init(struct nand_chip *chip)
{
	struct device_node *dn = nand_get_flash_node(chip);
	int ecc_mode, ecc_strength, ecc_step;
	int ecc_mode, ecc_algo, ecc_strength, ecc_step;

	if (!dn)
		return 0;
@@ -3966,6 +3966,7 @@ static int nand_dt_init(struct nand_chip *chip)
		chip->bbt_options |= NAND_BBT_USE_FLASH;

	ecc_mode = of_get_nand_ecc_mode(dn);
	ecc_algo = of_get_nand_ecc_algo(dn);
	ecc_strength = of_get_nand_ecc_strength(dn);
	ecc_step = of_get_nand_ecc_step_size(dn);

@@ -3978,6 +3979,9 @@ static int nand_dt_init(struct nand_chip *chip)
	if (ecc_mode >= 0)
		chip->ecc.mode = ecc_mode;

	if (ecc_algo >= 0)
		chip->ecc.algo = ecc_algo;

	if (ecc_strength >= 0)
		chip->ecc.strength = ecc_strength;