Lines Matching refs:ecc
566 int i, eccsteps, eccsize = chip->ecc.size; in zynq_nand_write_page_hwecc()
569 u32 *eccpos = chip->ecc.layout->eccpos; in zynq_nand_write_page_hwecc()
574 for (eccsteps = chip->ecc.steps; (eccsteps - 1); eccsteps--) { in zynq_nand_write_page_hwecc()
589 chip->ecc.calculate(mtd, p, &ecc_calc[0]); in zynq_nand_write_page_hwecc()
591 for (i = 0; i < chip->ecc.total; i++) in zynq_nand_write_page_hwecc()
624 int i, eccsize = chip->ecc.size; in zynq_nand_write_page_swecc()
625 int eccbytes = chip->ecc.bytes; in zynq_nand_write_page_swecc()
626 int eccsteps = chip->ecc.steps; in zynq_nand_write_page_swecc()
629 u32 *eccpos = chip->ecc.layout->eccpos; in zynq_nand_write_page_swecc()
633 chip->ecc.calculate(mtd, p, &ecc_calc[i]); in zynq_nand_write_page_swecc()
635 for (i = 0; i < chip->ecc.total; i++) in zynq_nand_write_page_swecc()
638 return chip->ecc.write_page_raw(mtd, chip, buf, 1, page); in zynq_nand_write_page_swecc()
657 int i, stat, eccsteps, eccsize = chip->ecc.size; in zynq_nand_read_page_hwecc()
658 int eccbytes = chip->ecc.bytes; in zynq_nand_read_page_hwecc()
662 u32 *eccpos = chip->ecc.layout->eccpos; in zynq_nand_read_page_hwecc()
667 for (eccsteps = chip->ecc.steps; (eccsteps - 1); eccsteps--) { in zynq_nand_read_page_hwecc()
682 chip->ecc.calculate(mtd, p, &ecc_calc[0]); in zynq_nand_read_page_hwecc()
701 for (i = 0; i < chip->ecc.total; i++) in zynq_nand_read_page_hwecc()
704 eccsteps = chip->ecc.steps; in zynq_nand_read_page_hwecc()
709 stat = chip->ecc.correct(mtd, p, &ecc_code[i], &ecc_calc[i]); in zynq_nand_read_page_hwecc()
729 int i, eccsize = chip->ecc.size; in zynq_nand_read_page_swecc()
730 int eccbytes = chip->ecc.bytes; in zynq_nand_read_page_swecc()
731 int eccsteps = chip->ecc.steps; in zynq_nand_read_page_swecc()
735 u32 *eccpos = chip->ecc.layout->eccpos; in zynq_nand_read_page_swecc()
737 chip->ecc.read_page_raw(mtd, chip, buf, 1, page); in zynq_nand_read_page_swecc()
740 chip->ecc.calculate(mtd, p, &ecc_calc[i]); in zynq_nand_read_page_swecc()
742 for (i = 0; i < chip->ecc.total; i++) in zynq_nand_read_page_swecc()
745 eccsteps = chip->ecc.steps; in zynq_nand_read_page_swecc()
751 stat = chip->ecc.correct(mtd, p, &ecc_code[i], &ecc_calc[i]); in zynq_nand_read_page_swecc()
1159 nand_chip->ecc.mode = NAND_ECC_HW; in zynq_nand_init()
1160 nand_chip->ecc.strength = 1; in zynq_nand_init()
1161 nand_chip->ecc.read_page = zynq_nand_read_page_raw_nooob; in zynq_nand_init()
1162 nand_chip->ecc.read_subpage = zynq_nand_read_subpage_raw; in zynq_nand_init()
1163 nand_chip->ecc.write_page = zynq_nand_write_page_raw; in zynq_nand_init()
1164 nand_chip->ecc.read_page_raw = zynq_nand_read_page_raw; in zynq_nand_init()
1165 nand_chip->ecc.write_page_raw = zynq_nand_write_page_raw; in zynq_nand_init()
1166 nand_chip->ecc.read_oob = zynq_nand_read_oob; in zynq_nand_init()
1167 nand_chip->ecc.write_oob = zynq_nand_write_oob; in zynq_nand_init()
1168 nand_chip->ecc.size = mtd->writesize; in zynq_nand_init()
1169 nand_chip->ecc.bytes = 0; in zynq_nand_init()
1176 nand_chip->ecc.layout = &ondie_nand_oob_64; in zynq_nand_init()
1183 nand_chip->ecc.mode = NAND_ECC_HW; in zynq_nand_init()
1184 nand_chip->ecc.strength = 1; in zynq_nand_init()
1185 nand_chip->ecc.size = ZYNQ_NAND_ECC_SIZE; in zynq_nand_init()
1186 nand_chip->ecc.bytes = 3; in zynq_nand_init()
1187 nand_chip->ecc.calculate = zynq_nand_calculate_hwecc; in zynq_nand_init()
1188 nand_chip->ecc.correct = zynq_nand_correct_data; in zynq_nand_init()
1189 nand_chip->ecc.hwctl = NULL; in zynq_nand_init()
1190 nand_chip->ecc.read_page = zynq_nand_read_page_hwecc; in zynq_nand_init()
1191 nand_chip->ecc.write_page = zynq_nand_write_page_hwecc; in zynq_nand_init()
1192 nand_chip->ecc.read_page_raw = zynq_nand_read_page_raw; in zynq_nand_init()
1193 nand_chip->ecc.write_page_raw = zynq_nand_write_page_raw; in zynq_nand_init()
1194 nand_chip->ecc.read_oob = zynq_nand_read_oob; in zynq_nand_init()
1195 nand_chip->ecc.write_oob = zynq_nand_write_oob; in zynq_nand_init()
1217 nand_chip->ecc.mode = NAND_ECC_SOFT; in zynq_nand_init()
1218 nand_chip->ecc.calculate = nand_calculate_ecc; in zynq_nand_init()
1219 nand_chip->ecc.correct = nand_correct_data; in zynq_nand_init()
1220 nand_chip->ecc.read_page = zynq_nand_read_page_swecc; in zynq_nand_init()
1221 nand_chip->ecc.write_page = zynq_nand_write_page_swecc; in zynq_nand_init()
1222 nand_chip->ecc.size = 256; in zynq_nand_init()
1227 nand_chip->ecc.layout = &nand_oob_16; in zynq_nand_init()
1229 nand_chip->ecc.layout = &nand_oob_64; in zynq_nand_init()