Lines Matching refs:mtd

137 	struct mtd_info		mtd;  member
192 struct mtd_info *mtd = &host->mtd; in hisi_nfc_dma_transfer() local
193 struct nand_chip *chip = mtd->priv; in hisi_nfc_dma_transfer()
201 hinfc_write(host, ((mtd->oobsize & HINFC504_DMA_LEN_OOB_MASK) in hisi_nfc_dma_transfer()
265 struct mtd_info *mtd = &host->mtd; in hisi_nfc_send_cmd_readstart() local
279 hinfc_write(host, mtd->writesize + mtd->oobsize, in hisi_nfc_send_cmd_readstart()
358 static void hisi_nfc_select_chip(struct mtd_info *mtd, int chipselect) in hisi_nfc_select_chip() argument
360 struct nand_chip *chip = mtd->priv; in hisi_nfc_select_chip()
369 static uint8_t hisi_nfc_read_byte(struct mtd_info *mtd) in hisi_nfc_read_byte() argument
371 struct nand_chip *chip = mtd->priv; in hisi_nfc_read_byte()
385 static u16 hisi_nfc_read_word(struct mtd_info *mtd) in hisi_nfc_read_word() argument
387 struct nand_chip *chip = mtd->priv; in hisi_nfc_read_word()
395 hisi_nfc_write_buf(struct mtd_info *mtd, const uint8_t *buf, int len) in hisi_nfc_write_buf() argument
397 struct nand_chip *chip = mtd->priv; in hisi_nfc_write_buf()
404 static void hisi_nfc_read_buf(struct mtd_info *mtd, uint8_t *buf, int len) in hisi_nfc_read_buf() argument
406 struct nand_chip *chip = mtd->priv; in hisi_nfc_read_buf()
413 static void set_addr(struct mtd_info *mtd, int column, int page_addr) in set_addr() argument
415 struct nand_chip *chip = mtd->priv; in set_addr()
448 static void hisi_nfc_cmdfunc(struct mtd_info *mtd, unsigned command, int column, in hisi_nfc_cmdfunc() argument
451 struct nand_chip *chip = mtd->priv; in hisi_nfc_cmdfunc()
464 host->offset = column + mtd->writesize; in hisi_nfc_cmdfunc()
467 set_addr(mtd, column, page_addr); in hisi_nfc_cmdfunc()
473 set_addr(mtd, column, page_addr); in hisi_nfc_cmdfunc()
477 set_addr(mtd, column, page_addr); in hisi_nfc_cmdfunc()
543 static int hisi_nand_read_page_hwecc(struct mtd_info *mtd, in hisi_nand_read_page_hwecc() argument
550 chip->read_buf(mtd, buf, mtd->writesize); in hisi_nand_read_page_hwecc()
551 chip->read_buf(mtd, chip->oob_poi, mtd->oobsize); in hisi_nand_read_page_hwecc()
555 mtd->ecc_stats.failed++; in hisi_nand_read_page_hwecc()
567 mtd->ecc_stats.corrected += stat; in hisi_nand_read_page_hwecc()
575 static int hisi_nand_read_oob(struct mtd_info *mtd, struct nand_chip *chip, in hisi_nand_read_oob() argument
580 chip->cmdfunc(mtd, NAND_CMD_READOOB, 0, page); in hisi_nand_read_oob()
581 chip->read_buf(mtd, chip->oob_poi, mtd->oobsize); in hisi_nand_read_oob()
592 static int hisi_nand_write_page_hwecc(struct mtd_info *mtd, in hisi_nand_write_page_hwecc() argument
596 chip->write_buf(mtd, buf, mtd->writesize); in hisi_nand_write_page_hwecc()
598 chip->write_buf(mtd, chip->oob_poi, mtd->oobsize); in hisi_nand_write_page_hwecc()
646 struct mtd_info *mtd = &host->mtd; in hisi_nfc_ecc_probe() local
672 if (mtd->writesize == 2048) in hisi_nfc_ecc_probe()
704 struct mtd_info *mtd; in hisi_nfc_probe() local
716 mtd = &host->mtd; in hisi_nfc_probe()
740 mtd->priv = chip; in hisi_nfc_probe()
741 mtd->name = "hisi_nand"; in hisi_nfc_probe()
742 mtd->dev.parent = &pdev->dev; in hisi_nfc_probe()
767 ret = nand_scan_ident(mtd, max_chips, NULL); in hisi_nfc_probe()
773 host->buffer = dmam_alloc_coherent(dev, mtd->writesize + mtd->oobsize, in hisi_nfc_probe()
780 host->dma_oob = host->dma_buffer + mtd->writesize; in hisi_nfc_probe()
781 memset(host->buffer, 0xff, mtd->writesize + mtd->oobsize); in hisi_nfc_probe()
785 switch (mtd->writesize) { in hisi_nfc_probe()
802 ret = nand_scan_tail(mtd); in hisi_nfc_probe()
809 ret = mtd_device_parse_register(mtd, NULL, &ppdata, NULL, 0); in hisi_nfc_probe()
818 nand_release(mtd); in hisi_nfc_probe()
826 struct mtd_info *mtd = &host->mtd; in hisi_nfc_remove() local
828 nand_release(mtd); in hisi_nfc_remove()