diff options
Diffstat (limited to 'drivers/mtd/nand/raw/ndfc.c')
| -rw-r--r-- | drivers/mtd/nand/raw/ndfc.c | 19 |
1 files changed, 4 insertions, 15 deletions
diff --git a/drivers/mtd/nand/raw/ndfc.c b/drivers/mtd/nand/raw/ndfc.c index 98d5a94c3a24..13365128194d 100644 --- a/drivers/mtd/nand/raw/ndfc.c +++ b/drivers/mtd/nand/raw/ndfc.c @@ -22,9 +22,9 @@ #include <linux/mtd/ndfc.h> #include <linux/slab.h> #include <linux/mtd/mtd.h> -#include <linux/mtd/nand-ecc-sw-hamming.h> +#include <linux/of.h> #include <linux/of_address.h> -#include <linux/of_platform.h> +#include <linux/platform_device.h> #include <asm/io.h> #define NDFC_MAX_CS 4 @@ -101,15 +101,6 @@ static int ndfc_calculate_ecc(struct nand_chip *chip, return 0; } -static int ndfc_correct_ecc(struct nand_chip *chip, - unsigned char *buf, - unsigned char *read_ecc, - unsigned char *calc_ecc) -{ - return ecc_sw_hamming_correct(buf, read_ecc, calc_ecc, - chip->ecc.size, false); -} - /* * Speedups for buffer read/write/verify * @@ -155,7 +146,7 @@ static int ndfc_chip_init(struct ndfc_controller *ndfc, chip->controller = &ndfc->ndfc_control; chip->legacy.read_buf = ndfc_read_buf; chip->legacy.write_buf = ndfc_write_buf; - chip->ecc.correct = ndfc_correct_ecc; + chip->ecc.correct = rawnand_sw_hamming_correct; chip->ecc.hwctl = ndfc_enable_hwecc; chip->ecc.calculate = ndfc_calculate_ecc; chip->ecc.engine_type = NAND_ECC_ENGINE_TYPE_ON_HOST; @@ -250,7 +241,7 @@ static int ndfc_probe(struct platform_device *ofdev) return 0; } -static int ndfc_remove(struct platform_device *ofdev) +static void ndfc_remove(struct platform_device *ofdev) { struct ndfc_controller *ndfc = dev_get_drvdata(&ofdev->dev); struct nand_chip *chip = &ndfc->chip; @@ -261,8 +252,6 @@ static int ndfc_remove(struct platform_device *ofdev) WARN_ON(ret); nand_cleanup(chip); kfree(mtd->name); - - return 0; } static const struct of_device_id ndfc_match[] = { |
