Lines Matching defs:ecc

455 		for (i = 0; i < chip->ecc.steps; i++) {
456 unsigned int off = i * chip->ecc.size;
457 unsigned int eccoff = i * chip->ecc.bytes;
460 chip->ecc.size,
462 chip->ecc.bytes,
464 chip->ecc.strength);
494 unsigned int page_off = round_down(req_offset, chip->ecc.size);
496 chip->ecc.size);
497 unsigned int start_chunk = page_off / chip->ecc.size;
498 unsigned int nchunks = real_len / chip->ecc.size;
499 unsigned int ecc_off = 2 + (start_chunk * chip->ecc.bytes);
550 unsigned int dataoff = i * chip->ecc.size;
551 unsigned int eccoff = 2 + (i * chip->ecc.bytes);
554 chip->ecc.size,
556 chip->ecc.bytes,
558 chip->ecc.strength);
637 unsigned int page_off = round_down(req_offset, chip->ecc.size);
639 chip->ecc.size);
640 unsigned int start_chunk = page_off / chip->ecc.size;
641 unsigned int ecc_off = 2 + (start_chunk * chip->ecc.bytes);
976 unsigned int eccbytes = round_up(chip->ecc.bytes, 4) * chip->ecc.steps;
991 unsigned int eccbytes = round_up(chip->ecc.bytes, 4) * chip->ecc.steps;
1003 .ecc = rnandc_ooblayout_ecc,
1018 switch (chip->ecc.size) {
1033 switch (chip->ecc.strength) {
1035 chip->ecc.bytes = 4;
1039 chip->ecc.bytes = 7;
1043 chip->ecc.bytes = 14;
1047 chip->ecc.bytes = 28;
1051 chip->ecc.bytes = 42;
1055 chip->ecc.bytes = 56;
1063 rnand->ecc_ctrl |= ECC_CTRL_ERR_THRESHOLD(chip->ecc.strength);
1066 chip->ecc.steps = mtd->writesize / chip->ecc.size;
1067 chip->ecc.read_page = rnandc_read_page_hw_ecc;
1068 chip->ecc.read_subpage = rnandc_read_subpage_hw_ecc;
1069 chip->ecc.write_page = rnandc_write_page_hw_ecc;
1070 chip->ecc.write_subpage = rnandc_write_subpage_hw_ecc;
1077 struct nand_ecc_ctrl *ecc = &chip->ecc;
1083 if (ecc->engine_type != NAND_ECC_ENGINE_TYPE_NONE &&
1084 (!ecc->size || !ecc->strength)) {
1086 ecc->size = requirements->step_size;
1087 ecc->strength = requirements->strength;
1094 switch (ecc->engine_type) {