Lines Matching refs:sunxi_nand

382 	struct sunxi_nand_chip *sunxi_nand = to_sunxi_nand(nand);  in sunxi_nfc_dev_ready()  local
383 struct sunxi_nfc *nfc = to_sunxi_nfc(sunxi_nand->nand.controller); in sunxi_nfc_dev_ready()
385 unsigned long timeo = (sunxi_nand->nand.state == FL_ERASING ? 400 : 20); in sunxi_nfc_dev_ready()
388 if (sunxi_nand->selected < 0) in sunxi_nfc_dev_ready()
391 rb = &sunxi_nand->sels[sunxi_nand->selected].rb; in sunxi_nfc_dev_ready()
420 struct sunxi_nand_chip *sunxi_nand = to_sunxi_nand(nand); in sunxi_nfc_select_chip() local
421 struct sunxi_nfc *nfc = to_sunxi_nfc(sunxi_nand->nand.controller); in sunxi_nfc_select_chip()
425 if (chip > 0 && chip >= sunxi_nand->nsels) in sunxi_nfc_select_chip()
428 if (chip == sunxi_nand->selected) in sunxi_nfc_select_chip()
435 sel = &sunxi_nand->sels[chip]; in sunxi_nfc_select_chip()
449 if (nfc->clk_rate != sunxi_nand->clk_rate) { in sunxi_nfc_select_chip()
450 sunxi_nfc_set_clk_rate(sunxi_nand->clk_rate); in sunxi_nfc_select_chip()
451 nfc->clk_rate = sunxi_nand->clk_rate; in sunxi_nfc_select_chip()
455 writel(sunxi_nand->timing_ctl, nfc->regs + NFC_REG_TIMING_CTL); in sunxi_nfc_select_chip()
456 writel(sunxi_nand->timing_cfg, nfc->regs + NFC_REG_TIMING_CFG); in sunxi_nfc_select_chip()
459 sunxi_nand->selected = chip; in sunxi_nfc_select_chip()
465 struct sunxi_nand_chip *sunxi_nand = to_sunxi_nand(nand); in sunxi_nfc_read_buf() local
466 struct sunxi_nfc *nfc = to_sunxi_nfc(sunxi_nand->nand.controller); in sunxi_nfc_read_buf()
498 struct sunxi_nand_chip *sunxi_nand = to_sunxi_nand(nand); in sunxi_nfc_write_buf() local
499 struct sunxi_nfc *nfc = to_sunxi_nfc(sunxi_nand->nand.controller); in sunxi_nfc_write_buf()
539 struct sunxi_nand_chip *sunxi_nand = to_sunxi_nand(nand); in sunxi_nfc_cmd_ctrl() local
540 struct sunxi_nfc *nfc = to_sunxi_nfc(sunxi_nand->nand.controller); in sunxi_nfc_cmd_ctrl()
561 if (!sunxi_nand->addr_cycles && !sunxi_nand->cmd_cycles) in sunxi_nfc_cmd_ctrl()
564 if (sunxi_nand->cmd_cycles--) in sunxi_nfc_cmd_ctrl()
565 cmd |= NFC_SEND_CMD1 | sunxi_nand->cmd[0]; in sunxi_nfc_cmd_ctrl()
567 if (sunxi_nand->cmd_cycles--) { in sunxi_nfc_cmd_ctrl()
569 writel(sunxi_nand->cmd[1], in sunxi_nfc_cmd_ctrl()
573 sunxi_nand->cmd_cycles = 0; in sunxi_nfc_cmd_ctrl()
575 if (sunxi_nand->addr_cycles) { in sunxi_nfc_cmd_ctrl()
577 NFC_ADR_NUM(sunxi_nand->addr_cycles); in sunxi_nfc_cmd_ctrl()
578 writel(sunxi_nand->addr[0], in sunxi_nfc_cmd_ctrl()
582 if (sunxi_nand->addr_cycles > 4) in sunxi_nfc_cmd_ctrl()
583 writel(sunxi_nand->addr[1], in sunxi_nfc_cmd_ctrl()
587 sunxi_nand->addr[0] = 0; in sunxi_nfc_cmd_ctrl()
588 sunxi_nand->addr[1] = 0; in sunxi_nfc_cmd_ctrl()
589 sunxi_nand->addr_cycles = 0; in sunxi_nfc_cmd_ctrl()
594 sunxi_nand->cmd[sunxi_nand->cmd_cycles++] = dat; in sunxi_nfc_cmd_ctrl()
596 sunxi_nand->addr[sunxi_nand->addr_cycles / 4] |= in sunxi_nfc_cmd_ctrl()
597 dat << ((sunxi_nand->addr_cycles % 4) * 8); in sunxi_nfc_cmd_ctrl()
598 sunxi_nand->addr_cycles++; in sunxi_nfc_cmd_ctrl()