Lines Matching refs:mmc
146 static void s3cmci_send_request(struct mmc_host *mmc);
312 mmc_signal_sdio_irq(host->mmc); in s3cmci_check_sdio_irq()
625 mmc_signal_sdio_irq(host->mmc); in s3cmci_irq()
820 mmc_detect_change(host->mmc, msecs_to_jiffies(500)); in s3cmci_irq_cd()
894 s3cmci_send_request(host->mmc); in finalize_request()
937 mmc_request_done(host->mmc, mrq); in finalize_request()
1107 dma_map_sg(mmc_dev(host->mmc), data->sg, data->sg_len, in s3cmci_prepare_dma()
1124 dma_unmap_sg(mmc_dev(host->mmc), data->sg, data->sg_len, in s3cmci_prepare_dma()
1129 static void s3cmci_send_request(struct mmc_host *mmc) in s3cmci_send_request() argument
1131 struct s3cmci_host *host = mmc_priv(mmc); in s3cmci_send_request()
1155 mmc_request_done(mmc, mrq); in s3cmci_send_request()
1169 mmc_request_done(mmc, mrq); in s3cmci_send_request()
1181 static int s3cmci_card_present(struct mmc_host *mmc) in s3cmci_card_present() argument
1183 struct s3cmci_host *host = mmc_priv(mmc); in s3cmci_card_present()
1194 static void s3cmci_request(struct mmc_host *mmc, struct mmc_request *mrq) in s3cmci_request() argument
1196 struct s3cmci_host *host = mmc_priv(mmc); in s3cmci_request()
1202 if (s3cmci_card_present(mmc) == 0) { in s3cmci_request()
1205 mmc_request_done(mmc, mrq); in s3cmci_request()
1207 s3cmci_send_request(mmc); in s3cmci_request()
1233 static void s3cmci_set_ios(struct mmc_host *mmc, struct mmc_ios *ios) in s3cmci_set_ios() argument
1235 struct s3cmci_host *host = mmc_priv(mmc); in s3cmci_set_ios()
1299 static int s3cmci_get_ro(struct mmc_host *mmc) in s3cmci_get_ro() argument
1301 struct s3cmci_host *host = mmc_priv(mmc); in s3cmci_get_ro()
1314 static void s3cmci_enable_sdio_irq(struct mmc_host *mmc, int enable) in s3cmci_enable_sdio_irq() argument
1316 struct s3cmci_host *host = mmc_priv(mmc); in s3cmci_enable_sdio_irq()
1375 struct mmc_host *mmc; in s3cmci_cpufreq_transition() local
1381 mmc = host->mmc; in s3cmci_cpufreq_transition()
1385 spin_lock_irqsave(&mmc->lock, flags); in s3cmci_cpufreq_transition()
1389 if (mmc->ios.power_mode != MMC_POWER_OFF && in s3cmci_cpufreq_transition()
1390 mmc->ios.clock != 0) in s3cmci_cpufreq_transition()
1391 s3cmci_set_clk(host, &mmc->ios); in s3cmci_cpufreq_transition()
1393 spin_unlock_irqrestore(&mmc->lock, flags); in s3cmci_cpufreq_transition()
1552 struct mmc_host *mmc; in s3cmci_probe() local
1559 mmc = mmc_alloc_host(sizeof(struct s3cmci_host), &pdev->dev); in s3cmci_probe()
1560 if (!mmc) { in s3cmci_probe()
1577 host = mmc_priv(mmc); in s3cmci_probe()
1578 host->mmc = mmc; in s3cmci_probe()
1719 mmc->ops = &s3cmci_ops; in s3cmci_probe()
1720 mmc->ocr_avail = MMC_VDD_32_33 | MMC_VDD_33_34; in s3cmci_probe()
1722 mmc->caps = MMC_CAP_4_BIT_DATA | MMC_CAP_SDIO_IRQ; in s3cmci_probe()
1724 mmc->caps = MMC_CAP_4_BIT_DATA; in s3cmci_probe()
1726 mmc->f_min = host->clk_rate / (host->clk_div * 256); in s3cmci_probe()
1727 mmc->f_max = host->clk_rate / host->clk_div; in s3cmci_probe()
1730 mmc->ocr_avail = host->pdata->ocr_avail; in s3cmci_probe()
1732 mmc->max_blk_count = 4095; in s3cmci_probe()
1733 mmc->max_blk_size = 4095; in s3cmci_probe()
1734 mmc->max_req_size = 4095 * 512; in s3cmci_probe()
1735 mmc->max_seg_size = mmc->max_req_size; in s3cmci_probe()
1737 mmc->max_segs = 128; in s3cmci_probe()
1750 ret = mmc_add_host(mmc); in s3cmci_probe()
1758 platform_set_drvdata(pdev, mmc); in s3cmci_probe()
1759 dev_info(&pdev->dev, "%s - using %s, %s SDIO IRQ\n", mmc_hostname(mmc), in s3cmci_probe()
1761 mmc->caps & MMC_CAP_SDIO_IRQ ? "hw" : "sw"); in s3cmci_probe()
1804 mmc_free_host(mmc); in s3cmci_probe()
1812 struct mmc_host *mmc = platform_get_drvdata(pdev); in s3cmci_shutdown() local
1813 struct s3cmci_host *host = mmc_priv(mmc); in s3cmci_shutdown()
1820 mmc_remove_host(mmc); in s3cmci_shutdown()
1826 struct mmc_host *mmc = platform_get_drvdata(pdev); in s3cmci_remove() local
1827 struct s3cmci_host *host = mmc_priv(mmc); in s3cmci_remove()
1855 mmc_free_host(mmc); in s3cmci_remove()