]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/commitdiff
mtd: nand: qcom: fix config error for BCH
authorAbhishek Sahu <absahu@codeaurora.org>
Thu, 3 Aug 2017 15:56:39 +0000 (17:56 +0200)
committerSeth Forshee <seth.forshee@canonical.com>
Fri, 15 Sep 2017 16:15:07 +0000 (09:15 -0700)
BugLink: http://bugs.launchpad.net/bugs/1717549
commit 10777de570016471fd929869c7830a7772893e39 upstream.

The configuration for BCH is not correct in the current driver.
The ECC_CFG_ECC_DISABLE bit defines whether to enable or disable the
BCH ECC in which

0x1 : BCH_DISABLED
0x0 : BCH_ENABLED

But currently host->bch_enabled is being assigned to BCH_DISABLED.

Fixes: c76b78d8ec05a ("mtd: nand: Qualcomm NAND controller driver")
Signed-off-by: Abhishek Sahu <absahu@codeaurora.org>
Reviewed-by: Archit Taneja <architt@codeaurora.org>
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Seth Forshee <seth.forshee@canonical.com>
drivers/mtd/nand/qcom_nandc.c

index 573a72799a83538f7c25d422ad5021f5bc968578..8928500b5bdee3b97f7a0b7b06d9a96aa548532c 100644 (file)
@@ -1900,7 +1900,7 @@ static int qcom_nand_host_setup(struct qcom_nand_host *host)
                                | wide_bus << WIDE_FLASH
                                | 1 << DEV0_CFG1_ECC_DISABLE;
 
-       host->ecc_bch_cfg = host->bch_enabled << ECC_CFG_ECC_DISABLE
+       host->ecc_bch_cfg = !host->bch_enabled << ECC_CFG_ECC_DISABLE
                                | 0 << ECC_SW_RESET
                                | host->cw_data << ECC_NUM_DATA_BYTES
                                | 1 << ECC_FORCE_CLK_OPEN