/u-boot-v2022.01-rc1/drivers/mtd/nand/raw/ |
A D | fsmc_nand.c | 262 const u_char *data, u_char *ecc) in fsmc_read_hwecc() argument 281 ecc[0] = (u_char) (ecc_tmp >> 0); in fsmc_read_hwecc() 282 ecc[1] = (u_char) (ecc_tmp >> 8); in fsmc_read_hwecc() 342 int eccbytes = chip->ecc.bytes; in fsmc_read_page_hwecc() 343 int eccsteps = chip->ecc.steps; in fsmc_read_page_hwecc() 424 nand->ecc.mode = NAND_ECC_HW; in fsmc_nand_init() 425 nand->ecc.size = 512; in fsmc_nand_init() 437 nand->ecc.bytes = 13; in fsmc_nand_init() 438 nand->ecc.strength = 8; in fsmc_nand_init() 452 nand->ecc.bytes = 3; in fsmc_nand_init() [all …]
|
A D | sunxi_nand.c | 821 struct nand_ecc_ctrl *ecc = &nand->ecc; in sunxi_nfc_hw_ecc_read_chunk() local 915 struct nand_ecc_ctrl *ecc = &nand->ecc; in sunxi_nfc_hw_ecc_read_extra_oob() local 948 struct nand_ecc_ctrl *ecc = &nand->ecc; in sunxi_nfc_hw_ecc_write_chunk() local 996 struct nand_ecc_ctrl *ecc = &nand->ecc; in sunxi_nfc_hw_ecc_write_extra_oob() local 1016 struct nand_ecc_ctrl *ecc = &chip->ecc; in sunxi_nfc_hw_ecc_read_page() local 1053 struct nand_ecc_ctrl *ecc = &chip->ecc; in sunxi_nfc_hw_ecc_read_subpage() local 1084 struct nand_ecc_ctrl *ecc = &chip->ecc; in sunxi_nfc_hw_ecc_write_page() local 1117 struct nand_ecc_ctrl *ecc = &chip->ecc; in sunxi_nfc_hw_ecc_write_subpage() local 1146 struct nand_ecc_ctrl *ecc = &chip->ecc; in sunxi_nfc_hw_syndrome_ecc_read_page() local 1440 ecc->bytes = ALIGN(ecc->bytes, 2); in sunxi_nand_hw_common_ecc_ctrl_init() [all …]
|
A D | omap_gpmc.c | 498 struct nand_ecc_ctrl *ecc = &chip->ecc; in omap_correct_data_bch() local 727 nand->ecc.layout = NULL; in omap_select_ecc_scheme() 728 nand->ecc.size = 0; in omap_select_ecc_scheme() 743 nand->ecc.strength = 1; in omap_select_ecc_scheme() 745 nand->ecc.bytes = 3; in omap_select_ecc_scheme() 780 nand->ecc.strength = 8; in omap_select_ecc_scheme() 782 nand->ecc.bytes = 13; in omap_select_ecc_scheme() 821 nand->ecc.strength = 8; in omap_select_ecc_scheme() 823 nand->ecc.bytes = 14; in omap_select_ecc_scheme() 855 nand->ecc.bytes = 26; in omap_select_ecc_scheme() [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 | nand_base.c | 2510 int chunk = chip->ecc.bytes + chip->ecc.prepad + chip->ecc.postpad; in nand_read_oob_syndrome() 2577 int chunk = chip->ecc.bytes + chip->ecc.prepad + chip->ecc.postpad; in nand_write_oob_syndrome() 4959 struct nand_ecc_ctrl *ecc = &chip->ecc; in nand_ecc_strength_good() local 4978 struct nand_ecc_ctrl *ecc = &chip->ecc; in invalid_ecc_page_accessors() local 4993 ecc->hwctl && ecc->calculate)); in invalid_ecc_page_accessors() 5068 if (!ecc->calculate || !ecc->correct || !ecc->hwctl) { in nand_scan_tail() 5091 if (!ecc->write_subpage && ecc->hwctl && ecc->calculate) in nand_scan_tail() 5095 if ((!ecc->calculate || !ecc->correct || !ecc->hwctl) && in nand_scan_tail() 5197 ecc->read_oob_raw = ecc->read_oob; in nand_scan_tail() 5199 ecc->write_oob_raw = ecc->write_oob; in nand_scan_tail() [all …]
|
A D | davinci_nand.c | 170 u_int32_t ecc = 0; in nand_davinci_readecc() local 175 return ecc; in nand_davinci_readecc() 428 int eccbytes = chip->ecc.bytes; in nand_davinci_read_page_hwecc() 429 int eccsteps = chip->ecc.steps; in nand_davinci_read_page_hwecc() 762 nand->ecc.mode = NAND_ECC_HW; in davinci_nand_init() 763 nand->ecc.size = 512; in davinci_nand_init() 764 nand->ecc.bytes = 3; in davinci_nand_init() 765 nand->ecc.strength = 1; in davinci_nand_init() 774 nand->ecc.size = 512; in davinci_nand_init() 775 nand->ecc.bytes = 10; in davinci_nand_init() [all …]
|
A D | rockchip_nfc.c | 270 struct nand_ecc_ctrl *ecc = &chip->ecc; in rk_nfc_select_chip() local 440 struct nand_ecc_ctrl *ecc = &chip->ecc; in rk_nfc_write_page_raw() local 522 struct nand_ecc_ctrl *ecc = &chip->ecc; in rk_nfc_write_page_hwecc() local 621 struct nand_ecc_ctrl *ecc = &chip->ecc; in rk_nfc_read_page_raw() local 677 struct nand_ecc_ctrl *ecc = &chip->ecc; in rk_nfc_read_page_hwecc() local 860 struct nand_ecc_ctrl *ecc = &chip->ecc; in rk_nfc_ecc_init() local 866 if (!ecc->size || !ecc->strength || in rk_nfc_ecc_init() 869 ecc->steps = mtd->writesize / ecc->size; in rk_nfc_ecc_init() 892 ecc->steps = mtd->writesize / ecc->size; in rk_nfc_ecc_init() 893 ecc->bytes = DIV_ROUND_UP(ecc->strength * fls(8 * chip->ecc.size), 8); in rk_nfc_ecc_init() [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 | zynq_nand.c | 643 int eccbytes = chip->ecc.bytes; in zynq_nand_write_page_swecc() 644 int eccsteps = chip->ecc.steps; in zynq_nand_write_page_swecc() 676 int eccbytes = chip->ecc.bytes; in zynq_nand_read_page_hwecc() 722 eccsteps = chip->ecc.steps; in zynq_nand_read_page_hwecc() 763 eccsteps = chip->ecc.steps; in zynq_nand_read_page_swecc() 1194 nand_chip->ecc.strength = 1; in zynq_nand_probe() 1203 nand_chip->ecc.bytes = 0; in zynq_nand_probe() 1216 nand_chip->ecc.strength = 1; in zynq_nand_probe() 1218 nand_chip->ecc.bytes = 3; in zynq_nand_probe() 1221 nand_chip->ecc.hwctl = NULL; in zynq_nand_probe() [all …]
|
A D | atmel_nand.c | 476 err_byte = ecc[tmp]; in pmecc_correct_data() 493 u8 *ecc) in pmecc_correction() argument 827 nand->ecc.hwctl = NULL; in atmel_pmecc_nand_init_params() 915 nand->ecc.steps = 1; in atmel_pmecc_nand_init_params() 932 nand->ecc.bytes); in atmel_pmecc_nand_init_params() 945 nand->ecc.postpad = 0; in atmel_pmecc_nand_init_params() 946 nand->ecc.prepad = 0; in atmel_pmecc_nand_init_params() 947 nand->ecc.bytes = 0; in atmel_pmecc_nand_init_params() 1172 nand->ecc.bytes = 4; in atmel_hwecc_nand_init_param() 1173 nand->ecc.strength = 4; in atmel_hwecc_nand_init_param() [all …]
|
A D | lpc32xx_nand_slc.c | 41 u32 ecc; member 342 u32 ce = ecc[i / CONFIG_SYS_NAND_ECCBYTES]; in slc_ecc_copy_to_buffer() 423 uint32_t *eccpos = chip->ecc.layout->eccpos; in lpc32xx_read_page_hwecc() 434 lpc32xx_dma_read_buf(mtd, p, chip->ecc.size * chip->ecc.steps); in lpc32xx_read_page_hwecc() 438 for (i = 0; i < chip->ecc.total; i++) in lpc32xx_read_page_hwecc() 461 uint32_t *eccpos = chip->ecc.layout->eccpos; in lpc32xx_write_page_hwecc() 471 lpc32xx_dma_write_buf(mtd, p, chip->ecc.size * chip->ecc.steps); in lpc32xx_write_page_hwecc() 474 for (i = 0; i < chip->ecc.total; i++) in lpc32xx_write_page_hwecc() 537 lpc32xx_chip->ecc.mode = NAND_ECC_HW; in board_nand_init() 556 lpc32xx_chip->ecc.mode = NAND_ECC_SOFT; in board_nand_init() [all …]
|
A D | stm32_fmc2_nand.c | 321 u8 *ecc) in stm32_fmc2_nfc_ham_calculate() argument 337 ecc[0] = heccr; in stm32_fmc2_nfc_ham_calculate() 338 ecc[1] = heccr >> 8; in stm32_fmc2_nfc_ham_calculate() 339 ecc[2] = heccr >> 16; in stm32_fmc2_nfc_ham_calculate() 405 u8 *ecc) in stm32_fmc2_nfc_bch_calculate() argument 422 ecc[0] = bchpbr; in stm32_fmc2_nfc_bch_calculate() 423 ecc[1] = bchpbr >> 8; in stm32_fmc2_nfc_bch_calculate() 428 ecc[4] = bchpbr; in stm32_fmc2_nfc_bch_calculate() 429 ecc[5] = bchpbr >> 8; in stm32_fmc2_nfc_bch_calculate() 436 ecc[8] = bchpbr; in stm32_fmc2_nfc_bch_calculate() [all …]
|
A D | octeontx_nand.c | 407 struct nand_ecc_ctrl *ecc = &chip->ecc; in nand_ooblayout_ecc_lp() local 425 struct nand_ecc_ctrl *ecc = &chip->ecc; in nand_ooblayout_free_lp() local 467 layout->eccbytes = nand->ecc.steps * nand->ecc.bytes; in octeontx_nand_calc_ecc_layout() 1530 int i = nand->ecc.size + nand->ecc.bytes; in octeontx_nand_bch_correct() 1774 struct nand_ecc_ctrl *ecc = &nand->ecc; in octeontx_nand_calc_bch_ecc_strength() local 1848 struct nand_ecc_ctrl *ecc = &nand->ecc; in octeontx_nfc_chip_sizing() local 1864 __func__, ecc->steps, ecc->size, ecc->bytes); in octeontx_nfc_chip_sizing() 1869 int nsteps = ecc->steps ? ecc->steps : 1; in octeontx_nfc_chip_sizing() 1871 if (ecc->size && ecc->size != mtd->writesize) in octeontx_nfc_chip_sizing() 1888 if (!mtd->subpage_sft && !(ecc->steps & (ecc->steps - 1))) in octeontx_nfc_chip_sizing() [all …]
|
A D | nand_spl_simple.c | 157 this->ecc.hwctl(mtd, NAND_ECC_READ); in nand_read_page() 159 this->ecc.calculate(mtd, p, &ecc_calc[i]); in nand_read_page() 160 this->ecc.correct(mtd, p, &ecc_code[i], &ecc_calc[i]); in nand_read_page() 181 if (this->ecc.mode != NAND_ECC_SOFT) in nand_read_page() 182 this->ecc.hwctl(mtd, NAND_ECC_READ); in nand_read_page() 184 this->ecc.calculate(mtd, p, &ecc_calc[i]); in nand_read_page() 200 this->ecc.correct(mtd, p, &ecc_code[i], &ecc_calc[i]); in nand_read_page() 219 if (nand_chip.ecc.mode == NAND_ECC_SOFT) { in nand_init() 220 nand_chip.ecc.calculate = nand_calculate_ecc; in nand_init() 221 nand_chip.ecc.correct = nand_correct_data; in nand_init()
|
A D | lpc32xx_nand_mlc.c | 111 } ecc[4]; member 565 lpc32xx_chip.ecc.mode = NAND_ECC_HW; in board_nand_init() 566 lpc32xx_chip.ecc.layout = &lpc32xx_largepage_ecclayout; in board_nand_init() 567 lpc32xx_chip.ecc.size = 512; in board_nand_init() 568 lpc32xx_chip.ecc.bytes = 10; in board_nand_init() 569 lpc32xx_chip.ecc.strength = 4; in board_nand_init() 570 lpc32xx_chip.ecc.read_page = lpc32xx_read_page_hwecc; in board_nand_init() 571 lpc32xx_chip.ecc.read_page_raw = lpc32xx_read_page_raw; in board_nand_init() 572 lpc32xx_chip.ecc.write_page = lpc32xx_write_page_hwecc; in board_nand_init() 574 lpc32xx_chip.ecc.read_oob = lpc32xx_read_oob; in board_nand_init() [all …]
|
A D | denali.c | 295 int ecc_size = chip->ecc.size; in denali_check_erased_page() 300 chip->ecc.total); in denali_check_erased_page() 311 chip->ecc.strength); in denali_check_erased_page() 620 int ecc_size = chip->ecc.size; in denali_oob_xfer() 677 int ecc_size = chip->ecc.size; in denali_read_page_raw() 1118 if (chip->ecc.size && chip->ecc.strength) in denali_ecc_setup() 1168 .ecc = denali_ooblayout_ecc, 1215 chip->ecc.size <<= 1; in denali_multidev_fixup() 1216 chip->ecc.bytes <<= 1; in denali_multidev_fixup() 1217 chip->ecc.strength <<= 1; in denali_multidev_fixup() [all …]
|
A D | cortina_nand.c | 628 step = i / chip->ecc.bytes; in ca_do_bch_decode() 652 chip->ecc.size, in ca_do_bch_decode() 654 chip->ecc.bytes, in ca_do_bch_decode() 656 chip->ecc.strength); in ca_do_bch_decode() 1251 eccoob.eccbytes = mtd->writesize / nand->ecc.size * nand->ecc.bytes; in nand_config_oob_layout() 1255 nand->ecc.strength / 8); in nand_config_oob_layout() 1296 nand->ecc.mode = NAND_ECC_HW; in ca_nand_probe() 1297 nand->ecc.layout = &eccoob; in ca_nand_probe() 1306 nand->ecc.read_oob = nand_read_oob; in ca_nand_probe() 1326 nand->ecc.size = BCH_DATA_UNIT; in ca_nand_probe() [all …]
|
/u-boot-v2022.01-rc1/drivers/ddr/marvell/axp/ |
A D | ddr3_pbs.c | 99 u32 ecc; in ddr3_pbs_tx() local 136 for (ecc = 0; ecc < (dram_info->ecc_ena + 1); ecc++) { in ddr3_pbs_tx() 145 if (ecc) { in ddr3_pbs_tx() 166 if (ecc) in ddr3_pbs_tx() 220 ecc)) in ddr3_pbs_tx() 541 u32 ecc; in ddr3_pbs_rx() local 579 for (ecc = 0; ecc < (dram_info->ecc_ena + 1); ecc++) { in ddr3_pbs_rx() 587 if (ecc) { in ddr3_pbs_rx() 608 if (ecc) in ddr3_pbs_rx() 1098 idx = pup * (1 - ecc) + ecc * ECC_PUP; in lock_pups() [all …]
|
A D | ddr3_dqs.c | 156 for (ecc = 0; ecc < (dram_info->ecc_ena + 1); ecc++) { in ddr3_dqs_centralization_rx() 165 if (ecc) in ddr3_dqs_centralization_rx() 237 for (ecc = 0; ecc < (dram_info->ecc_ena + 1); ecc++) { in ddr3_dqs_centralization_tx() 245 if (ecc) in ddr3_dqs_centralization_tx() 322 max_pup = (ecc + (1 - ecc) * dram_info->num_of_std_pups); in ddr3_find_adll_limits() 396 [pup * (1 - ecc) + ecc * ECC_PUP] in ddr3_find_adll_limits() 896 max_pup = (ecc + (1 - ecc) * dram_info->num_of_std_pups); in ddr3_center_calc() 969 max_pup = ecc + (1 - ecc) * dram_info->num_of_std_pups; in ddr3_special_pattern_i_search() 1130 max_pup = (ecc + (1 - ecc) * dram_info->num_of_std_pups); in ddr3_special_pattern_ii_search() 1269 max_pup = (ecc + (1 - ecc) * dram_info->num_of_std_pups); in ddr3_set_dqs_centralization_results() [all …]
|
A D | ddr3_read_leveling.c | 206 for (ecc = 0; ecc <= (dram_info->ecc_ena); ecc++) { in ddr3_read_leveling_sw() 214 if (ecc) in ddr3_read_leveling_sw() 247 ecc, in ddr3_read_leveling_sw() 255 ecc, in ddr3_read_leveling_sw() 421 for (pup = 0; pup < (dram_info->num_of_std_pups * (1 - ecc) + ecc); in ddr3_read_leveling_single_cs_rl_mode() 482 (1 - ecc) + ecc)) { in ddr3_read_leveling_single_cs_rl_mode() 679 (dram_info->num_of_std_pups * (1 - ecc) + ecc); in ddr3_read_leveling_single_cs_rl_mode() 775 for (pup = 0; pup < (dram_info->num_of_std_pups * (1 - ecc) + ecc); in ddr3_read_leveling_single_cs_window_mode() 821 (1 - ecc) + ecc); pup++) { in ddr3_read_leveling_single_cs_window_mode() 909 if (final_sum == (dram_info->num_of_std_pups * (1 - ecc) + ecc)) { in ddr3_read_leveling_single_cs_window_mode() [all …]
|
/u-boot-v2022.01-rc1/doc/ |
A D | README.mpc83xx.ddrecc | 18 the 'ecc testdw' 'ecc testword' command (see example 'Injecting Multiple-Bit 29 => ecc captureclear 31 => ecc sbecnt 0 39 => ecc injectdatahi 1 47 => ecc status 83 => ecc injectdatahi 1 84 => ecc injectdatalo 1 92 => ecc status 128 => ecc inject en 134 => ecc inject dis [all …]
|
/u-boot-v2022.01-rc1/board/ge/common/ |
A D | vpd_reader.c | 52 size_t data_length, const u8 *ecc, size_t ecc_length) in verify_bch() argument 71 int errors = decode_bch(bch, data, data_length, ecc, NULL, NULL, in verify_bch() 159 u8 *ecc = &data[offset]; in vpd_reader() local 161 if (ecc[ID] != ECC_BLOCK_ID || ecc[LEN] < BLOCK_SIZE || in vpd_reader() 162 ecc[LEN] + offset > size || in vpd_reader() 163 ecc[LEN] - BLOCK_SIZE != size_bits / 8 || ecc[VER] != 1 || in vpd_reader() 164 ecc[TYP] != 1) in vpd_reader() 174 ecc[LEN] - BLOCK_SIZE); in vpd_reader()
|
/u-boot-v2022.01-rc1/fs/yaffs2/ |
A D | yaffs_tagscompat.c | 36 unsigned ecc = 0; in yaffs_calc_tags_ecc() local 39 tags->ecc = 0; in yaffs_calc_tags_ecc() 45 ecc ^= bit; in yaffs_calc_tags_ecc() 48 tags->ecc = ecc; in yaffs_calc_tags_ecc() 53 unsigned ecc = tags->ecc; in yaffs_check_tags_ecc() local 57 ecc ^= tags->ecc; in yaffs_check_tags_ecc() 59 if (ecc && ecc <= 64) { in yaffs_check_tags_ecc() 63 ecc--; in yaffs_check_tags_ecc() 65 b[ecc / 8] ^= (1 << (ecc & 7)); in yaffs_check_tags_ecc() 71 } else if (ecc) { in yaffs_check_tags_ecc()
|
/u-boot-v2022.01-rc1/arch/arm/dts/ |
A D | socfpga_arria10_socdk_sdmmc.dts | 18 sdmmca-ecc@ff8c2c00 { 19 compatible = "altr,socfpga-sdmmc-ecc"; 21 altr,ecc-parent = <&mmc>;
|
A D | socfpga_agilex.dtsi | 555 ocram-ecc@ff8cc000 { 559 altr,ecc-parent = <&ocram>; 563 usb0-ecc@ff8c4000 { 565 "altr,socfpga-usb-ecc"; 567 altr,ecc-parent = <&usb0>; 571 emac0-rx-ecc@ff8c0000 { 575 altr,ecc-parent = <&gmac0>; 579 emac0-tx-ecc@ff8c0400 { 583 altr,ecc-parent = <&gmac0>; 587 sdmmca-ecc@ff8c8c00 { [all …]
|