/openbmc/u-boot/drivers/mtd/nand/raw/ |
H A D | nand_bch.c | 117 unsigned int eccsize = nand->ecc.size; in nand_bch_init() local 122 eccbytes = DIV_ROUND_UP(eccstrength * fls(8 * eccsize), 8); in nand_bch_init() 126 if (!eccsize || !eccbytes) { in nand_bch_init() 131 m = fls(1+8*eccsize); in nand_bch_init() 149 eccsteps = mtd->writesize/eccsize; in nand_bch_init() 182 if (8*(eccsize+eccbytes) >= (1 << m)) { in nand_bch_init() 183 printk(KERN_WARNING "eccsize %u is too large\n", eccsize); in nand_bch_init() 198 erased_page = kmalloc(eccsize, GFP_KERNEL); in nand_bch_init() 202 memset(erased_page, 0xff, eccsize); in nand_bch_init() 204 encode_bch(nbc->bch, erased_page, eccsize, nbc->eccmask); in nand_bch_init() [all …]
|
H A D | am335x_spl_bch.c | 156 int eccsize = CONFIG_SYS_NAND_ECCSIZE; in nand_read_page() local 162 uint32_t oob_pos = eccsize * eccsteps + nand_ecc_pos[0]; in nand_read_page() 166 for (i = 0; eccsteps; eccsteps--, i += eccbytes, p += eccsize) { in nand_read_page() 170 this->read_buf(mtd, p, eccsize); in nand_read_page() 177 data_pos += eccsize; in nand_read_page() 189 for (i = 0 ; eccsteps; eccsteps--, i += eccbytes, p += eccsize) { in nand_read_page()
|
H A D | nand_spl_simple.c | 146 int eccsize = CONFIG_SYS_NAND_ECCSIZE; in nand_read_page() local 160 for (i = 0; eccsteps; eccsteps--, i += eccbytes, p += eccsize) { in nand_read_page() 162 this->read_buf(mtd, p, eccsize); in nand_read_page() 177 int eccsize = CONFIG_SYS_NAND_ECCSIZE; in nand_read_page() local 184 for (i = 0; eccsteps; eccsteps--, i += eccbytes, p += eccsize) { in nand_read_page() 187 this->read_buf(mtd, p, eccsize); in nand_read_page() 199 for (i = 0 ; eccsteps; eccsteps--, i += eccbytes, p += eccsize) { in nand_read_page()
|
H A D | zynq_nand.c | 565 int i, eccsteps, eccsize = chip->ecc.size; in zynq_nand_write_page_hwecc() local 574 chip->write_buf(mtd, p, eccsize); in zynq_nand_write_page_hwecc() 575 p += eccsize; in zynq_nand_write_page_hwecc() 577 chip->write_buf(mtd, p, (eccsize - data_width)); in zynq_nand_write_page_hwecc() 578 p += eccsize - data_width; in zynq_nand_write_page_hwecc() 623 int i, eccsize = chip->ecc.size; in zynq_nand_write_page_swecc() local 631 for (i = 0; eccsteps; eccsteps--, i += eccbytes, p += eccsize) in zynq_nand_write_page_swecc() 656 int i, stat, eccsteps, eccsize = chip->ecc.size; in zynq_nand_read_page_hwecc() local 667 chip->read_buf(mtd, p, eccsize); in zynq_nand_read_page_hwecc() 668 p += eccsize; in zynq_nand_read_page_hwecc() [all …]
|
H A D | mxc_nand.c | 442 int eccsize = chip->ecc.size; local 453 host->col_addr = n * eccsize; 454 chip->read_buf(mtd, buf, eccsize); 455 buf += eccsize; 487 int n, eccsize = chip->ecc.size; local 498 for (n = 0; eccsteps; n++, eccsteps--, p += eccsize) { 501 host->col_addr = n * eccsize; 503 chip->read_buf(mtd, p, eccsize); 536 for (n = 0; eccsteps; n++, eccsteps--, p += eccsize) { 579 int eccsize = chip->ecc.size; local [all …]
|
H A D | nand_base.c | 1243 int eccsize = chip->ecc.size; in nand_read_page_raw_syndrome() local 1249 chip->read_buf(mtd, buf, eccsize); in nand_read_page_raw_syndrome() 1250 buf += eccsize; in nand_read_page_raw_syndrome() 1284 int i, eccsize = chip->ecc.size; in nand_read_page_swecc() local 1295 for (i = 0; eccsteps; eccsteps--, i += eccbytes, p += eccsize) in nand_read_page_swecc() 1304 for (i = 0 ; eccsteps; eccsteps--, i += eccbytes, p += eccsize) { in nand_read_page_swecc() 1434 int i, eccsize = chip->ecc.size; in nand_read_page_hwecc() local 1443 for (i = 0; eccsteps; eccsteps--, i += eccbytes, p += eccsize) { in nand_read_page_hwecc() 1445 chip->read_buf(mtd, p, eccsize); in nand_read_page_hwecc() 1456 for (i = 0 ; eccsteps; eccsteps--, i += eccbytes, p += eccsize) { in nand_read_page_hwecc() [all …]
|
H A D | fsmc_nand.c | 340 int i, j, s, stat, eccsize = chip->ecc.size; in fsmc_read_page_hwecc() local 355 for (i = 0, s = 0; s < eccsteps; s++, i += eccbytes, p += eccsize) { in fsmc_read_page_hwecc() 357 chip->cmdfunc(mtd, NAND_CMD_READ0, s * eccsize, page); in fsmc_read_page_hwecc() 359 chip->read_buf(mtd, p, eccsize); in fsmc_read_page_hwecc()
|
H A D | omap_gpmc.c | 586 int i, eccsize = chip->ecc.size; in omap_read_page_bch() local 599 oob_pos = (eccsize * eccsteps) + chip->ecc.layout->eccpos[0]; in omap_read_page_bch() 602 for (i = 0; eccsteps; eccsteps--, i += eccbytes, p += eccsize, in omap_read_page_bch() 607 chip->read_buf(mtd, p, eccsize); in omap_read_page_bch() 615 data_pos += eccsize; in omap_read_page_bch() 625 for (i = 0 ; eccsteps; eccsteps--, i += eccbytes, p += eccsize) { in omap_read_page_bch()
|
H A D | atmel_nand.c | 532 int eccsize = chip->ecc.size; in atmel_nand_pmecc_read_page() local 546 chip->read_buf(mtd, buf, eccsize); in atmel_nand_pmecc_read_page() 1023 int eccsize = chip->ecc.size; in atmel_nand_read_page() local 1032 chip->read_buf(mtd, p, eccsize); in atmel_nand_read_page() 1312 int eccsize = CONFIG_SYS_NAND_ECCSIZE; in nand_read_page() local 1319 for (i = 0; eccsteps; eccsteps--, i += eccbytes, p += eccsize) { in nand_read_page() 1322 this->read_buf(mtd, p, eccsize); in nand_read_page() 1333 for (i = 0; eccsteps; eccsteps--, i += eccbytes, p += eccsize) in nand_read_page()
|
H A D | davinci_nand.c | 424 int i, eccsize = chip->ecc.size; in nand_davinci_read_page_hwecc() local 449 for (i = 0; eccsteps; eccsteps--, i += eccbytes, p += eccsize) { in nand_davinci_read_page_hwecc() 453 chip->read_buf(mtd, p, eccsize); in nand_davinci_read_page_hwecc()
|
H A D | arasan_nfc.c | 167 u16 eccsize; member 1155 ecc_matrix[found].eccsize; in arasan_nand_ecc_init() 1158 (ecc_matrix[found].eccsize << ARASAN_NAND_ECC_SIZE_SHIFT) | in arasan_nand_ecc_init() 1170 nand_oob.eccbytes = ecc_matrix[found].eccsize; in arasan_nand_ecc_init() 1181 nand_chip->ecc.bytes = ecc_matrix[found].eccsize; in arasan_nand_ecc_init()
|
H A D | vf610_nfc.c | 591 int eccsize = chip->ecc.size; in vf610_nfc_read_page() local 594 vf610_nfc_read_buf(mtd, buf, eccsize); in vf610_nfc_read_page()
|
/openbmc/linux/drivers/mtd/nand/ |
H A D | ecc-sw-bch.c | 111 unsigned int eccsize = nand->ecc.ctx.conf.step_size; in nand_ecc_sw_bch_init() local 117 m = fls(1 + (8 * eccsize)); in nand_ecc_sw_bch_init() 133 erased_page = kmalloc(eccsize, GFP_KERNEL); in nand_ecc_sw_bch_init() 139 memset(erased_page, 0xff, eccsize); in nand_ecc_sw_bch_init() 140 bch_encode(engine_conf->bch, erased_page, eccsize, in nand_ecc_sw_bch_init() 156 if (8 * (eccsize + eccbytes) >= (1 << m)) { in nand_ecc_sw_bch_init() 157 pr_err("ECC step size is too large (%u)\n", eccsize); in nand_ecc_sw_bch_init() 296 int eccsize = nand->ecc.ctx.conf.step_size; in nand_ecc_sw_bch_prepare_io_req() local 321 eccsteps--, i += eccbytes, data += eccsize) in nand_ecc_sw_bch_prepare_io_req() 333 int eccsize = nand->ecc.ctx.conf.step_size; in nand_ecc_sw_bch_finish_io_req() local [all …]
|
H A D | ecc-sw-hamming.c | 550 int eccsize = nand->ecc.ctx.conf.step_size; in nand_ecc_sw_hamming_prepare_io_req() local 575 eccsteps--, i += eccbytes, data += eccsize) in nand_ecc_sw_hamming_prepare_io_req() 587 int eccsize = nand->ecc.ctx.conf.step_size; in nand_ecc_sw_hamming_finish_io_req() local 618 for (i = 0; eccsteps; eccsteps--, i += eccbytes, data += eccsize) in nand_ecc_sw_hamming_finish_io_req() 624 eccsteps--, i += eccbytes, data += eccsize) { in nand_ecc_sw_hamming_finish_io_req()
|
/openbmc/linux/drivers/mtd/nand/raw/ |
H A D | mxc_nand.c | 156 int eccsize; member 175 int eccsize; member 794 ecc_bit_mask = (host->eccsize == 4) ? 0x7 : 0xf; in mxc_nand_read_page_v2_v3() 795 err_limit = (host->eccsize == 4) ? 0x4 : 0x8; in mxc_nand_read_page_v2_v3() 1124 host->eccsize = 1; in preset_v1() 1231 host->eccsize = get_eccsize(mtd); in preset_v2() 1232 if (host->eccsize == 4) in preset_v2() 1237 host->eccsize = 1; in preset_v2() 1310 host->eccsize = get_eccsize(mtd); in preset_v3() 1311 if (host->eccsize == 8) in preset_v3() [all …]
|
H A D | txx9ndfmc.c | 191 int eccsize; in txx9ndfmc_correct_data() local 195 for (eccsize = chip->ecc.size; eccsize > 0; eccsize -= 256) { in txx9ndfmc_correct_data()
|
H A D | nand_base.c | 2997 int eccsize = chip->ecc.size; in nand_read_page_raw_syndrome() local 3007 ret = nand_read_data_op(chip, buf, eccsize, false, false); in nand_read_page_raw_syndrome() 3011 buf += eccsize; in nand_read_page_raw_syndrome() 3059 int i, eccsize = chip->ecc.size, ret; in nand_read_page_swecc() local 3069 for (i = 0; eccsteps; eccsteps--, i += eccbytes, p += eccsize) in nand_read_page_swecc() 3080 for (i = 0 ; eccsteps; eccsteps--, i += eccbytes, p += eccsize) { in nand_read_page_swecc() 3218 int i, eccsize = chip->ecc.size, ret; in nand_read_page_hwecc() local 3230 for (i = 0; eccsteps; eccsteps--, i += eccbytes, p += eccsize) { in nand_read_page_hwecc() 3233 ret = nand_read_data_op(chip, p, eccsize, false, false); in nand_read_page_hwecc() 3253 for (i = 0 ; eccsteps; eccsteps--, i += eccbytes, p += eccsize) { in nand_read_page_hwecc() [all …]
|
H A D | stm32_fmc2_nand.c | 617 static int stm32_fmc2_nfc_bch_decode(int eccsize, u8 *dat, u32 *ecc_sta) in stm32_fmc2_nfc_bch_decode() argument 647 if (pos[i] < eccsize * 8) { in stm32_fmc2_nfc_bch_decode() 681 int ret, i, s, stat, eccsize = chip->ecc.size; in stm32_fmc2_nfc_read_page() local 695 s++, i += eccbytes, p += eccsize) { in stm32_fmc2_nfc_read_page() 699 ret = nand_change_read_column_op(chip, s * eccsize, p, in stm32_fmc2_nfc_read_page() 700 eccsize, false); in stm32_fmc2_nfc_read_page() 714 stat = nand_check_erased_ecc_chunk(p, eccsize, in stm32_fmc2_nfc_read_page() 846 int eccsize = chip->ecc.size; in stm32_fmc2_nfc_xfer() local 859 sg_set_buf(sg, p, eccsize); in stm32_fmc2_nfc_xfer() 860 p += eccsize; in stm32_fmc2_nfc_xfer() [all …]
|
H A D | fsmc_nand.c | 709 int i, j, s, stat, eccsize = chip->ecc.size; in fsmc_read_page_hwecc() local 725 for (i = 0, s = 0; s < eccsteps; s++, i += eccbytes, p += eccsize) { in fsmc_read_page_hwecc() 726 nand_read_page_op(chip, page, s * eccsize, NULL, 0); in fsmc_read_page_hwecc() 728 ret = nand_read_data_op(chip, p, eccsize, false, false); in fsmc_read_page_hwecc()
|
/openbmc/linux/drivers/mtd/nand/raw/gpmi-nand/ |
H A D | gpmi-nand.c | 1816 int eccsize = nfc_geo->eccn_chunk_size; in gpmi_ecc_read_page_raw() local 1854 nand_extract_bits(buf, step * eccsize * 8, tmp_buf, in gpmi_ecc_read_page_raw() 1855 src_bit_off, eccsize * 8); in gpmi_ecc_read_page_raw() 1856 src_bit_off += eccsize * 8; in gpmi_ecc_read_page_raw() 1901 int eccsize = nfc_geo->eccn_chunk_size; in gpmi_ecc_write_page_raw() local 1930 step * eccsize * 8, eccsize * 8); in gpmi_ecc_write_page_raw() 1931 dst_bit_off += eccsize * 8; in gpmi_ecc_write_page_raw()
|