Message ID | 1372777915-12390-1-git-send-email-marex@denx.de |
---|---|
State | Superseded |
Delegated to: | Scott Wood |
Headers | show |
diff --git a/drivers/mtd/nand/mxc_nand.c b/drivers/mtd/nand/mxc_nand.c index ac435f2..08c7b8b 100644 --- a/drivers/mtd/nand/mxc_nand.c +++ b/drivers/mtd/nand/mxc_nand.c @@ -1238,15 +1238,12 @@ int board_nand_init(struct nand_chip *this) this->ecc.write_oob = mxc_nand_write_oob_syndrome; this->ecc.bytes = 9; this->ecc.prepad = 7; - } else { - this->ecc.mode = NAND_ECC_HW; - } - - if (this->ecc.mode == NAND_ECC_HW) { if (is_mxc_nfc_1()) this->ecc.strength = 1; else this->ecc.strength = 4; + } else { + this->ecc.mode = NAND_ECC_HW; } host->pagesize_2k = 0;
The driver triggered a BUG() in nand_base.c:3214/nand_scan_tail() because the ecc.strength was incorrectly set in case of NAND_ECC_HW instead of NAND_ECC_HW_SYNDROME ECC mode. Signed-off-by: Marek Vasut <marex@denx.de> Cc: Benoît Thébaudeau <benoit.thebaudeau@advansee.com> Cc: Fabio Estevam <fabio.estevam@freescale.com> Cc: Scott Wood <scottwood@freescale.com> --- drivers/mtd/nand/mxc_nand.c | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-)