diff options
Diffstat (limited to 'drivers/mtd/nand/nand_base.c')
-rw-r--r-- | drivers/mtd/nand/nand_base.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/drivers/mtd/nand/nand_base.c b/drivers/mtd/nand/nand_base.c index e29c1da7f56e..85a7283845ff 100644 --- a/drivers/mtd/nand/nand_base.c +++ b/drivers/mtd/nand/nand_base.c | |||
@@ -2469,8 +2469,12 @@ int nand_scan_tail(struct mtd_info *mtd) | |||
2469 | chip->ecc.write_oob = nand_write_oob_std; | 2469 | chip->ecc.write_oob = nand_write_oob_std; |
2470 | 2470 | ||
2471 | case NAND_ECC_HW_SYNDROME: | 2471 | case NAND_ECC_HW_SYNDROME: |
2472 | if (!chip->ecc.calculate || !chip->ecc.correct || | 2472 | if ((!chip->ecc.calculate || !chip->ecc.correct || |
2473 | !chip->ecc.hwctl) { | 2473 | !chip->ecc.hwctl) && |
2474 | (!chip->ecc.read_page || | ||
2475 | chip->ecc.read_page == nand_read_page_hwecc) || | ||
2476 | !chip->ecc.write_page || | ||
2477 | chip->ecc.write_page == nand_write_page_hwecc) { | ||
2474 | printk(KERN_WARNING "No ECC functions supplied, " | 2478 | printk(KERN_WARNING "No ECC functions supplied, " |
2475 | "Hardware ECC not possible\n"); | 2479 | "Hardware ECC not possible\n"); |
2476 | BUG(); | 2480 | BUG(); |