aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/mtd/nand_ecc.h
diff options
context:
space:
mode:
authorAtsushi Nemoto <anemo@mba.ocn.ne.jp>2009-09-05 01:20:43 +0900
committerDavid Woodhouse <David.Woodhouse@intel.com>2009-09-19 14:20:25 -0700
commitbe2f092bfc4f6a415bb4c3e2dcbf521a1f2a0fe5 (patch)
tree7994454518bdfd2977a2866befcec8983647188e /include/linux/mtd/nand_ecc.h
parentmtd: cfi_cmdset_0002: add 0xFF intolerance for M29W128G (diff)
downloadlinux-dev-be2f092bfc4f6a415bb4c3e2dcbf521a1f2a0fe5.tar.xz
linux-dev-be2f092bfc4f6a415bb4c3e2dcbf521a1f2a0fe5.zip
mtd: nand: add __nand_correct_data helper function
Split nand_correct_data() into two part, a pure calculation function and a wrapper for mtd interface. The tmio_nand driver can implement its ecc.correct function easily using this __nand_correct_data helper. Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp> Acked-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com> Acked-by: Vimal Singh <vimalsingh@ti.com> Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
Diffstat (limited to 'include/linux/mtd/nand_ecc.h')
-rw-r--r--include/linux/mtd/nand_ecc.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/include/linux/mtd/nand_ecc.h b/include/linux/mtd/nand_ecc.h
index 090da505425d..052ea8ca2434 100644
--- a/include/linux/mtd/nand_ecc.h
+++ b/include/linux/mtd/nand_ecc.h
@@ -21,6 +21,12 @@ struct mtd_info;
int nand_calculate_ecc(struct mtd_info *mtd, const u_char *dat, u_char *ecc_code);
/*
+ * Detect and correct a 1 bit error for eccsize byte block
+ */
+int __nand_correct_data(u_char *dat, u_char *read_ecc, u_char *calc_ecc,
+ unsigned int eccsize);
+
+/*
* Detect and correct a 1 bit error for 256 byte block
*/
int nand_correct_data(struct mtd_info *mtd, u_char *dat, u_char *read_ecc, u_char *calc_ecc);