Lines Matching defs:ecc

210 		  FIELD_PREP(ECC_CORRECTION__VALUE, chip->ecc.strength),
212 iowrite32(chip->ecc.size, denali->reg + CFG_DATA_BLOCK_SIZE);
213 iowrite32(chip->ecc.size, denali->reg + CFG_LAST_DATA_BLOCK_SIZE);
214 iowrite32(chip->ecc.steps, denali->reg + CFG_NUM_DATA_BLOCKS);
246 struct nand_ecc_ctrl *ecc = &chip->ecc;
251 for (i = 0; i < ecc->steps; i++) {
252 pos = i * (ecc->size + ecc->bytes);
253 len = ecc->size;
283 struct nand_ecc_ctrl *ecc = &chip->ecc;
296 for (i = 0; i < ecc->steps; i++) {
297 pos = ecc->size + i * (ecc->size + ecc->bytes);
299 if (i == ecc->steps - 1)
303 len = ecc->bytes;
413 struct nand_ecc_ctrl *ecc = &chip->ecc;
417 for (i = 0; i < ecc->steps; i++) {
421 stat = nand_check_erased_ecc_chunk(buf, ecc->size, ecc_code,
422 ecc->bytes, NULL, 0,
423 ecc->strength);
431 buf += ecc->size;
432 ecc_code += ecc->bytes;
456 *uncor_ecc_flags = GENMASK(chip->ecc.steps - 1, 0);
478 unsigned int ecc_size = chip->ecc.size;
917 /* BCH code. Denali requires ecc.bytes to be multiple of 2 */
932 oobregion->length = chip->ecc.total;
946 oobregion->offset = chip->ecc.total + denali->oob_skip_bytes;
953 .ecc = denali_ooblayout_ecc,
1004 chip->ecc.size <<= 1;
1005 chip->ecc.bytes <<= 1;
1006 chip->ecc.strength <<= 1;
1027 chip->ecc.size, chip->ecc.strength, chip->ecc.bytes);
1240 chip->ecc.engine_type = NAND_ECC_ENGINE_TYPE_ON_HOST;
1241 chip->ecc.placement = NAND_ECC_PLACEMENT_INTERLEAVED;
1242 chip->ecc.read_page = denali_read_page;
1243 chip->ecc.write_page = denali_write_page;
1244 chip->ecc.read_page_raw = denali_read_page_raw;
1245 chip->ecc.write_page_raw = denali_write_page_raw;
1246 chip->ecc.read_oob = denali_read_oob;
1247 chip->ecc.write_oob = denali_write_oob;