Lines Matching refs:sdmmc_base
187 void __iomem *sdmmc_base; member
213 u32 reg_tmp = readb(priv->sdmmc_base + SDMMC_BUSMODE); in wmt_set_sd_power()
220 writeb(reg_tmp, priv->sdmmc_base + SDMMC_BUSMODE); in wmt_set_sd_power()
236 tmp_resp = readb(priv->sdmmc_base + SDMMC_RSP); in wmt_mci_read_response()
238 tmp_resp = readb(priv->sdmmc_base + SDMMC_RSP + in wmt_mci_read_response()
250 reg_tmp = readb(priv->sdmmc_base + SDMMC_CTLR); in wmt_mci_start_command()
251 writeb(reg_tmp | CTLR_CMD_START, priv->sdmmc_base + SDMMC_CTLR); in wmt_mci_start_command()
263 writeb(command, priv->sdmmc_base + SDMMC_CMD); in wmt_mci_send_command()
264 writel(arg, priv->sdmmc_base + SDMMC_ARG); in wmt_mci_send_command()
265 writeb(rsptype, priv->sdmmc_base + SDMMC_RSPTYPE); in wmt_mci_send_command()
268 reg_tmp = readb(priv->sdmmc_base + SDMMC_CTLR); in wmt_mci_send_command()
269 writeb(reg_tmp | CTLR_FIFO_RESET, priv->sdmmc_base + SDMMC_CTLR); in wmt_mci_send_command()
275 writeb(0xFF, priv->sdmmc_base + SDMMC_STS0); in wmt_mci_send_command()
276 writeb(0xFF, priv->sdmmc_base + SDMMC_STS1); in wmt_mci_send_command()
277 writeb(0xFF, priv->sdmmc_base + SDMMC_STS2); in wmt_mci_send_command()
278 writeb(0xFF, priv->sdmmc_base + SDMMC_STS3); in wmt_mci_send_command()
281 reg_tmp = readb(priv->sdmmc_base + SDMMC_CTLR); in wmt_mci_send_command()
283 priv->sdmmc_base + SDMMC_CTLR); in wmt_mci_send_command()
290 writel(DMA_ISR_INT_STS, priv->sdmmc_base + SDDMA_ISR); in wmt_mci_disable_dma()
291 writel(0, priv->sdmmc_base + SDDMA_IER); in wmt_mci_disable_dma()
341 status = readl(priv->sdmmc_base + SDDMA_CCR) & 0x0F; in wmt_mci_dma_isr()
381 status0 = readb(priv->sdmmc_base + SDMMC_STS0); in wmt_mci_regular_isr()
382 status1 = readb(priv->sdmmc_base + SDMMC_STS1); in wmt_mci_regular_isr()
383 status2 = readb(priv->sdmmc_base + SDMMC_STS2); in wmt_mci_regular_isr()
386 reg_tmp = readb(priv->sdmmc_base + SDMMC_INTMASK0); in wmt_mci_regular_isr()
397 writeb(STS0_DEVICE_INS, priv->sdmmc_base + SDMMC_STS0); in wmt_mci_regular_isr()
455 writeb(status0, priv->sdmmc_base + SDMMC_STS0); in wmt_mci_regular_isr()
456 writeb(status1, priv->sdmmc_base + SDMMC_STS1); in wmt_mci_regular_isr()
457 writeb(status2, priv->sdmmc_base + SDMMC_STS2); in wmt_mci_regular_isr()
470 reg_tmp = readb(priv->sdmmc_base + SDMMC_BUSMODE); in wmt_reset_hardware()
471 writeb(reg_tmp | BM_SOFT_RESET, priv->sdmmc_base + SDMMC_BUSMODE); in wmt_reset_hardware()
474 reg_tmp = readb(priv->sdmmc_base + SDMMC_CTLR); in wmt_reset_hardware()
475 writeb(reg_tmp | CTLR_FIFO_RESET, priv->sdmmc_base + SDMMC_CTLR); in wmt_reset_hardware()
478 writew(BLKL_INT_ENABLE | BLKL_GPI_CD, priv->sdmmc_base + SDMMC_BLKLEN); in wmt_reset_hardware()
481 writeb(0xFF, priv->sdmmc_base + SDMMC_STS0); in wmt_reset_hardware()
482 writeb(0xFF, priv->sdmmc_base + SDMMC_STS1); in wmt_reset_hardware()
485 writeb(INT0_CD_INT_EN | INT0_DI_INT_EN, priv->sdmmc_base + in wmt_reset_hardware()
488 INT1_CMD_RES_TOUT_INT_EN, priv->sdmmc_base + SDMMC_INTMASK1); in wmt_reset_hardware()
491 writew(8191, priv->sdmmc_base + SDMMC_DMATIMEOUT); in wmt_reset_hardware()
494 reg_tmp = readb(priv->sdmmc_base + SDMMC_STS2); in wmt_reset_hardware()
495 writeb(reg_tmp | STS2_DIS_FORCECLK, priv->sdmmc_base + SDMMC_STS2); in wmt_reset_hardware()
507 writel(DMA_GCR_SOFT_RESET, priv->sdmmc_base + SDDMA_GCR); in wmt_dma_init()
508 writel(DMA_GCR_DMA_EN, priv->sdmmc_base + SDDMA_GCR); in wmt_dma_init()
509 if ((readl(priv->sdmmc_base + SDDMA_GCR) & DMA_GCR_DMA_EN) != 0) in wmt_dma_init()
533 writel(DMA_IER_INT_EN, priv->sdmmc_base + SDDMA_IER); in wmt_dma_config()
536 writel(descaddr, priv->sdmmc_base + SDDMA_DESPR); in wmt_dma_config()
538 writel(0x00, priv->sdmmc_base + SDDMA_CCR); in wmt_dma_config()
541 reg_tmp = readl(priv->sdmmc_base + SDDMA_CCR); in wmt_dma_config()
542 writel(reg_tmp & DMA_CCR_IF_TO_PERIPHERAL, priv->sdmmc_base + in wmt_dma_config()
545 reg_tmp = readl(priv->sdmmc_base + SDDMA_CCR); in wmt_dma_config()
546 writel(reg_tmp | DMA_CCR_PERIPHERAL_TO_IF, priv->sdmmc_base + in wmt_dma_config()
555 reg_tmp = readl(priv->sdmmc_base + SDDMA_CCR); in wmt_dma_start()
556 writel(reg_tmp | DMA_CCR_RUN, priv->sdmmc_base + SDDMA_CCR); in wmt_dma_start()
610 reg_tmp = readw(priv->sdmmc_base + SDMMC_BLKLEN); in wmt_mci_request()
612 priv->sdmmc_base + SDMMC_BLKLEN); in wmt_mci_request()
615 writew(req->data->blocks, priv->sdmmc_base + SDMMC_BLKCNT); in wmt_mci_request()
688 busmode = readb(priv->sdmmc_base + SDMMC_BUSMODE); in wmt_mci_set_ios()
689 extctrl = readb(priv->sdmmc_base + SDMMC_EXTCTRL); in wmt_mci_set_ios()
706 writeb(busmode, priv->sdmmc_base + SDMMC_BUSMODE); in wmt_mci_set_ios()
707 writeb(extctrl, priv->sdmmc_base + SDMMC_EXTCTRL); in wmt_mci_set_ios()
714 return !(readb(priv->sdmmc_base + SDMMC_STS0) & STS0_WRITE_PROTECT); in wmt_mci_get_ro()
720 u32 cd = (readb(priv->sdmmc_base + SDMMC_STS0) & STS0_CD_GPI) >> 3; in wmt_mci_get_cd()
813 priv->sdmmc_base = of_iomap(np, 0); in wmt_mci_probe()
814 if (!priv->sdmmc_base) { in wmt_mci_probe()
874 iounmap(priv->sdmmc_base); in wmt_mci_probe()
892 reg_tmp = readb(priv->sdmmc_base + SDMMC_BUSMODE); in wmt_mci_remove()
893 writel(reg_tmp | BM_SOFT_RESET, priv->sdmmc_base + SDMMC_BUSMODE); in wmt_mci_remove()
894 reg_tmp = readw(priv->sdmmc_base + SDMMC_BLKLEN); in wmt_mci_remove()
895 writew(reg_tmp & ~(0xA000), priv->sdmmc_base + SDMMC_BLKLEN); in wmt_mci_remove()
896 writeb(0xFF, priv->sdmmc_base + SDMMC_STS0); in wmt_mci_remove()
897 writeb(0xFF, priv->sdmmc_base + SDMMC_STS1); in wmt_mci_remove()
908 iounmap(priv->sdmmc_base); in wmt_mci_remove()
934 reg_tmp = readb(priv->sdmmc_base + SDMMC_BUSMODE); in wmt_mci_suspend()
935 writeb(reg_tmp | BM_SOFT_RESET, priv->sdmmc_base + in wmt_mci_suspend()
938 reg_tmp = readw(priv->sdmmc_base + SDMMC_BLKLEN); in wmt_mci_suspend()
939 writew(reg_tmp & 0x5FFF, priv->sdmmc_base + SDMMC_BLKLEN); in wmt_mci_suspend()
941 writeb(0xFF, priv->sdmmc_base + SDMMC_STS0); in wmt_mci_suspend()
942 writeb(0xFF, priv->sdmmc_base + SDMMC_STS1); in wmt_mci_suspend()
958 reg_tmp = readb(priv->sdmmc_base + SDMMC_BUSMODE); in wmt_mci_resume()
959 writeb(reg_tmp | BM_SOFT_RESET, priv->sdmmc_base + in wmt_mci_resume()
962 reg_tmp = readw(priv->sdmmc_base + SDMMC_BLKLEN); in wmt_mci_resume()
964 priv->sdmmc_base + SDMMC_BLKLEN); in wmt_mci_resume()
966 reg_tmp = readb(priv->sdmmc_base + SDMMC_INTMASK0); in wmt_mci_resume()
967 writeb(reg_tmp | INT0_DI_INT_EN, priv->sdmmc_base + in wmt_mci_resume()