diff options
-rw-r--r-- | drivers/mtd/nand/davinci_nand.c | 3 | ||||
-rw-r--r-- | drivers/mtd/nand/omap2.c | 2 |
2 files changed, 4 insertions, 1 deletions
diff --git a/drivers/mtd/nand/davinci_nand.c b/drivers/mtd/nand/davinci_nand.c index cc07ba0f044d..27fa8b87cd5f 100644 --- a/drivers/mtd/nand/davinci_nand.c +++ b/drivers/mtd/nand/davinci_nand.c | |||
@@ -240,6 +240,9 @@ static void nand_davinci_hwctl_4bit(struct mtd_info *mtd, int mode) | |||
240 | unsigned long flags; | 240 | unsigned long flags; |
241 | u32 val; | 241 | u32 val; |
242 | 242 | ||
243 | /* Reset ECC hardware */ | ||
244 | davinci_nand_readl(info, NAND_4BIT_ECC1_OFFSET); | ||
245 | |||
243 | spin_lock_irqsave(&davinci_nand_lock, flags); | 246 | spin_lock_irqsave(&davinci_nand_lock, flags); |
244 | 247 | ||
245 | /* Start 4-bit ECC calculation for read/write */ | 248 | /* Start 4-bit ECC calculation for read/write */ |
diff --git a/drivers/mtd/nand/omap2.c b/drivers/mtd/nand/omap2.c index a59361c36f40..5513bfd9cdc9 100644 --- a/drivers/mtd/nand/omap2.c +++ b/drivers/mtd/nand/omap2.c | |||
@@ -2169,7 +2169,7 @@ scan_tail: | |||
2169 | return 0; | 2169 | return 0; |
2170 | 2170 | ||
2171 | return_error: | 2171 | return_error: |
2172 | if (info->dma) | 2172 | if (!IS_ERR_OR_NULL(info->dma)) |
2173 | dma_release_channel(info->dma); | 2173 | dma_release_channel(info->dma); |
2174 | if (nand_chip->ecc.priv) { | 2174 | if (nand_chip->ecc.priv) { |
2175 | nand_bch_free(nand_chip->ecc.priv); | 2175 | nand_bch_free(nand_chip->ecc.priv); |