Lines Matching refs:nand

236 	struct nand_chip nand;  member
246 static inline struct sunxi_nand_chip *to_sunxi_nand(struct nand_chip *nand) in to_sunxi_nand() argument
248 return container_of(nand, struct sunxi_nand_chip, nand); in to_sunxi_nand()
353 struct nand_chip *nand = mtd->priv; in sunxi_nfc_dev_ready() local
354 struct sunxi_nand_chip *sunxi_nand = to_sunxi_nand(nand); in sunxi_nfc_dev_ready()
355 struct sunxi_nfc *nfc = to_sunxi_nfc(sunxi_nand->nand.controller); in sunxi_nfc_dev_ready()
357 unsigned long timeo = (sunxi_nand->nand.state == FL_ERASING ? 400 : 20); in sunxi_nfc_dev_ready()
391 struct nand_chip *nand = mtd->priv; in sunxi_nfc_select_chip() local
392 struct sunxi_nand_chip *sunxi_nand = to_sunxi_nand(nand); in sunxi_nfc_select_chip()
393 struct sunxi_nfc *nfc = to_sunxi_nfc(sunxi_nand->nand.controller); in sunxi_nfc_select_chip()
410 NFC_PAGE_SHIFT(nand->page_shift - 10); in sunxi_nfc_select_chip()
412 nand->dev_ready = NULL; in sunxi_nfc_select_chip()
414 nand->dev_ready = sunxi_nfc_dev_ready; in sunxi_nfc_select_chip()
436 struct nand_chip *nand = mtd->priv; in sunxi_nfc_read_buf() local
437 struct sunxi_nand_chip *sunxi_nand = to_sunxi_nand(nand); in sunxi_nfc_read_buf()
438 struct sunxi_nfc *nfc = to_sunxi_nfc(sunxi_nand->nand.controller); in sunxi_nfc_read_buf()
469 struct nand_chip *nand = mtd->priv; in sunxi_nfc_write_buf() local
470 struct sunxi_nand_chip *sunxi_nand = to_sunxi_nand(nand); in sunxi_nfc_write_buf()
471 struct sunxi_nfc *nfc = to_sunxi_nfc(sunxi_nand->nand.controller); in sunxi_nfc_write_buf()
510 struct nand_chip *nand = mtd->priv; in sunxi_nfc_cmd_ctrl() local
511 struct sunxi_nand_chip *sunxi_nand = to_sunxi_nand(nand); in sunxi_nfc_cmd_ctrl()
512 struct sunxi_nfc *nfc = to_sunxi_nfc(sunxi_nand->nand.controller); in sunxi_nfc_cmd_ctrl()
544 struct nand_chip *nand = mtd->priv; in sunxi_nfc_hw_ecc_enable() local
545 struct sunxi_nfc *nfc = to_sunxi_nfc(nand->controller); in sunxi_nfc_hw_ecc_enable()
546 struct sunxi_nand_hw_ecc *data = nand->ecc.priv; in sunxi_nfc_hw_ecc_enable()
559 struct nand_chip *nand = mtd->priv; in sunxi_nfc_hw_ecc_disable() local
560 struct sunxi_nfc *nfc = to_sunxi_nfc(nand->controller); in sunxi_nfc_hw_ecc_disable()
580 struct nand_chip *nand = mtd->priv; in sunxi_nfc_hw_ecc_read_chunk() local
581 struct sunxi_nfc *nfc = to_sunxi_nfc(nand->controller); in sunxi_nfc_hw_ecc_read_chunk()
582 struct nand_ecc_ctrl *ecc = &nand->ecc; in sunxi_nfc_hw_ecc_read_chunk()
587 nand->cmdfunc(mtd, NAND_CMD_RNDOUT, data_off, -1); in sunxi_nfc_hw_ecc_read_chunk()
592 nand->cmdfunc(mtd, NAND_CMD_RNDOUT, oob_off, -1); in sunxi_nfc_hw_ecc_read_chunk()
610 nand->cmdfunc(mtd, NAND_CMD_RNDOUT, oob_off, -1); in sunxi_nfc_hw_ecc_read_chunk()
641 struct nand_chip *nand = mtd->priv; in sunxi_nfc_hw_ecc_read_extra_oob() local
642 struct nand_ecc_ctrl *ecc = &nand->ecc; in sunxi_nfc_hw_ecc_read_extra_oob()
650 nand->cmdfunc(mtd, NAND_CMD_RNDOUT, in sunxi_nfc_hw_ecc_read_extra_oob()
668 struct nand_chip *nand = mtd->priv; in sunxi_nfc_hw_ecc_write_chunk() local
669 struct sunxi_nfc *nfc = to_sunxi_nfc(nand->controller); in sunxi_nfc_hw_ecc_write_chunk()
670 struct nand_ecc_ctrl *ecc = &nand->ecc; in sunxi_nfc_hw_ecc_write_chunk()
674 nand->cmdfunc(mtd, NAND_CMD_RNDIN, data_off, -1); in sunxi_nfc_hw_ecc_write_chunk()
683 nand->cmdfunc(mtd, NAND_CMD_RNDIN, oob_off, -1); in sunxi_nfc_hw_ecc_write_chunk()
705 struct nand_chip *nand = mtd->priv; in sunxi_nfc_hw_ecc_write_extra_oob() local
706 struct nand_ecc_ctrl *ecc = &nand->ecc; in sunxi_nfc_hw_ecc_write_extra_oob()
714 nand->cmdfunc(mtd, NAND_CMD_RNDIN, in sunxi_nfc_hw_ecc_write_extra_oob()
870 struct sunxi_nfc *nfc = to_sunxi_nfc(chip->nand.controller); in sunxi_nand_chip_set_timings()
998 mode = onfi_get_async_timing_mode(&chip->nand); in sunxi_nand_chip_init_timings()
1000 mode = chip->nand.onfi_timing_mode_default; in sunxi_nand_chip_init_timings()
1011 chip->nand.select_chip(&chip->mtd, i); in sunxi_nand_chip_init_timings()
1012 ret = chip->nand.onfi_set_features(&chip->mtd, in sunxi_nand_chip_init_timings()
1013 &chip->nand, in sunxi_nand_chip_init_timings()
1016 chip->nand.select_chip(&chip->mtd, -1); in sunxi_nand_chip_init_timings()
1034 struct nand_chip *nand = mtd->priv; in sunxi_nand_hw_common_ecc_ctrl_init() local
1035 struct sunxi_nand_chip *sunxi_nand = to_sunxi_nand(nand); in sunxi_nand_hw_common_ecc_ctrl_init()
1036 struct sunxi_nfc *nfc = to_sunxi_nfc(sunxi_nand->nand.controller); in sunxi_nand_hw_common_ecc_ctrl_init()
1192 struct nand_chip *nand = mtd->priv; in sunxi_nand_ecc_init() local
1196 ecc->size = nand->ecc_step_ds; in sunxi_nand_ecc_init()
1197 ecc->strength = nand->ecc_strength_ds; in sunxi_nand_ecc_init()
1237 struct nand_chip *nand; in sunxi_nand_chip_init() local
1324 nand = &chip->nand; in sunxi_nand_chip_init()
1326 nand->chip_delay = 200; in sunxi_nand_chip_init()
1327 nand->controller = &nfc->controller; in sunxi_nand_chip_init()
1332 nand->ecc.mode = NAND_ECC_HW; in sunxi_nand_chip_init()
1333 nand->flash_node = np; in sunxi_nand_chip_init()
1334 nand->select_chip = sunxi_nfc_select_chip; in sunxi_nand_chip_init()
1335 nand->cmd_ctrl = sunxi_nfc_cmd_ctrl; in sunxi_nand_chip_init()
1336 nand->read_buf = sunxi_nfc_read_buf; in sunxi_nand_chip_init()
1337 nand->write_buf = sunxi_nfc_write_buf; in sunxi_nand_chip_init()
1338 nand->read_byte = sunxi_nfc_read_byte; in sunxi_nand_chip_init()
1342 mtd->priv = nand; in sunxi_nand_chip_init()
1348 if (nand->bbt_options & NAND_BBT_USE_FLASH) in sunxi_nand_chip_init()
1349 nand->bbt_options |= NAND_BBT_NO_OOB; in sunxi_nand_chip_init()
1357 ret = sunxi_nand_ecc_init(mtd, &nand->ecc, np); in sunxi_nand_chip_init()
1411 sunxi_nand_ecc_cleanup(&chip->nand.ecc); in sunxi_nand_chips_cleanup()