Home
last modified time | relevance | path

Searched refs:eccsize (Results 1 – 23 of 23) sorted by relevance

/OK3568_Linux_fs/kernel/drivers/mtd/nand/raw/
H A Dnand_bch.c112 unsigned int eccsize = nand->ecc.size; in nand_bch_init() local
117 eccbytes = DIV_ROUND_UP(eccstrength * fls(8 * eccsize), 8); in nand_bch_init()
121 if (!eccsize || !eccbytes) { in nand_bch_init()
126 m = fls(1+8*eccsize); in nand_bch_init()
144 eccsteps = mtd->writesize/eccsize; in nand_bch_init()
153 if (8*(eccsize+eccbytes) >= (1 << m)) { in nand_bch_init()
154 pr_warn("eccsize %u is too large\n", eccsize); in nand_bch_init()
181 erased_page = kmalloc(eccsize, GFP_KERNEL); in nand_bch_init()
185 memset(erased_page, 0xff, eccsize); in nand_bch_init()
186 bch_encode(nbc->bch, erased_page, eccsize, nbc->eccmask); in nand_bch_init()
[all …]
H A Dmxc_nand.c158 int eccsize; member
177 int eccsize; member
797 ecc_bit_mask = (host->eccsize == 4) ? 0x7 : 0xf; in mxc_nand_read_page_v2_v3()
798 err_limit = (host->eccsize == 4) ? 0x4 : 0x8; in mxc_nand_read_page_v2_v3()
1127 host->eccsize = 1; in preset_v1()
1234 host->eccsize = get_eccsize(mtd); in preset_v2()
1235 if (host->eccsize == 4) in preset_v2()
1240 host->eccsize = 1; in preset_v2()
1313 host->eccsize = get_eccsize(mtd); in preset_v3()
1314 if (host->eccsize == 8) in preset_v3()
[all …]
H A Dnand_ecc.c123 void __nand_calculate_ecc(const unsigned char *buf, unsigned int eccsize, in __nand_calculate_ecc() argument
129 const uint32_t eccsize_mult = eccsize >> 8; in __nand_calculate_ecc()
392 unsigned int eccsize, bool sm_order) in __nand_correct_data() argument
397 const uint32_t eccsize_mult = eccsize >> 8; in __nand_correct_data()
H A Dnand_base.c2671 int eccsize = chip->ecc.size; in nand_read_page_raw_syndrome() local
2681 ret = nand_read_data_op(chip, buf, eccsize, false, false); in nand_read_page_raw_syndrome()
2685 buf += eccsize; in nand_read_page_raw_syndrome()
2733 int i, eccsize = chip->ecc.size, ret; in nand_read_page_swecc() local
2743 for (i = 0; eccsteps; eccsteps--, i += eccbytes, p += eccsize) in nand_read_page_swecc()
2754 for (i = 0 ; eccsteps; eccsteps--, i += eccbytes, p += eccsize) { in nand_read_page_swecc()
2892 int i, eccsize = chip->ecc.size, ret; in nand_read_page_hwecc() local
2904 for (i = 0; eccsteps; eccsteps--, i += eccbytes, p += eccsize) { in nand_read_page_hwecc()
2907 ret = nand_read_data_op(chip, p, eccsize, false, false); in nand_read_page_hwecc()
2927 for (i = 0 ; eccsteps; eccsteps--, i += eccbytes, p += eccsize) { in nand_read_page_hwecc()
[all …]
H A Dtxx9ndfmc.c192 int eccsize; in txx9ndfmc_correct_data() local
196 for (eccsize = chip->ecc.size; eccsize > 0; eccsize -= 256) { in txx9ndfmc_correct_data()
H A Dstm32_fmc2_nand.c613 static int stm32_fmc2_nfc_bch_decode(int eccsize, u8 *dat, u32 *ecc_sta) in stm32_fmc2_nfc_bch_decode() argument
643 if (pos[i] < eccsize * 8) { in stm32_fmc2_nfc_bch_decode()
677 int ret, i, s, stat, eccsize = chip->ecc.size; in stm32_fmc2_nfc_read_page() local
691 s++, i += eccbytes, p += eccsize) { in stm32_fmc2_nfc_read_page()
695 ret = nand_change_read_column_op(chip, s * eccsize, p, in stm32_fmc2_nfc_read_page()
696 eccsize, false); in stm32_fmc2_nfc_read_page()
710 stat = nand_check_erased_ecc_chunk(p, eccsize, in stm32_fmc2_nfc_read_page()
842 int eccsize = chip->ecc.size; in stm32_fmc2_nfc_xfer() local
855 sg_set_buf(sg, p, eccsize); in stm32_fmc2_nfc_xfer()
856 p += eccsize; in stm32_fmc2_nfc_xfer()
[all …]
H A Ddavinci_nand.c390 int i, eccsize = chip->ecc.size, ret; in nand_davinci_read_page_hwecc_oob_first() local
412 for (i = 0; eccsteps; eccsteps--, i += eccbytes, p += eccsize) { in nand_davinci_read_page_hwecc_oob_first()
417 ret = nand_read_data_op(chip, p, eccsize, false, false); in nand_davinci_read_page_hwecc_oob_first()
425 stat = nand_check_erased_ecc_chunk(p, eccsize, in nand_davinci_read_page_hwecc_oob_first()
H A Dfsmc_nand.c698 int i, j, s, stat, eccsize = chip->ecc.size; in fsmc_read_page_hwecc() local
714 for (i = 0, s = 0; s < eccsteps; s++, i += eccbytes, p += eccsize) { in fsmc_read_page_hwecc()
715 nand_read_page_op(chip, page, s * eccsize, NULL, 0); in fsmc_read_page_hwecc()
717 ret = nand_read_data_op(chip, p, eccsize, false, false); in fsmc_read_page_hwecc()
/OK3568_Linux_fs/u-boot/drivers/mtd/nand/raw/
H A Dnand_bch.c117 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 Dnand_spl_simple.c147 int eccsize = CONFIG_SYS_NAND_ECCSIZE; in nand_read_page() local
161 for (i = 0; eccsteps; eccsteps--, i += eccbytes, p += eccsize) { in nand_read_page()
163 this->read_buf(mtd, p, eccsize); in nand_read_page()
178 int eccsize = CONFIG_SYS_NAND_ECCSIZE; in nand_read_page() local
185 for (i = 0; eccsteps; eccsteps--, i += eccbytes, p += eccsize) { in nand_read_page()
188 this->read_buf(mtd, p, eccsize); in nand_read_page()
200 for (i = 0 ; eccsteps; eccsteps--, i += eccbytes, p += eccsize) { in nand_read_page()
H A Dam335x_spl_bch.c157 int eccsize = CONFIG_SYS_NAND_ECCSIZE; in nand_read_page() local
163 uint32_t oob_pos = eccsize * eccsteps + nand_ecc_pos[0]; in nand_read_page()
167 for (i = 0; eccsteps; eccsteps--, i += eccbytes, p += eccsize) { in nand_read_page()
171 this->read_buf(mtd, p, eccsize); in nand_read_page()
178 data_pos += eccsize; in nand_read_page()
190 for (i = 0 ; eccsteps; eccsteps--, i += eccbytes, p += eccsize) { in nand_read_page()
H A Dzynq_nand.c566 int i, eccsteps, eccsize = chip->ecc.size; in zynq_nand_write_page_hwecc() local
575 chip->write_buf(mtd, p, eccsize); in zynq_nand_write_page_hwecc()
576 p += eccsize; in zynq_nand_write_page_hwecc()
578 chip->write_buf(mtd, p, (eccsize - data_width)); in zynq_nand_write_page_hwecc()
579 p += eccsize - data_width; in zynq_nand_write_page_hwecc()
624 int i, eccsize = chip->ecc.size; in zynq_nand_write_page_swecc() local
632 for (i = 0; eccsteps; eccsteps--, i += eccbytes, p += eccsize) in zynq_nand_write_page_swecc()
657 int i, stat, eccsteps, eccsize = chip->ecc.size; in zynq_nand_read_page_hwecc() local
668 chip->read_buf(mtd, p, eccsize); in zynq_nand_read_page_hwecc()
669 p += eccsize; in zynq_nand_read_page_hwecc()
[all …]
H A Dmxc_nand.c443 int eccsize = chip->ecc.size; local
454 host->col_addr = n * eccsize;
455 chip->read_buf(mtd, buf, eccsize);
456 buf += eccsize;
488 int n, eccsize = chip->ecc.size; local
499 for (n = 0; eccsteps; n++, eccsteps--, p += eccsize) {
502 host->col_addr = n * eccsize;
504 chip->read_buf(mtd, p, eccsize);
537 for (n = 0; eccsteps; n++, eccsteps--, p += eccsize) {
580 int eccsize = chip->ecc.size; local
[all …]
H A Dnand_base.c1796 int eccsize = chip->ecc.size; in nand_read_page_raw_syndrome() local
1802 ret = nand_read_data_op(chip, buf, eccsize, false); in nand_read_page_raw_syndrome()
1806 buf += eccsize; in nand_read_page_raw_syndrome()
1854 int i, eccsize = chip->ecc.size; in nand_read_page_swecc() local
1865 for (i = 0; eccsteps; eccsteps--, i += eccbytes, p += eccsize) in nand_read_page_swecc()
1874 for (i = 0 ; eccsteps; eccsteps--, i += eccbytes, p += eccsize) { in nand_read_page_swecc()
2013 int i, eccsize = chip->ecc.size; in nand_read_page_hwecc() local
2023 for (i = 0; eccsteps; eccsteps--, i += eccbytes, p += eccsize) { in nand_read_page_hwecc()
2026 ret = nand_read_data_op(chip, p, eccsize, false); in nand_read_page_hwecc()
2043 for (i = 0 ; eccsteps; eccsteps--, i += eccbytes, p += eccsize) { in nand_read_page_hwecc()
[all …]
H A Dfsmc_nand.c341 int i, j, s, stat, eccsize = chip->ecc.size; in fsmc_read_page_hwecc() local
356 for (i = 0, s = 0; s < eccsteps; s++, i += eccbytes, p += eccsize) { in fsmc_read_page_hwecc()
358 chip->cmdfunc(mtd, NAND_CMD_READ0, s * eccsize, page); in fsmc_read_page_hwecc()
360 chip->read_buf(mtd, p, eccsize); in fsmc_read_page_hwecc()
H A Domap_gpmc.c587 int i, eccsize = chip->ecc.size; in omap_read_page_bch() local
600 oob_pos = (eccsize * eccsteps) + chip->ecc.layout->eccpos[0]; in omap_read_page_bch()
603 for (i = 0; eccsteps; eccsteps--, i += eccbytes, p += eccsize, in omap_read_page_bch()
608 chip->read_buf(mtd, p, eccsize); in omap_read_page_bch()
616 data_pos += eccsize; in omap_read_page_bch()
626 for (i = 0 ; eccsteps; eccsteps--, i += eccbytes, p += eccsize) { in omap_read_page_bch()
H A Dstm32_fmc2_nand.c479 int i, ret, den, eccsize = chip->ecc.size; in stm32_fmc2_bch_correct() local
518 if (pos[i] < eccsize * 8) { in stm32_fmc2_bch_correct()
531 int i, s, stat, eccsize = chip->ecc.size; in stm32_fmc2_read_page() local
541 s++, i += eccbytes, p += eccsize) { in stm32_fmc2_read_page()
545 chip->cmdfunc(mtd, NAND_CMD_RNDOUT, s * eccsize, -1); in stm32_fmc2_read_page()
546 chip->read_buf(mtd, p, eccsize); in stm32_fmc2_read_page()
556 stat = nand_check_erased_ecc_chunk(p, eccsize, in stm32_fmc2_read_page()
H A Datmel_nand.c533 int eccsize = chip->ecc.size; in atmel_nand_pmecc_read_page() local
547 chip->read_buf(mtd, buf, eccsize); in atmel_nand_pmecc_read_page()
1024 int eccsize = chip->ecc.size; in atmel_nand_read_page() local
1033 chip->read_buf(mtd, p, eccsize); in atmel_nand_read_page()
1313 int eccsize = CONFIG_SYS_NAND_ECCSIZE; in nand_read_page() local
1320 for (i = 0; eccsteps; eccsteps--, i += eccbytes, p += eccsize) { in nand_read_page()
1323 this->read_buf(mtd, p, eccsize); in nand_read_page()
1334 for (i = 0; eccsteps; eccsteps--, i += eccbytes, p += eccsize) in nand_read_page()
H A Ddavinci_nand.c425 int i, eccsize = chip->ecc.size; in nand_davinci_read_page_hwecc() local
450 for (i = 0; eccsteps; eccsteps--, i += eccbytes, p += eccsize) { in nand_davinci_read_page_hwecc()
454 chip->read_buf(mtd, p, eccsize); in nand_davinci_read_page_hwecc()
H A Darasan_nfc.c168 u16 eccsize; member
1156 ecc_matrix[found].eccsize; in arasan_nand_ecc_init()
1159 (ecc_matrix[found].eccsize << ARASAN_NAND_ECC_SIZE_SHIFT) | in arasan_nand_ecc_init()
1171 nand_oob.eccbytes = ecc_matrix[found].eccsize; in arasan_nand_ecc_init()
1182 nand_chip->ecc.bytes = ecc_matrix[found].eccsize; in arasan_nand_ecc_init()
H A Dvf610_nfc.c592 int eccsize = chip->ecc.size; in vf610_nfc_read_page() local
595 vf610_nfc_read_buf(mtd, buf, eccsize); in vf610_nfc_read_page()
/OK3568_Linux_fs/kernel/include/linux/mtd/
H A Dnand_ecc.h18 void __nand_calculate_ecc(const u_char *dat, unsigned int eccsize,
31 unsigned int eccsize, bool sm_order);
/OK3568_Linux_fs/kernel/drivers/mtd/nand/raw/gpmi-nand/
H A Dgpmi-nand.c1594 int eccsize = nfc_geo->ecc_chunk_size; in gpmi_ecc_read_page_raw() local
1632 nand_extract_bits(buf, step * eccsize * 8, tmp_buf, in gpmi_ecc_read_page_raw()
1633 src_bit_off, eccsize * 8); in gpmi_ecc_read_page_raw()
1634 src_bit_off += eccsize * 8; in gpmi_ecc_read_page_raw()
1679 int eccsize = nfc_geo->ecc_chunk_size; in gpmi_ecc_write_page_raw() local
1708 step * eccsize * 8, eccsize * 8); in gpmi_ecc_write_page_raw()
1709 dst_bit_off += eccsize * 8; in gpmi_ecc_write_page_raw()