Lines Matching refs:cdns_chip
1208 struct cdns_nand_chip *cdns_chip = to_cdns_nand_chip(chip); in cadence_nand_prepare_data_size() local
1211 u32 last_sec_size = cdns_chip->sector_size; in cadence_nand_prepare_data_size()
1220 sec_cnt = cdns_chip->sector_count; in cadence_nand_prepare_data_size()
1221 sec_size = cdns_chip->sector_size; in cadence_nand_prepare_data_size()
1222 data_ctrl_size = cdns_chip->avail_oob_size; in cadence_nand_prepare_data_size()
1225 sec_cnt = cdns_chip->sector_count; in cadence_nand_prepare_data_size()
1226 last_sec_size = cdns_chip->sector_size in cadence_nand_prepare_data_size()
1227 + cdns_chip->avail_oob_size; in cadence_nand_prepare_data_size()
1228 sec_size = cdns_chip->sector_size; in cadence_nand_prepare_data_size()
1234 offset = mtd->writesize + cdns_chip->bbm_offs; in cadence_nand_prepare_data_size()
1341 struct cdns_nand_chip *cdns_chip = to_cdns_nand_chip(chip); in cadence_nand_select_target() local
1351 cadence_nand_set_timings(cdns_ctrl, &cdns_chip->timings); in cadence_nand_select_target()
1354 cdns_chip->corr_str_idx); in cadence_nand_select_target()
1368 struct cdns_nand_chip *cdns_chip = to_cdns_nand_chip(chip); in cadence_nand_erase() local
1370 u8 thread_nr = cdns_chip->cs[chip->cur_cs]; in cadence_nand_erase()
1373 cdns_chip->cs[chip->cur_cs], in cadence_nand_erase()
1393 struct cdns_nand_chip *cdns_chip = to_cdns_nand_chip(chip); in cadence_nand_read_bbm() local
1405 cdns_chip->cs[chip->cur_cs], in cadence_nand_read_bbm()
1414 memcpy(buf + cdns_chip->bbm_offs, cdns_ctrl->buf, cdns_chip->bbm_len); in cadence_nand_read_bbm()
1424 struct cdns_nand_chip *cdns_chip = to_cdns_nand_chip(chip); in cadence_nand_write_page() local
1433 cadence_nand_set_skip_bytes_conf(cdns_ctrl, cdns_chip->bbm_len, in cadence_nand_write_page()
1435 + cdns_chip->bbm_offs, in cadence_nand_write_page()
1440 + cdns_chip->bbm_offs); in cadence_nand_write_page()
1444 cdns_chip->avail_oob_size); in cadence_nand_write_page()
1461 cdns_chip->cs[chip->cur_cs], in cadence_nand_write_page()
1464 cdns_chip->avail_oob_size, in cadence_nand_write_page()
1477 cdns_chip->avail_oob_size); in cadence_nand_write_page()
1485 cdns_chip->cs[chip->cur_cs], in cadence_nand_write_page()
1488 + cdns_chip->avail_oob_size, in cadence_nand_write_page()
1507 struct cdns_nand_chip *cdns_chip = to_cdns_nand_chip(chip); in cadence_nand_write_page_raw() local
1515 int oob_skip = cdns_chip->bbm_len; in cadence_nand_write_page_raw()
1557 u32 oob_data_offset = (cdns_chip->sector_count - 1) * in cadence_nand_write_page_raw()
1558 (cdns_chip->sector_size + chip->ecc.bytes) in cadence_nand_write_page_raw()
1559 + cdns_chip->sector_size + oob_skip; in cadence_nand_write_page_raw()
1566 cdns_chip->avail_oob_size); in cadence_nand_write_page_raw()
1567 oob += cdns_chip->avail_oob_size; in cadence_nand_write_page_raw()
1573 pos += cdns_chip->avail_oob_size; in cadence_nand_write_page_raw()
1596 cdns_chip->cs[chip->cur_cs], in cadence_nand_write_page_raw()
1613 struct cdns_nand_chip *cdns_chip = to_cdns_nand_chip(chip); in cadence_nand_read_page() local
1622 cadence_nand_set_skip_bytes_conf(cdns_ctrl, cdns_chip->bbm_len, in cadence_nand_read_page()
1624 + cdns_chip->bbm_offs, 1); in cadence_nand_read_page()
1641 cdns_chip->cs[chip->cur_cs], in cadence_nand_read_page()
1644 cdns_chip->avail_oob_size, in cadence_nand_read_page()
1650 cdns_chip->cs[chip->cur_cs], in cadence_nand_read_page()
1653 + cdns_chip->avail_oob_size, in cadence_nand_read_page()
1700 struct cdns_nand_chip *cdns_chip = to_cdns_nand_chip(chip); in cadence_nand_read_page_raw() local
1702 int oob_skip = cdns_chip->bbm_len; in cadence_nand_read_page_raw()
1719 cdns_chip->cs[chip->cur_cs], in cadence_nand_read_page_raw()
1758 u32 oob_data_offset = (cdns_chip->sector_count - 1) * in cadence_nand_read_page_raw()
1759 (cdns_chip->sector_size + chip->ecc.bytes) in cadence_nand_read_page_raw()
1760 + cdns_chip->sector_size + oob_skip; in cadence_nand_read_page_raw()
1764 cdns_chip->avail_oob_size); in cadence_nand_read_page_raw()
1769 oob += cdns_chip->avail_oob_size; in cadence_nand_read_page_raw()
1777 pos += cdns_chip->avail_oob_size; in cadence_nand_read_page_raw()
2002 struct cdns_nand_chip *cdns_chip = to_cdns_nand_chip(chip); in cadence_nand_cmd_opcode() local
2019 cdns_chip->cs[chip->cur_cs], in cadence_nand_cmd_opcode()
2032 struct cdns_nand_chip *cdns_chip = to_cdns_nand_chip(chip); in cadence_nand_cmd_address() local
2063 cdns_chip->cs[chip->cur_cs], in cadence_nand_cmd_address()
2116 struct cdns_nand_chip *cdns_chip = to_cdns_nand_chip(chip); in cadence_nand_cmd_data() local
2149 cdns_chip->cs[chip->cur_cs], in cadence_nand_cmd_data()
2188 struct cdns_nand_chip *cdns_chip = to_cdns_nand_chip(chip); in cadence_nand_cmd_waitrdy() local
2194 BIT(cdns_chip->cs[chip->cur_cs]), in cadence_nand_cmd_waitrdy()
2242 struct cdns_nand_chip *cdns_chip = to_cdns_nand_chip(chip); in cadence_nand_ooblayout_free() local
2247 oobregion->offset = cdns_chip->bbm_len; in cadence_nand_ooblayout_free()
2248 oobregion->length = cdns_chip->avail_oob_size in cadence_nand_ooblayout_free()
2249 - cdns_chip->bbm_len; in cadence_nand_ooblayout_free()
2258 struct cdns_nand_chip *cdns_chip = to_cdns_nand_chip(chip); in cadence_nand_ooblayout_ecc() local
2263 oobregion->offset = cdns_chip->avail_oob_size; in cadence_nand_ooblayout_ecc()
2312 struct cdns_nand_chip *cdns_chip = to_cdns_nand_chip(chip); in cadence_nand_setup_interface() local
2313 struct cadence_nand_timings *t = &cdns_chip->timings; in cadence_nand_setup_interface()
2601 struct cdns_nand_chip *cdns_chip = to_cdns_nand_chip(chip); in cadence_nand_attach_chip() local
2618 cdns_chip->bbm_offs = chip->badblockpos; in cadence_nand_attach_chip()
2619 cdns_chip->bbm_offs &= ~0x01; in cadence_nand_attach_chip()
2621 cdns_chip->bbm_len = 2; in cadence_nand_attach_chip()
2625 mtd->oobsize - cdns_chip->bbm_len); in cadence_nand_attach_chip()
2636 cdns_chip->sector_size = chip->ecc.size; in cadence_nand_attach_chip()
2637 cdns_chip->sector_count = mtd->writesize / cdns_chip->sector_size; in cadence_nand_attach_chip()
2638 ecc_size = cdns_chip->sector_count * chip->ecc.bytes; in cadence_nand_attach_chip()
2640 cdns_chip->avail_oob_size = mtd->oobsize - ecc_size; in cadence_nand_attach_chip()
2642 if (cdns_chip->avail_oob_size > cdns_ctrl->bch_metadata_size) in cadence_nand_attach_chip()
2643 cdns_chip->avail_oob_size = cdns_ctrl->bch_metadata_size; in cadence_nand_attach_chip()
2645 if ((cdns_chip->avail_oob_size + cdns_chip->bbm_len + ecc_size) in cadence_nand_attach_chip()
2647 cdns_chip->avail_oob_size -= 4; in cadence_nand_attach_chip()
2653 cdns_chip->corr_str_idx = (u8)ret; in cadence_nand_attach_chip()
2661 cdns_chip->corr_str_idx); in cadence_nand_attach_chip()
2700 struct cdns_nand_chip *cdns_chip; in cadence_nand_chip_init() local
2713 cdns_chip = devm_kzalloc(cdns_ctrl->dev, sizeof(*cdns_chip) + in cadence_nand_chip_init()
2716 if (!cdns_chip) { in cadence_nand_chip_init()
2721 cdns_chip->nsels = nsels; in cadence_nand_chip_init()
2746 cdns_chip->cs[i] = cs; in cadence_nand_chip_init()
2749 chip = &cdns_chip->chip; in cadence_nand_chip_init()
2762 ret = nand_scan(chip, cdns_chip->nsels); in cadence_nand_chip_init()
2776 list_add_tail(&cdns_chip->node, &cdns_ctrl->chips); in cadence_nand_chip_init()