cafe 1676 drivers/mmc/host/sdhci-pci-core.c SDHCI_PCI_DEVICE(MARVELL, 88ALP01_SD, cafe), cafe 101 drivers/mtd/nand/raw/cafe_nand.c #define cafe_readl(cafe, addr) readl((cafe)->mmio + CAFE_##addr) cafe 102 drivers/mtd/nand/raw/cafe_nand.c #define cafe_writel(cafe, datum, addr) writel(datum, (cafe)->mmio + CAFE_##addr) cafe 106 drivers/mtd/nand/raw/cafe_nand.c struct cafe_priv *cafe = nand_get_controller_data(chip); cafe 107 drivers/mtd/nand/raw/cafe_nand.c int result = !!(cafe_readl(cafe, NAND_STATUS) & 0x40000000); cafe 108 drivers/mtd/nand/raw/cafe_nand.c uint32_t irqs = cafe_readl(cafe, NAND_IRQ); cafe 110 drivers/mtd/nand/raw/cafe_nand.c cafe_writel(cafe, irqs, NAND_IRQ); cafe 112 drivers/mtd/nand/raw/cafe_nand.c cafe_dev_dbg(&cafe->pdev->dev, "NAND device is%s ready, IRQ %x (%x) (%x,%x)\n", cafe 113 drivers/mtd/nand/raw/cafe_nand.c result?"":" not", irqs, cafe_readl(cafe, NAND_IRQ), cafe 114 drivers/mtd/nand/raw/cafe_nand.c cafe_readl(cafe, GLOBAL_IRQ), cafe_readl(cafe, GLOBAL_IRQ_MASK)); cafe 122 drivers/mtd/nand/raw/cafe_nand.c struct cafe_priv *cafe = nand_get_controller_data(chip); cafe 124 drivers/mtd/nand/raw/cafe_nand.c if (cafe->usedma) cafe 125 drivers/mtd/nand/raw/cafe_nand.c memcpy(cafe->dmabuf + cafe->datalen, buf, len); cafe 127 drivers/mtd/nand/raw/cafe_nand.c memcpy_toio(cafe->mmio + CAFE_NAND_WRITE_DATA + cafe->datalen, buf, len); cafe 129 drivers/mtd/nand/raw/cafe_nand.c cafe->datalen += len; cafe 131 drivers/mtd/nand/raw/cafe_nand.c cafe_dev_dbg(&cafe->pdev->dev, "Copy 0x%x bytes to write buffer. datalen 0x%x\n", cafe 132 drivers/mtd/nand/raw/cafe_nand.c len, cafe->datalen); cafe 137 drivers/mtd/nand/raw/cafe_nand.c struct cafe_priv *cafe = nand_get_controller_data(chip); cafe 139 drivers/mtd/nand/raw/cafe_nand.c if (cafe->usedma) cafe 140 drivers/mtd/nand/raw/cafe_nand.c memcpy(buf, cafe->dmabuf + cafe->datalen, len); cafe 142 drivers/mtd/nand/raw/cafe_nand.c memcpy_fromio(buf, cafe->mmio + CAFE_NAND_READ_DATA + cafe->datalen, len); cafe 144 drivers/mtd/nand/raw/cafe_nand.c cafe_dev_dbg(&cafe->pdev->dev, "Copy 0x%x bytes from position 0x%x in read buffer.\n", cafe 145 drivers/mtd/nand/raw/cafe_nand.c len, cafe->datalen); cafe 146 drivers/mtd/nand/raw/cafe_nand.c cafe->datalen += len; cafe 151 drivers/mtd/nand/raw/cafe_nand.c struct cafe_priv *cafe = nand_get_controller_data(chip); cafe 155 drivers/mtd/nand/raw/cafe_nand.c cafe_dev_dbg(&cafe->pdev->dev, "Read %02x\n", d); cafe 164 drivers/mtd/nand/raw/cafe_nand.c struct cafe_priv *cafe = nand_get_controller_data(chip); cafe 169 drivers/mtd/nand/raw/cafe_nand.c cafe_dev_dbg(&cafe->pdev->dev, "cmdfunc %02x, 0x%x, 0x%x\n", cafe 174 drivers/mtd/nand/raw/cafe_nand.c cafe_writel(cafe, cafe->ctl2 | 0x100 | command, NAND_CTRL2); cafe 175 drivers/mtd/nand/raw/cafe_nand.c ctl1 = cafe->ctl1; cafe 176 drivers/mtd/nand/raw/cafe_nand.c cafe->ctl2 &= ~(1<<30); cafe 177 drivers/mtd/nand/raw/cafe_nand.c cafe_dev_dbg(&cafe->pdev->dev, "Continue command, ctl1 %08x, #data %d\n", cafe 178 drivers/mtd/nand/raw/cafe_nand.c cafe->ctl1, cafe->nr_data); cafe 182 drivers/mtd/nand/raw/cafe_nand.c cafe_writel(cafe, 0, NAND_CTRL2); cafe 195 drivers/mtd/nand/raw/cafe_nand.c cafe_writel(cafe, column, NAND_ADDR1); cafe 200 drivers/mtd/nand/raw/cafe_nand.c cafe_writel(cafe, page_addr & 0xffff, NAND_ADDR1); cafe 203 drivers/mtd/nand/raw/cafe_nand.c cafe_writel(cafe, page_addr, NAND_ADDR2); cafe 209 drivers/mtd/nand/raw/cafe_nand.c cafe->data_pos = cafe->datalen = 0; cafe 212 drivers/mtd/nand/raw/cafe_nand.c ctl1 = 0x80000000 | command | (cafe->ctl1 & CTRL1_CHIPSELECT); cafe 218 drivers/mtd/nand/raw/cafe_nand.c cafe->datalen = 4; cafe 225 drivers/mtd/nand/raw/cafe_nand.c cafe->datalen = mtd->writesize + mtd->oobsize - column; cafe 236 drivers/mtd/nand/raw/cafe_nand.c cafe->ctl1 = ctl1; cafe 237 drivers/mtd/nand/raw/cafe_nand.c cafe_dev_dbg(&cafe->pdev->dev, "Setup for delayed command, ctl1 %08x, dlen %x\n", cafe 238 drivers/mtd/nand/raw/cafe_nand.c cafe->ctl1, cafe->datalen); cafe 243 drivers/mtd/nand/raw/cafe_nand.c cafe_writel(cafe, cafe->ctl2 | 0x100 | NAND_CMD_RNDOUTSTART, NAND_CTRL2); cafe 245 drivers/mtd/nand/raw/cafe_nand.c cafe_writel(cafe, cafe->ctl2 | 0x100 | NAND_CMD_READSTART, NAND_CTRL2); cafe 248 drivers/mtd/nand/raw/cafe_nand.c cafe_dev_dbg(&cafe->pdev->dev, "dlen %x, ctl1 %x, ctl2 %x\n", cafe 249 drivers/mtd/nand/raw/cafe_nand.c cafe->datalen, ctl1, cafe_readl(cafe, NAND_CTRL2)); cafe 252 drivers/mtd/nand/raw/cafe_nand.c cafe_writel(cafe, cafe->datalen, NAND_DATA_LEN); cafe 253 drivers/mtd/nand/raw/cafe_nand.c cafe_writel(cafe, 0x90000000, NAND_IRQ); cafe 254 drivers/mtd/nand/raw/cafe_nand.c if (cafe->usedma && (ctl1 & (3<<25))) { cafe 255 drivers/mtd/nand/raw/cafe_nand.c uint32_t dmactl = 0xc0000000 + cafe->datalen; cafe 264 drivers/mtd/nand/raw/cafe_nand.c cafe_writel(cafe, dmactl, NAND_DMA_CTRL); cafe 266 drivers/mtd/nand/raw/cafe_nand.c cafe->datalen = 0; cafe 272 drivers/mtd/nand/raw/cafe_nand.c printk("Register %x: %08x\n", i, readl(cafe->mmio + i)); cafe 275 drivers/mtd/nand/raw/cafe_nand.c cafe_writel(cafe, ctl1, NAND_CTRL1); cafe 285 drivers/mtd/nand/raw/cafe_nand.c irqs = cafe_readl(cafe, NAND_IRQ); cafe 290 drivers/mtd/nand/raw/cafe_nand.c cafe_dev_dbg(&cafe->pdev->dev, "Wait for ready, IRQ %x\n", irqs); cafe 293 drivers/mtd/nand/raw/cafe_nand.c cafe_writel(cafe, doneint, NAND_IRQ); cafe 294 drivers/mtd/nand/raw/cafe_nand.c cafe_dev_dbg(&cafe->pdev->dev, "Command %x completed after %d usec, irqs %x (%x)\n", cafe 295 drivers/mtd/nand/raw/cafe_nand.c command, 500000-c, irqs, cafe_readl(cafe, NAND_IRQ)); cafe 298 drivers/mtd/nand/raw/cafe_nand.c WARN_ON(cafe->ctl2 & (1<<30)); cafe 310 drivers/mtd/nand/raw/cafe_nand.c cafe_writel(cafe, cafe->ctl2, NAND_CTRL2); cafe 314 drivers/mtd/nand/raw/cafe_nand.c cafe_writel(cafe, cafe->ctl2, NAND_CTRL2); cafe 319 drivers/mtd/nand/raw/cafe_nand.c struct cafe_priv *cafe = nand_get_controller_data(chip); cafe 321 drivers/mtd/nand/raw/cafe_nand.c cafe_dev_dbg(&cafe->pdev->dev, "select_chip %d\n", chipnr); cafe 326 drivers/mtd/nand/raw/cafe_nand.c cafe->ctl1 |= CTRL1_CHIPSELECT; cafe 328 drivers/mtd/nand/raw/cafe_nand.c cafe->ctl1 &= ~CTRL1_CHIPSELECT; cafe 335 drivers/mtd/nand/raw/cafe_nand.c struct cafe_priv *cafe = nand_get_controller_data(chip); cafe 336 drivers/mtd/nand/raw/cafe_nand.c uint32_t irqs = cafe_readl(cafe, NAND_IRQ); cafe 337 drivers/mtd/nand/raw/cafe_nand.c cafe_writel(cafe, irqs & ~0x90000000, NAND_IRQ); cafe 341 drivers/mtd/nand/raw/cafe_nand.c cafe_dev_dbg(&cafe->pdev->dev, "irq, bits %x (%x)\n", irqs, cafe_readl(cafe, NAND_IRQ)); cafe 374 drivers/mtd/nand/raw/cafe_nand.c struct cafe_priv *cafe = nand_get_controller_data(chip); cafe 377 drivers/mtd/nand/raw/cafe_nand.c cafe_dev_dbg(&cafe->pdev->dev, "ECC result %08x SYN1,2 %08x\n", cafe 378 drivers/mtd/nand/raw/cafe_nand.c cafe_readl(cafe, NAND_ECC_RESULT), cafe 379 drivers/mtd/nand/raw/cafe_nand.c cafe_readl(cafe, NAND_ECC_SYN01)); cafe 384 drivers/mtd/nand/raw/cafe_nand.c if (checkecc && cafe_readl(cafe, NAND_ECC_RESULT) & (1<<18)) { cafe 391 drivers/mtd/nand/raw/cafe_nand.c uint32_t tmp = cafe_readl(cafe, NAND_ECC_SYN01 + (i*2)); cafe 393 drivers/mtd/nand/raw/cafe_nand.c syn[i] = cafe->rs->codec->index_of[tmp & 0xfff]; cafe 394 drivers/mtd/nand/raw/cafe_nand.c syn[i+1] = cafe->rs->codec->index_of[(tmp >> 16) & 0xfff]; cafe 397 drivers/mtd/nand/raw/cafe_nand.c n = decode_rs16(cafe->rs, NULL, NULL, 1367, syn, 0, pos, 0, cafe 435 drivers/mtd/nand/raw/cafe_nand.c dev_dbg(&cafe->pdev->dev, "Failed to correct ECC at %08x\n", cafe 436 drivers/mtd/nand/raw/cafe_nand.c cafe_readl(cafe, NAND_ADDR2) * 2048); cafe 438 drivers/mtd/nand/raw/cafe_nand.c printk("Register %x: %08x\n", i, readl(cafe->mmio + i)); cafe 441 drivers/mtd/nand/raw/cafe_nand.c dev_dbg(&cafe->pdev->dev, "Corrected %d symbol errors\n", n); cafe 538 drivers/mtd/nand/raw/cafe_nand.c struct cafe_priv *cafe = nand_get_controller_data(chip); cafe 544 drivers/mtd/nand/raw/cafe_nand.c cafe->ctl2 |= (1<<30); cafe 599 drivers/mtd/nand/raw/cafe_nand.c struct cafe_priv *cafe = nand_get_controller_data(chip); cafe 602 drivers/mtd/nand/raw/cafe_nand.c cafe->dmabuf = dma_alloc_coherent(&cafe->pdev->dev, 2112, cafe 603 drivers/mtd/nand/raw/cafe_nand.c &cafe->dmaaddr, GFP_KERNEL); cafe 604 drivers/mtd/nand/raw/cafe_nand.c if (!cafe->dmabuf) cafe 608 drivers/mtd/nand/raw/cafe_nand.c cafe_writel(cafe, lower_32_bits(cafe->dmaaddr), NAND_DMA_ADDR0); cafe 609 drivers/mtd/nand/raw/cafe_nand.c cafe_writel(cafe, upper_32_bits(cafe->dmaaddr), NAND_DMA_ADDR1); cafe 611 drivers/mtd/nand/raw/cafe_nand.c cafe_dev_dbg(&cafe->pdev->dev, "Set DMA address to %x (virt %p)\n", cafe 612 drivers/mtd/nand/raw/cafe_nand.c cafe_readl(cafe, NAND_DMA_ADDR0), cafe->dmabuf); cafe 615 drivers/mtd/nand/raw/cafe_nand.c cafe->usedma = usedma; cafe 617 drivers/mtd/nand/raw/cafe_nand.c cafe->ctl2 = BIT(27); /* Reed-Solomon ECC */ cafe 619 drivers/mtd/nand/raw/cafe_nand.c cafe->ctl2 |= BIT(29); /* 2KiB page size */ cafe 624 drivers/mtd/nand/raw/cafe_nand.c cafe->nand.bbt_td = &cafe_bbt_main_descr_2048; cafe 625 drivers/mtd/nand/raw/cafe_nand.c cafe->nand.bbt_md = &cafe_bbt_mirror_descr_2048; cafe 627 drivers/mtd/nand/raw/cafe_nand.c cafe->nand.bbt_td = &cafe_bbt_main_descr_512; cafe 628 drivers/mtd/nand/raw/cafe_nand.c cafe->nand.bbt_md = &cafe_bbt_mirror_descr_512; cafe 630 drivers/mtd/nand/raw/cafe_nand.c dev_warn(&cafe->pdev->dev, cafe 637 drivers/mtd/nand/raw/cafe_nand.c cafe->nand.ecc.mode = NAND_ECC_HW_SYNDROME; cafe 638 drivers/mtd/nand/raw/cafe_nand.c cafe->nand.ecc.size = mtd->writesize; cafe 639 drivers/mtd/nand/raw/cafe_nand.c cafe->nand.ecc.bytes = 14; cafe 640 drivers/mtd/nand/raw/cafe_nand.c cafe->nand.ecc.strength = 4; cafe 641 drivers/mtd/nand/raw/cafe_nand.c cafe->nand.ecc.write_page = cafe_nand_write_page_lowlevel; cafe 642 drivers/mtd/nand/raw/cafe_nand.c cafe->nand.ecc.write_oob = cafe_nand_write_oob; cafe 643 drivers/mtd/nand/raw/cafe_nand.c cafe->nand.ecc.read_page = cafe_nand_read_page; cafe 644 drivers/mtd/nand/raw/cafe_nand.c cafe->nand.ecc.read_oob = cafe_nand_read_oob; cafe 649 drivers/mtd/nand/raw/cafe_nand.c dma_free_coherent(&cafe->pdev->dev, 2112, cafe->dmabuf, cafe->dmaaddr); cafe 656 drivers/mtd/nand/raw/cafe_nand.c struct cafe_priv *cafe = nand_get_controller_data(chip); cafe 658 drivers/mtd/nand/raw/cafe_nand.c dma_free_coherent(&cafe->pdev->dev, 2112, cafe->dmabuf, cafe->dmaaddr); cafe 670 drivers/mtd/nand/raw/cafe_nand.c struct cafe_priv *cafe; cafe 685 drivers/mtd/nand/raw/cafe_nand.c cafe = kzalloc(sizeof(*cafe), GFP_KERNEL); cafe 686 drivers/mtd/nand/raw/cafe_nand.c if (!cafe) cafe 689 drivers/mtd/nand/raw/cafe_nand.c mtd = nand_to_mtd(&cafe->nand); cafe 691 drivers/mtd/nand/raw/cafe_nand.c nand_set_controller_data(&cafe->nand, cafe); cafe 693 drivers/mtd/nand/raw/cafe_nand.c cafe->pdev = pdev; cafe 694 drivers/mtd/nand/raw/cafe_nand.c cafe->mmio = pci_iomap(pdev, 0, 0); cafe 695 drivers/mtd/nand/raw/cafe_nand.c if (!cafe->mmio) { cafe 701 drivers/mtd/nand/raw/cafe_nand.c cafe->rs = init_rs_non_canonical(12, &cafe_mul, 0, 1, 8); cafe 702 drivers/mtd/nand/raw/cafe_nand.c if (!cafe->rs) { cafe 707 drivers/mtd/nand/raw/cafe_nand.c cafe->nand.legacy.cmdfunc = cafe_nand_cmdfunc; cafe 708 drivers/mtd/nand/raw/cafe_nand.c cafe->nand.legacy.dev_ready = cafe_device_ready; cafe 709 drivers/mtd/nand/raw/cafe_nand.c cafe->nand.legacy.read_byte = cafe_read_byte; cafe 710 drivers/mtd/nand/raw/cafe_nand.c cafe->nand.legacy.read_buf = cafe_read_buf; cafe 711 drivers/mtd/nand/raw/cafe_nand.c cafe->nand.legacy.write_buf = cafe_write_buf; cafe 712 drivers/mtd/nand/raw/cafe_nand.c cafe->nand.legacy.select_chip = cafe_select_chip; cafe 713 drivers/mtd/nand/raw/cafe_nand.c cafe->nand.legacy.set_features = nand_get_set_features_notsupp; cafe 714 drivers/mtd/nand/raw/cafe_nand.c cafe->nand.legacy.get_features = nand_get_set_features_notsupp; cafe 716 drivers/mtd/nand/raw/cafe_nand.c cafe->nand.legacy.chip_delay = 0; cafe 719 drivers/mtd/nand/raw/cafe_nand.c cafe->nand.bbt_options = NAND_BBT_USE_FLASH; cafe 722 drivers/mtd/nand/raw/cafe_nand.c cafe->nand.options |= NAND_SKIP_BBTSCAN; cafe 723 drivers/mtd/nand/raw/cafe_nand.c cafe->nand.legacy.block_bad = cafe_nand_block_bad; cafe 727 drivers/mtd/nand/raw/cafe_nand.c dev_warn(&cafe->pdev->dev, "%d timing register values ignored; precisely three are required\n", numtimings); cafe 731 drivers/mtd/nand/raw/cafe_nand.c cafe_dev_dbg(&cafe->pdev->dev, "Using provided timings (%08x %08x %08x)\n", cafe 734 drivers/mtd/nand/raw/cafe_nand.c timing[0] = cafe_readl(cafe, NAND_TIMING1); cafe 735 drivers/mtd/nand/raw/cafe_nand.c timing[1] = cafe_readl(cafe, NAND_TIMING2); cafe 736 drivers/mtd/nand/raw/cafe_nand.c timing[2] = cafe_readl(cafe, NAND_TIMING3); cafe 739 drivers/mtd/nand/raw/cafe_nand.c cafe_dev_dbg(&cafe->pdev->dev, "Timing registers already set (%08x %08x %08x)\n", cafe 742 drivers/mtd/nand/raw/cafe_nand.c dev_warn(&cafe->pdev->dev, "Timing registers unset; using most conservative defaults\n"); cafe 748 drivers/mtd/nand/raw/cafe_nand.c cafe_writel(cafe, 1, NAND_RESET); cafe 749 drivers/mtd/nand/raw/cafe_nand.c cafe_writel(cafe, 0, NAND_RESET); cafe 751 drivers/mtd/nand/raw/cafe_nand.c cafe_writel(cafe, timing[0], NAND_TIMING1); cafe 752 drivers/mtd/nand/raw/cafe_nand.c cafe_writel(cafe, timing[1], NAND_TIMING2); cafe 753 drivers/mtd/nand/raw/cafe_nand.c cafe_writel(cafe, timing[2], NAND_TIMING3); cafe 755 drivers/mtd/nand/raw/cafe_nand.c cafe_writel(cafe, 0xffffffff, NAND_IRQ_MASK); cafe 764 drivers/mtd/nand/raw/cafe_nand.c ctrl = cafe_readl(cafe, GLOBAL_CTRL); cafe 767 drivers/mtd/nand/raw/cafe_nand.c cafe_writel(cafe, ctrl | 0x05, GLOBAL_CTRL); cafe 768 drivers/mtd/nand/raw/cafe_nand.c cafe_writel(cafe, ctrl | 0x0a, GLOBAL_CTRL); cafe 769 drivers/mtd/nand/raw/cafe_nand.c cafe_writel(cafe, 0, NAND_DMA_CTRL); cafe 771 drivers/mtd/nand/raw/cafe_nand.c cafe_writel(cafe, 0x7006, GLOBAL_CTRL); cafe 772 drivers/mtd/nand/raw/cafe_nand.c cafe_writel(cafe, 0x700a, GLOBAL_CTRL); cafe 775 drivers/mtd/nand/raw/cafe_nand.c cafe_writel(cafe, 0x80000007, GLOBAL_IRQ_MASK); cafe 776 drivers/mtd/nand/raw/cafe_nand.c cafe_dev_dbg(&cafe->pdev->dev, "Control %x, IRQ mask %x\n", cafe 777 drivers/mtd/nand/raw/cafe_nand.c cafe_readl(cafe, GLOBAL_CTRL), cafe 778 drivers/mtd/nand/raw/cafe_nand.c cafe_readl(cafe, GLOBAL_IRQ_MASK)); cafe 781 drivers/mtd/nand/raw/cafe_nand.c cafe->usedma = 0; cafe 784 drivers/mtd/nand/raw/cafe_nand.c cafe->nand.legacy.dummy_controller.ops = &cafe_nand_controller_ops; cafe 785 drivers/mtd/nand/raw/cafe_nand.c err = nand_scan(&cafe->nand, 2); cafe 799 drivers/mtd/nand/raw/cafe_nand.c nand_cleanup(&cafe->nand); cafe 802 drivers/mtd/nand/raw/cafe_nand.c cafe_writel(cafe, ~1 & cafe_readl(cafe, GLOBAL_IRQ_MASK), GLOBAL_IRQ_MASK); cafe 805 drivers/mtd/nand/raw/cafe_nand.c pci_iounmap(pdev, cafe->mmio); cafe 807 drivers/mtd/nand/raw/cafe_nand.c kfree(cafe); cafe 816 drivers/mtd/nand/raw/cafe_nand.c struct cafe_priv *cafe = nand_get_controller_data(chip); cafe 819 drivers/mtd/nand/raw/cafe_nand.c cafe_writel(cafe, ~1 & cafe_readl(cafe, GLOBAL_IRQ_MASK), GLOBAL_IRQ_MASK); cafe 822 drivers/mtd/nand/raw/cafe_nand.c free_rs(cafe->rs); cafe 823 drivers/mtd/nand/raw/cafe_nand.c pci_iounmap(pdev, cafe->mmio); cafe 824 drivers/mtd/nand/raw/cafe_nand.c dma_free_coherent(&cafe->pdev->dev, 2112, cafe->dmabuf, cafe->dmaaddr); cafe 825 drivers/mtd/nand/raw/cafe_nand.c kfree(cafe); cafe 841 drivers/mtd/nand/raw/cafe_nand.c struct cafe_priv *cafe = nand_get_controller_data(chip); cafe 844 drivers/mtd/nand/raw/cafe_nand.c cafe_writel(cafe, 1, NAND_RESET); cafe 845 drivers/mtd/nand/raw/cafe_nand.c cafe_writel(cafe, 0, NAND_RESET); cafe 846 drivers/mtd/nand/raw/cafe_nand.c cafe_writel(cafe, 0xffffffff, NAND_IRQ_MASK); cafe 849 drivers/mtd/nand/raw/cafe_nand.c cafe_writel(cafe, timing[0], NAND_TIMING1); cafe 850 drivers/mtd/nand/raw/cafe_nand.c cafe_writel(cafe, timing[1], NAND_TIMING2); cafe 851 drivers/mtd/nand/raw/cafe_nand.c cafe_writel(cafe, timing[2], NAND_TIMING3); cafe 854 drivers/mtd/nand/raw/cafe_nand.c ctrl = cafe_readl(cafe, GLOBAL_CTRL); cafe 857 drivers/mtd/nand/raw/cafe_nand.c cafe_writel(cafe, ctrl | 0x05, GLOBAL_CTRL); cafe 858 drivers/mtd/nand/raw/cafe_nand.c cafe_writel(cafe, ctrl | 0x0a, GLOBAL_CTRL); cafe 859 drivers/mtd/nand/raw/cafe_nand.c cafe_writel(cafe, 0, NAND_DMA_CTRL); cafe 860 drivers/mtd/nand/raw/cafe_nand.c cafe_writel(cafe, 0x7006, GLOBAL_CTRL); cafe 861 drivers/mtd/nand/raw/cafe_nand.c cafe_writel(cafe, 0x700a, GLOBAL_CTRL); cafe 864 drivers/mtd/nand/raw/cafe_nand.c cafe_writel(cafe, cafe->dmaaddr & 0xffffffff, NAND_DMA_ADDR0); cafe 865 drivers/mtd/nand/raw/cafe_nand.c if (sizeof(cafe->dmaaddr) > 4) cafe 867 drivers/mtd/nand/raw/cafe_nand.c cafe_writel(cafe, (cafe->dmaaddr >> 16) >> 16, NAND_DMA_ADDR1); cafe 869 drivers/mtd/nand/raw/cafe_nand.c cafe_writel(cafe, 0, NAND_DMA_ADDR1); cafe 872 drivers/mtd/nand/raw/cafe_nand.c cafe_writel(cafe, 0x80000007, GLOBAL_IRQ_MASK);