Lines Matching defs:ndfc
22 #include <linux/mtd/ndfc.h>
45 struct ndfc_controller *ndfc = nand_get_controller_data(nchip);
47 ccr = in_be32(ndfc->ndfcbase + NDFC_CCR);
50 ccr |= NDFC_CCR_BS(chip + ndfc->chip_select);
53 out_be32(ndfc->ndfcbase + NDFC_CCR, ccr);
58 struct ndfc_controller *ndfc = nand_get_controller_data(chip);
64 writel(cmd & 0xFF, ndfc->ndfcbase + NDFC_CMD);
66 writel(cmd & 0xFF, ndfc->ndfcbase + NDFC_ALE);
71 struct ndfc_controller *ndfc = nand_get_controller_data(chip);
73 return in_be32(ndfc->ndfcbase + NDFC_STAT) & NDFC_STAT_IS_READY;
79 struct ndfc_controller *ndfc = nand_get_controller_data(chip);
81 ccr = in_be32(ndfc->ndfcbase + NDFC_CCR);
83 out_be32(ndfc->ndfcbase + NDFC_CCR, ccr);
90 struct ndfc_controller *ndfc = nand_get_controller_data(chip);
95 ecc = in_be32(ndfc->ndfcbase + NDFC_ECC);
113 struct ndfc_controller *ndfc = nand_get_controller_data(chip);
117 *p++ = in_be32(ndfc->ndfcbase + NDFC_DATA);
122 struct ndfc_controller *ndfc = nand_get_controller_data(chip);
126 out_be32(ndfc->ndfcbase + NDFC_DATA, *p++);
132 static int ndfc_chip_init(struct ndfc_controller *ndfc,
136 struct nand_chip *chip = &ndfc->chip;
140 chip->legacy.IO_ADDR_R = ndfc->ndfcbase + NDFC_DATA;
141 chip->legacy.IO_ADDR_W = ndfc->ndfcbase + NDFC_DATA;
146 chip->controller = &ndfc->ndfc_control;
156 nand_set_controller_data(chip, ndfc);
158 mtd->dev.parent = &ndfc->ofdev->dev;
165 mtd->name = kasprintf(GFP_KERNEL, "%s.%pOFn", dev_name(&ndfc->ofdev->dev),
187 struct ndfc_controller *ndfc;
206 ndfc = &ndfc_ctrl[cs];
207 ndfc->chip_select = cs;
209 nand_controller_init(&ndfc->ndfc_control);
210 ndfc->ofdev = ofdev;
211 dev_set_drvdata(&ofdev->dev, ndfc);
213 ndfc->ndfcbase = of_iomap(ofdev->dev.of_node, 0);
214 if (!ndfc->ndfcbase) {
219 ccr = NDFC_CCR_BS(ndfc->chip_select);
226 out_be32(ndfc->ndfcbase + NDFC_CCR, ccr);
231 int offset = NDFC_BCFG0 + (ndfc->chip_select << 2);
232 out_be32(ndfc->ndfcbase + offset, be32_to_cpup(reg));
235 err = ndfc_chip_init(ndfc, ofdev->dev.of_node);
237 iounmap(ndfc->ndfcbase);
246 struct ndfc_controller *ndfc = dev_get_drvdata(&ofdev->dev);
247 struct nand_chip *chip = &ndfc->chip;
258 { .compatible = "ibm,ndfc", },
265 .name = "ndfc",