Lines Matching refs:ecc
342 uint8_t *ecc) in fsmc_read_hwecc_ecc4() argument
359 ecc[0] = (uint8_t) (ecc_tmp >> 0); in fsmc_read_hwecc_ecc4()
360 ecc[1] = (uint8_t) (ecc_tmp >> 8); in fsmc_read_hwecc_ecc4()
361 ecc[2] = (uint8_t) (ecc_tmp >> 16); in fsmc_read_hwecc_ecc4()
362 ecc[3] = (uint8_t) (ecc_tmp >> 24); in fsmc_read_hwecc_ecc4()
365 ecc[4] = (uint8_t) (ecc_tmp >> 0); in fsmc_read_hwecc_ecc4()
366 ecc[5] = (uint8_t) (ecc_tmp >> 8); in fsmc_read_hwecc_ecc4()
367 ecc[6] = (uint8_t) (ecc_tmp >> 16); in fsmc_read_hwecc_ecc4()
368 ecc[7] = (uint8_t) (ecc_tmp >> 24); in fsmc_read_hwecc_ecc4()
371 ecc[8] = (uint8_t) (ecc_tmp >> 0); in fsmc_read_hwecc_ecc4()
372 ecc[9] = (uint8_t) (ecc_tmp >> 8); in fsmc_read_hwecc_ecc4()
373 ecc[10] = (uint8_t) (ecc_tmp >> 16); in fsmc_read_hwecc_ecc4()
374 ecc[11] = (uint8_t) (ecc_tmp >> 24); in fsmc_read_hwecc_ecc4()
377 ecc[12] = (uint8_t) (ecc_tmp >> 16); in fsmc_read_hwecc_ecc4()
388 uint8_t *ecc) in fsmc_read_hwecc_ecc1() argument
397 ecc[0] = (uint8_t) (ecc_tmp >> 0); in fsmc_read_hwecc_ecc1()
398 ecc[1] = (uint8_t) (ecc_tmp >> 8); in fsmc_read_hwecc_ecc1()
399 ecc[2] = (uint8_t) (ecc_tmp >> 16); in fsmc_read_hwecc_ecc1()
423 int i, j, s, stat, eccsize = chip->ecc.size; in fsmc_read_page_hwecc()
424 int eccbytes = chip->ecc.bytes; in fsmc_read_page_hwecc()
425 int eccsteps = chip->ecc.steps; in fsmc_read_page_hwecc()
441 chip->ecc.hwctl(mtd, NAND_ECC_READ); in fsmc_read_page_hwecc()
461 chip->ecc.calculate(mtd, p, &ecc_calc[i]); in fsmc_read_page_hwecc()
463 stat = chip->ecc.correct(mtd, p, &ecc_code[i], &ecc_calc[i]); in fsmc_read_page_hwecc()
666 nand->ecc.mode = NAND_ECC_HW; in fsmc_nand_probe()
667 nand->ecc.hwctl = fsmc_enable_hwecc; in fsmc_nand_probe()
668 nand->ecc.size = 512; in fsmc_nand_probe()
678 nand->ecc.read_page = fsmc_read_page_hwecc; in fsmc_nand_probe()
679 nand->ecc.calculate = fsmc_read_hwecc_ecc4; in fsmc_nand_probe()
680 nand->ecc.correct = fsmc_correct_data; in fsmc_nand_probe()
681 nand->ecc.bytes = 13; in fsmc_nand_probe()
683 nand->ecc.calculate = fsmc_read_hwecc_ecc1; in fsmc_nand_probe()
684 nand->ecc.correct = nand_correct_data; in fsmc_nand_probe()
685 nand->ecc.bytes = 3; in fsmc_nand_probe()
699 nand->ecc.layout = &fsmc_ecc4_sp_layout; in fsmc_nand_probe()
702 nand->ecc.layout = &fsmc_ecc4_lp_layout; in fsmc_nand_probe()
706 nand->ecc.layout = &fsmc_ecc1_layout; in fsmc_nand_probe()