Lines Matching refs:ecc
604 unsigned long ecc = readl(info->regs + S3C2412_NFMECC0); in s3c2412_nand_calculate_ecc() local
606 ecc_code[0] = ecc; in s3c2412_nand_calculate_ecc()
607 ecc_code[1] = ecc >> 8; in s3c2412_nand_calculate_ecc()
608 ecc_code[2] = ecc >> 16; in s3c2412_nand_calculate_ecc()
619 unsigned long ecc = readl(info->regs + S3C2440_NFMECC0); in s3c2440_nand_calculate_ecc() local
621 ecc_code[0] = ecc; in s3c2440_nand_calculate_ecc()
622 ecc_code[1] = ecc >> 8; in s3c2440_nand_calculate_ecc()
623 ecc_code[2] = ecc >> 16; in s3c2440_nand_calculate_ecc()
625 pr_debug("%s: returning ecc %06lx\n", __func__, ecc & 0xffffff); in s3c2440_nand_calculate_ecc()
838 chip->ecc.calculate = s3c2410_nand_calculate_ecc; in s3c2410_nand_init_chip()
839 chip->ecc.correct = s3c2410_nand_correct_data; in s3c2410_nand_init_chip()
840 chip->ecc.mode = NAND_ECC_HW; in s3c2410_nand_init_chip()
841 chip->ecc.strength = 1; in s3c2410_nand_init_chip()
845 chip->ecc.hwctl = s3c2410_nand_enable_hwecc; in s3c2410_nand_init_chip()
846 chip->ecc.calculate = s3c2410_nand_calculate_ecc; in s3c2410_nand_init_chip()
850 chip->ecc.hwctl = s3c2412_nand_enable_hwecc; in s3c2410_nand_init_chip()
851 chip->ecc.calculate = s3c2412_nand_calculate_ecc; in s3c2410_nand_init_chip()
855 chip->ecc.hwctl = s3c2440_nand_enable_hwecc; in s3c2410_nand_init_chip()
856 chip->ecc.calculate = s3c2440_nand_calculate_ecc; in s3c2410_nand_init_chip()
860 chip->ecc.mode = NAND_ECC_SOFT; in s3c2410_nand_init_chip()
864 chip->ecc.layout = set->ecc_layout; in s3c2410_nand_init_chip()
867 chip->ecc.mode = NAND_ECC_NONE; in s3c2410_nand_init_chip()
869 switch (chip->ecc.mode) { in s3c2410_nand_init_chip()
912 if (chip->ecc.mode != NAND_ECC_HW) in s3c2410_nand_update_chip()
919 chip->ecc.size = 256; in s3c2410_nand_update_chip()
920 chip->ecc.bytes = 3; in s3c2410_nand_update_chip()
922 chip->ecc.size = 512; in s3c2410_nand_update_chip()
923 chip->ecc.bytes = 3; in s3c2410_nand_update_chip()
924 chip->ecc.layout = &nand_hw_eccoob; in s3c2410_nand_update_chip()