| /drivers/mtd/nand/raw/ |
| A D | sunxi_nand.c | 820 struct nand_ecc_ctrl *ecc = &nand->ecc; in sunxi_nfc_hw_ecc_read_chunk() local 914 struct nand_ecc_ctrl *ecc = &nand->ecc; in sunxi_nfc_hw_ecc_read_extra_oob() local 947 struct nand_ecc_ctrl *ecc = &nand->ecc; in sunxi_nfc_hw_ecc_write_chunk() local 995 struct nand_ecc_ctrl *ecc = &nand->ecc; in sunxi_nfc_hw_ecc_write_extra_oob() local 1015 struct nand_ecc_ctrl *ecc = &chip->ecc; in sunxi_nfc_hw_ecc_read_page() local 1052 struct nand_ecc_ctrl *ecc = &chip->ecc; in sunxi_nfc_hw_ecc_read_subpage() local 1083 struct nand_ecc_ctrl *ecc = &chip->ecc; in sunxi_nfc_hw_ecc_write_page() local 1116 struct nand_ecc_ctrl *ecc = &chip->ecc; in sunxi_nfc_hw_ecc_write_subpage() local 1145 struct nand_ecc_ctrl *ecc = &chip->ecc; in sunxi_nfc_hw_syndrome_ecc_read_page() local 1441 ecc->bytes = ALIGN(ecc->bytes, 2); in sunxi_nand_hw_common_ecc_ctrl_init() [all …]
|
| A D | nand_base.c | 2519 int chunk = chip->ecc.bytes + chip->ecc.prepad + chip->ecc.postpad; in nand_read_oob_syndrome() 2586 int chunk = chip->ecc.bytes + chip->ecc.prepad + chip->ecc.postpad; in nand_write_oob_syndrome() 4883 struct nand_ecc_ctrl *ecc = &chip->ecc; in nand_ecc_strength_good() local 4902 struct nand_ecc_ctrl *ecc = &chip->ecc; in invalid_ecc_page_accessors() local 4917 ecc->hwctl && ecc->calculate)); in invalid_ecc_page_accessors() 4992 if (!ecc->calculate || !ecc->correct || !ecc->hwctl) { in nand_scan_tail() 5016 if (!ecc->write_subpage && ecc->hwctl && ecc->calculate) in nand_scan_tail() 5021 if ((!ecc->calculate || !ecc->correct || !ecc->hwctl) && in nand_scan_tail() 5124 ecc->read_oob_raw = ecc->read_oob; in nand_scan_tail() 5126 ecc->write_oob_raw = ecc->write_oob; in nand_scan_tail() [all …]
|
| A D | rockchip_nfc.c | 269 struct nand_ecc_ctrl *ecc = &chip->ecc; in rk_nfc_select_chip() local 439 struct nand_ecc_ctrl *ecc = &chip->ecc; in rk_nfc_write_page_raw() local 521 struct nand_ecc_ctrl *ecc = &chip->ecc; in rk_nfc_write_page_hwecc() local 623 struct nand_ecc_ctrl *ecc = &chip->ecc; in rk_nfc_read_page_raw() local 679 struct nand_ecc_ctrl *ecc = &chip->ecc; in rk_nfc_read_page_hwecc() local 829 struct nand_ecc_ctrl *ecc = &chip->ecc; in rk_nfc_ecc_init() local 835 if (!ecc->size || !ecc->strength || in rk_nfc_ecc_init() 861 ecc->steps = mtd->writesize / ecc->size; in rk_nfc_ecc_init() 862 ecc->bytes = DIV_ROUND_UP(ecc->strength * fls(8 * chip->ecc.size), 8); in rk_nfc_ecc_init() 871 ecc->layout->eccbytes = ecc->bytes * ecc->steps; in rk_nfc_ecc_init() [all …]
|
| A D | mxc_nand.c | 393 int eccpitch = chip->ecc.bytes + chip->ecc.prepad + chip->ecc.postpad; 432 host->col_addr += chip->ecc.postpad + chip->ecc.prepad; 447 int eccpitch = eccbytes + chip->ecc.prepad + chip->ecc.postpad; 492 int eccpitch = eccbytes + chip->ecc.prepad + chip->ecc.postpad; 542 chip->ecc.prepad; 554 int eccpitch = chip->ecc.bytes + chip->ecc.prepad + chip->ecc.postpad; 566 host->col_addr += chip->ecc.prepad + chip->ecc.postpad; 584 int eccpitch = eccbytes + chip->ecc.prepad + chip->ecc.postpad; 624 int eccpitch = eccbytes + chip->ecc.prepad + chip->ecc.postpad; 1195 this->ecc.bytes = 9; [all …]
|
| A D | omap_gpmc.c | 594 struct nand_ecc_ctrl *ecc = &chip->ecc; in omap_correct_data_bch() local 853 nand->ecc.size = 0; in omap_select_ecc_scheme() 868 nand->ecc.strength = 1; in omap_select_ecc_scheme() 870 nand->ecc.bytes = 3; in omap_select_ecc_scheme() 905 nand->ecc.strength = 8; in omap_select_ecc_scheme() 907 nand->ecc.bytes = 13; in omap_select_ecc_scheme() 947 nand->ecc.strength = 8; in omap_select_ecc_scheme() 949 nand->ecc.bytes = 14; in omap_select_ecc_scheme() 982 nand->ecc.bytes = 26; in omap_select_ecc_scheme() 1137 nand->ecc.layout = kzalloc(sizeof(*nand->ecc.layout), GFP_KERNEL); in gpmc_nand_init() [all …]
|
| A D | davinci_nand.c | 171 u_int32_t ecc = 0; in nand_davinci_readecc() local 176 return ecc; in nand_davinci_readecc() 429 int eccbytes = chip->ecc.bytes; in nand_davinci_read_page_hwecc() 430 int eccsteps = chip->ecc.steps; in nand_davinci_read_page_hwecc() 763 nand->ecc.mode = NAND_ECC_HW; in davinci_nand_init() 764 nand->ecc.size = 512; in davinci_nand_init() 765 nand->ecc.bytes = 3; in davinci_nand_init() 766 nand->ecc.strength = 1; in davinci_nand_init() 772 nand->ecc.size = 512; in davinci_nand_init() 773 nand->ecc.bytes = 10; in davinci_nand_init() [all …]
|
| A D | zynq_nand.c | 642 int eccbytes = chip->ecc.bytes; in zynq_nand_write_page_swecc() 643 int eccsteps = chip->ecc.steps; in zynq_nand_write_page_swecc() 675 int eccbytes = chip->ecc.bytes; in zynq_nand_read_page_hwecc() 721 eccsteps = chip->ecc.steps; in zynq_nand_read_page_hwecc() 762 eccsteps = chip->ecc.steps; in zynq_nand_read_page_swecc() 1196 nand_chip->ecc.strength = 1; in zynq_nand_probe() 1205 nand_chip->ecc.bytes = 0; in zynq_nand_probe() 1218 nand_chip->ecc.strength = 1; in zynq_nand_probe() 1220 nand_chip->ecc.bytes = 3; in zynq_nand_probe() 1223 nand_chip->ecc.hwctl = NULL; in zynq_nand_probe() [all …]
|
| A D | nand_bch.c | 47 struct nand_bch_control *nbc = chip->ecc.priv; in nand_bch_calculate_ecc() 50 memset(code, 0, chip->ecc.bytes); in nand_bch_calculate_ecc() 51 encode_bch(nbc->bch, buf, chip->ecc.size, code); in nand_bch_calculate_ecc() 54 for (i = 0; i < chip->ecc.bytes; i++) in nand_bch_calculate_ecc() 73 struct nand_bch_control *nbc = chip->ecc.priv; in nand_bch_correct_data() 81 if (errloc[i] < (chip->ecc.size*8)) in nand_bch_correct_data() 119 unsigned int eccsize = nand->ecc.size; in nand_bch_init() 120 unsigned int eccbytes = nand->ecc.bytes; in nand_bch_init() 121 unsigned int eccstrength = nand->ecc.strength; in nand_bch_init() 125 nand->ecc.bytes = eccbytes; in nand_bch_init() [all …]
|
| A D | atmel_nand.c | 474 err_byte = ecc[tmp]; in pmecc_correct_data() 491 u8 *ecc) in pmecc_correction() argument 825 nand->ecc.hwctl = NULL; in atmel_pmecc_nand_init_params() 913 nand->ecc.steps = 1; in atmel_pmecc_nand_init_params() 930 nand->ecc.bytes); in atmel_pmecc_nand_init_params() 943 nand->ecc.postpad = 0; in atmel_pmecc_nand_init_params() 944 nand->ecc.prepad = 0; in atmel_pmecc_nand_init_params() 945 nand->ecc.bytes = 0; in atmel_pmecc_nand_init_params() 1170 nand->ecc.bytes = 4; in atmel_hwecc_nand_init_param() 1171 nand->ecc.strength = 4; in atmel_hwecc_nand_init_param() [all …]
|
| A D | meson_nand.c | 323 len = nand->ecc.size * (i + 1) + (nand->ecc.bytes + 2) * i; in meson_nfc_oob_ptr() 333 temp = nand->ecc.size + nand->ecc.bytes; in meson_nfc_data_ptr() 350 buf += nand->ecc.size; in meson_nfc_get_data_oob() 375 buf += nand->ecc.size; in meson_nfc_set_data_oob() 389 for (i = 0, count = 0; i < nand->ecc.steps; i++, count += (2 + nand->ecc.bytes)) { in meson_nfc_set_user_byte() 402 for (i = 0, count = 0; i < nand->ecc.steps; i++, count += (2 + nand->ecc.bytes)) { in meson_nfc_get_user_byte() 726 ecc = &chip->ecc; in meson_nfc_read_page_hwecc() 738 ecc->strength); in meson_nfc_read_page_hwecc() 1003 nand_oob.eccbytes = nand->ecc.steps * nand->ecc.bytes; in meson_nfc_init_nand_oob() 1035 nand->ecc.steps = mtd->writesize / nand->ecc.size; in meson_nfc_init_ecc() [all …]
|
| A D | stm32_fmc2_nand.c | 328 u8 *ecc) in stm32_fmc2_nfc_ham_calculate() argument 344 ecc[0] = heccr; in stm32_fmc2_nfc_ham_calculate() 345 ecc[1] = heccr >> 8; in stm32_fmc2_nfc_ham_calculate() 346 ecc[2] = heccr >> 16; in stm32_fmc2_nfc_ham_calculate() 412 u8 *ecc) in stm32_fmc2_nfc_bch_calculate() argument 429 ecc[0] = bchpbr; in stm32_fmc2_nfc_bch_calculate() 430 ecc[1] = bchpbr >> 8; in stm32_fmc2_nfc_bch_calculate() 435 ecc[4] = bchpbr; in stm32_fmc2_nfc_bch_calculate() 436 ecc[5] = bchpbr >> 8; in stm32_fmc2_nfc_bch_calculate() 443 ecc[8] = bchpbr; in stm32_fmc2_nfc_bch_calculate() [all …]
|
| A D | mt7621_nand.c | 642 nand->ecc.bytes = DIV_ROUND_UP(nand->ecc.strength * ECC_PARITY_BITS, 8); in mt7621_nfc_calc_ecc_strength() 656 size = nand->ecc.bytes + NFI_FDM_SIZE; in mt7621_nfc_set_spare_per_sector() 684 nand->ecc.size = ECC_SECTOR_SIZE; in mt7621_nfc_ecc_init() 685 nand->ecc.steps = mtd->writesize / nand->ecc.size; in mt7621_nfc_ecc_init() 824 nand->ecc.size); in mt7621_nfc_read_page_hwecc() 844 bitflips = nand->ecc.strength + 1; in mt7621_nfc_read_page_hwecc() 882 nand->ecc.size); in mt7621_nfc_read_page_raw() 998 nand->ecc.size); in mt7621_nfc_write_page_raw() 1035 if (section >= nand->ecc.steps) in mt7621_nfc_ooblayout_free() 1060 .ecc = mt7621_nfc_ooblayout_ecc, [all …]
|
| A D | nand_spl_simple.c | 156 this->ecc.hwctl(mtd, NAND_ECC_READ); in nand_read_page() 158 this->ecc.calculate(mtd, p, &ecc_calc[i]); in nand_read_page() 159 this->ecc.correct(mtd, p, &ecc_code[i], &ecc_calc[i]); in nand_read_page() 180 if (this->ecc.mode != NAND_ECC_SOFT) in nand_read_page() 181 this->ecc.hwctl(mtd, NAND_ECC_READ); in nand_read_page() 183 this->ecc.calculate(mtd, p, &ecc_calc[i]); in nand_read_page() 199 this->ecc.correct(mtd, p, &ecc_code[i], &ecc_calc[i]); in nand_read_page() 218 if (nand_chip.ecc.mode == NAND_ECC_SOFT) { in nand_init() 219 nand_chip.ecc.calculate = nand_calculate_ecc; in nand_init() 220 nand_chip.ecc.correct = nand_correct_data; in nand_init()
|
| A D | lpc32xx_nand_mlc.c | 112 } ecc[4]; member 566 lpc32xx_chip.ecc.mode = NAND_ECC_HW; in board_nand_init() 567 lpc32xx_chip.ecc.layout = &lpc32xx_largepage_ecclayout; in board_nand_init() 568 lpc32xx_chip.ecc.size = 512; in board_nand_init() 569 lpc32xx_chip.ecc.bytes = 10; in board_nand_init() 570 lpc32xx_chip.ecc.strength = 4; in board_nand_init() 571 lpc32xx_chip.ecc.read_page = lpc32xx_read_page_hwecc; in board_nand_init() 572 lpc32xx_chip.ecc.read_page_raw = lpc32xx_read_page_raw; in board_nand_init() 573 lpc32xx_chip.ecc.write_page = lpc32xx_write_page_hwecc; in board_nand_init() 575 lpc32xx_chip.ecc.read_oob = lpc32xx_read_oob; in board_nand_init() [all …]
|
| A D | denali.c | 290 int ecc_size = chip->ecc.size; in denali_check_erased_page() 295 chip->ecc.total); in denali_check_erased_page() 306 chip->ecc.strength); in denali_check_erased_page() 615 int ecc_size = chip->ecc.size; in denali_oob_xfer() 672 int ecc_size = chip->ecc.size; in denali_read_page_raw() 1113 if (chip->ecc.size && chip->ecc.strength) in denali_ecc_setup() 1163 .ecc = denali_ooblayout_ecc, 1210 chip->ecc.size <<= 1; in denali_multidev_fixup() 1211 chip->ecc.bytes <<= 1; in denali_multidev_fixup() 1212 chip->ecc.strength <<= 1; in denali_multidev_fixup() [all …]
|
| A D | cortina_nand.c | 626 step = i / chip->ecc.bytes; in ca_do_bch_decode() 650 chip->ecc.size, in ca_do_bch_decode() 652 chip->ecc.bytes, in ca_do_bch_decode() 654 chip->ecc.strength); in ca_do_bch_decode() 1249 eccoob.eccbytes = mtd->writesize / nand->ecc.size * nand->ecc.bytes; in nand_config_oob_layout() 1253 nand->ecc.strength / 8); in nand_config_oob_layout() 1294 nand->ecc.mode = NAND_ECC_HW; in ca_nand_probe() 1295 nand->ecc.layout = &eccoob; in ca_nand_probe() 1304 nand->ecc.read_oob = nand_read_oob; in ca_nand_probe() 1324 nand->ecc.size = BCH_DATA_UNIT; in ca_nand_probe() [all …]
|
| A D | fsl_ifc_nand.c | 711 u8 *ecc = chip->oob_poi; in check_erased_page() local 717 ecc += 8; in check_erased_page() 731 ecc += ecc_size; in check_erased_page() 962 nand->ecc.size = 512; in fsl_ifc_chip_init() 963 nand->ecc.bytes = 8; in fsl_ifc_chip_init() 977 nand->ecc.strength = 4; in fsl_ifc_chip_init() 983 nand->ecc.strength = 4; in fsl_ifc_chip_init() 991 nand->ecc.strength = 4; in fsl_ifc_chip_init() 994 nand->ecc.strength = 8; in fsl_ifc_chip_init() 995 nand->ecc.bytes = 16; in fsl_ifc_chip_init() [all …]
|
| A D | vf610_nfc.c | 587 memset(dat, 0xff, nfc->chip.ecc.size); in vf610_nfc_correct_data() 595 int eccsize = chip->ecc.size; in vf610_nfc_read_page() 667 chip->ecc.size = PAGE_2K; in vf610_nfc_nand_init() 721 mtd->ecclayout = chip->ecc.layout; in vf610_nfc_nand_init() 724 chip->ecc.mode = NAND_ECC_HW; in vf610_nfc_nand_init() 726 chip->ecc.size = PAGE_2K; in vf610_nfc_nand_init() 727 chip->ecc.layout = &vf610_nfc_ecc; in vf610_nfc_nand_init() 729 chip->ecc.strength = 24; in vf610_nfc_nand_init() 730 chip->ecc.bytes = 45; in vf610_nfc_nand_init() 732 chip->ecc.strength = 32; in vf610_nfc_nand_init() [all …]
|
| A D | tegra_nand.c | 635 chip->ecc.layout->oobavail); in nand_rw_page() 639 chip->ecc.layout->oobavail); in nand_rw_page() 812 chip->ecc.layout->oobavail); in nand_rw_oob() 939 nand->ecc.mode = NAND_ECC_HW; in tegra_probe() 940 nand->ecc.layout = &eccoob; in tegra_probe() 946 nand->ecc.read_page = nand_read_page_hwecc; in tegra_probe() 950 nand->ecc.read_oob = nand_read_oob; in tegra_probe() 951 nand->ecc.write_oob = nand_write_oob; in tegra_probe() 952 nand->ecc.strength = 1; in tegra_probe() 973 nand->ecc.size = our_mtd->writesize; in tegra_probe() [all …]
|
| A D | fsl_elbc_nand.c | 747 if (nand->ecc.mode == 0 in fsl_elbc_chip_init() 754 nand->ecc.mode = NAND_ECC_HW; in fsl_elbc_chip_init() 758 nand->ecc.size = 512; in fsl_elbc_chip_init() 759 nand->ecc.bytes = 3; in fsl_elbc_chip_init() 760 nand->ecc.steps = 1; in fsl_elbc_chip_init() 761 nand->ecc.strength = 1; in fsl_elbc_chip_init() 765 nand->ecc.mode = NAND_ECC_SOFT_BCH; in fsl_elbc_chip_init() 767 nand->ecc.mode = NAND_ECC_SOFT; in fsl_elbc_chip_init() 772 if (nand->ecc.mode == NAND_ECC_HW) { in fsl_elbc_chip_init() 795 if (nand->ecc.mode == NAND_ECC_HW) { in fsl_elbc_chip_init() [all …]
|
| /drivers/ddr/marvell/axp/ |
| A D | ddr3_pbs.c | 98 u32 ecc; in ddr3_pbs_tx() local 135 for (ecc = 0; ecc < (dram_info->ecc_ena + 1); ecc++) { in ddr3_pbs_tx() 144 if (ecc) { in ddr3_pbs_tx() 165 if (ecc) in ddr3_pbs_tx() 219 ecc)) in ddr3_pbs_tx() 540 u32 ecc; in ddr3_pbs_rx() local 578 for (ecc = 0; ecc < (dram_info->ecc_ena + 1); ecc++) { in ddr3_pbs_rx() 586 if (ecc) { in ddr3_pbs_rx() 607 if (ecc) in ddr3_pbs_rx() 1097 idx = pup * (1 - ecc) + ecc * ECC_PUP; in lock_pups() [all …]
|
| A D | ddr3_dqs.c | 155 for (ecc = 0; ecc < (dram_info->ecc_ena + 1); ecc++) { in ddr3_dqs_centralization_rx() 164 if (ecc) in ddr3_dqs_centralization_rx() 236 for (ecc = 0; ecc < (dram_info->ecc_ena + 1); ecc++) { in ddr3_dqs_centralization_tx() 244 if (ecc) in ddr3_dqs_centralization_tx() 321 max_pup = (ecc + (1 - ecc) * dram_info->num_of_std_pups); in ddr3_find_adll_limits() 395 [pup * (1 - ecc) + ecc * ECC_PUP] in ddr3_find_adll_limits() 895 max_pup = (ecc + (1 - ecc) * dram_info->num_of_std_pups); in ddr3_center_calc() 968 max_pup = ecc + (1 - ecc) * dram_info->num_of_std_pups; in ddr3_special_pattern_i_search() 1129 max_pup = (ecc + (1 - ecc) * dram_info->num_of_std_pups); in ddr3_special_pattern_ii_search() 1268 max_pup = (ecc + (1 - ecc) * dram_info->num_of_std_pups); in ddr3_set_dqs_centralization_results() [all …]
|
| A D | ddr3_read_leveling.c | 205 for (ecc = 0; ecc <= (dram_info->ecc_ena); ecc++) { in ddr3_read_leveling_sw() 213 if (ecc) in ddr3_read_leveling_sw() 246 ecc, in ddr3_read_leveling_sw() 254 ecc, in ddr3_read_leveling_sw() 420 for (pup = 0; pup < (dram_info->num_of_std_pups * (1 - ecc) + ecc); in ddr3_read_leveling_single_cs_rl_mode() 481 (1 - ecc) + ecc)) { in ddr3_read_leveling_single_cs_rl_mode() 678 (dram_info->num_of_std_pups * (1 - ecc) + ecc); in ddr3_read_leveling_single_cs_rl_mode() 774 for (pup = 0; pup < (dram_info->num_of_std_pups * (1 - ecc) + ecc); in ddr3_read_leveling_single_cs_window_mode() 820 (1 - ecc) + ecc); pup++) { in ddr3_read_leveling_single_cs_window_mode() 908 if (final_sum == (dram_info->num_of_std_pups * (1 - ecc) + ecc)) { in ddr3_read_leveling_single_cs_window_mode() [all …]
|
| /drivers/mtd/nand/raw/atmel/ |
| A D | pmecc.c | 274 req->ecc.ooboffset + req->ecc.bytes > req->oobsize) in atmel_pmecc_prepare_user_req() 282 req->ecc.sectorsize = 1024; in atmel_pmecc_prepare_user_req() 284 req->ecc.sectorsize = 512; in atmel_pmecc_prepare_user_req() 287 if (req->ecc.sectorsize != 512 && req->ecc.sectorsize != 1024) in atmel_pmecc_prepare_user_req() 293 req->ecc.nsectors = req->pagesize / req->ecc.sectorsize; in atmel_pmecc_prepare_user_req() 321 req->ecc.bytes = eccbytes; in atmel_pmecc_prepare_user_req() 324 if (req->ecc.ooboffset < 0) in atmel_pmecc_prepare_user_req() 378 user->eccbytes = req->ecc.bytes / req->ecc.nsectors; in atmel_pmecc_create_user() 393 user->cache.eaddr = req->ecc.ooboffset + req->ecc.bytes - 1; in atmel_pmecc_create_user() 741 int sector, void *ecc) in atmel_pmecc_get_generated_eccbytes() argument [all …]
|
| A D | nand-controller.c | 960 struct nand_ecc_ctrl *ecc = &chip->ecc; in nand_ooblayout_ecc_lp() local 975 struct nand_ecc_ctrl *ecc = &chip->ecc; in nand_ooblayout_free_lp() local 1025 req.ecc.strength = chip->ecc.strength; in atmel_nand_pmecc_init() 1031 if (chip->ecc.size) in atmel_nand_pmecc_init() 1032 req.ecc.sectorsize = chip->ecc.size; in atmel_nand_pmecc_init() 1042 req.ecc.bytes = 4; in atmel_nand_pmecc_init() 1054 chip->ecc.size = req.ecc.sectorsize; in atmel_nand_pmecc_init() 1055 chip->ecc.bytes = req.ecc.bytes / req.ecc.nsectors; in atmel_nand_pmecc_init() 1056 chip->ecc.strength = req.ecc.strength; in atmel_nand_pmecc_init() 1063 chip->ecc.bytes); in atmel_nand_pmecc_init() [all …]
|