Lines Matching refs:mmc
123 struct mmc_host *mmc; member
183 dev_err(mmc_dev(host->mmc), "Failed to get dma_tx channel\n"); in jz4740_mmc_acquire_dma_channels()
189 dev_err(mmc_dev(host->mmc), "Failed to get dma_rx channel\n"); in jz4740_mmc_acquire_dma_channels()
235 dev_warn(mmc_dev(host->mmc), in jz4740_mmc_prepare_dma_data()
256 dev_err(mmc_dev(host->mmc), in jz4740_mmc_prepare_dma_data()
306 dev_err(mmc_dev(host->mmc), in jz4740_mmc_start_dma_transfer()
322 static void jz4740_mmc_pre_request(struct mmc_host *mmc, in jz4740_mmc_pre_request() argument
326 struct jz4740_mmc_host *host = mmc_priv(mmc); in jz4740_mmc_pre_request()
340 static void jz4740_mmc_post_request(struct mmc_host *mmc, in jz4740_mmc_post_request() argument
344 struct jz4740_mmc_host *host = mmc_priv(mmc); in jz4740_mmc_post_request()
417 mmc_request_done(host->mmc, req); in jz4740_mmc_request_done()
792 mmc_signal_sdio_irq(host->mmc); in jz_mmc_irq()
842 static void jz4740_mmc_request(struct mmc_host *mmc, struct mmc_request *req) in jz4740_mmc_request() argument
844 struct jz4740_mmc_host *host = mmc_priv(mmc); in jz4740_mmc_request()
859 static void jz4740_mmc_set_ios(struct mmc_host *mmc, struct mmc_ios *ios) in jz4740_mmc_set_ios() argument
861 struct jz4740_mmc_host *host = mmc_priv(mmc); in jz4740_mmc_set_ios()
896 static void jz4740_mmc_enable_sdio_irq(struct mmc_host *mmc, int enable) in jz4740_mmc_enable_sdio_irq() argument
898 struct jz4740_mmc_host *host = mmc_priv(mmc); in jz4740_mmc_enable_sdio_irq()
943 static int jz4740_mmc_request_gpios(struct mmc_host *mmc, in jz4740_mmc_request_gpios() argument
953 mmc->caps2 |= MMC_CAP2_CD_ACTIVE_HIGH; in jz4740_mmc_request_gpios()
955 mmc->caps2 |= MMC_CAP2_RO_ACTIVE_HIGH; in jz4740_mmc_request_gpios()
958 ret = mmc_gpio_request_cd(mmc, pdata->gpio_card_detect, 0); in jz4740_mmc_request_gpios()
964 ret = mmc_gpio_request_ro(mmc, pdata->gpio_read_only); in jz4740_mmc_request_gpios()
996 struct mmc_host *mmc; in jz4740_mmc_probe() local
1002 mmc = mmc_alloc_host(sizeof(struct jz4740_mmc_host), &pdev->dev); in jz4740_mmc_probe()
1003 if (!mmc) { in jz4740_mmc_probe()
1008 host = mmc_priv(mmc); in jz4740_mmc_probe()
1039 ret = jz4740_mmc_request_gpios(mmc, pdev); in jz4740_mmc_probe()
1043 mmc->ops = &jz4740_mmc_ops; in jz4740_mmc_probe()
1044 mmc->f_min = JZ_MMC_CLK_RATE / 128; in jz4740_mmc_probe()
1045 mmc->f_max = JZ_MMC_CLK_RATE; in jz4740_mmc_probe()
1046 mmc->ocr_avail = MMC_VDD_32_33 | MMC_VDD_33_34; in jz4740_mmc_probe()
1047 mmc->caps = (pdata && pdata->data_1bit) ? 0 : MMC_CAP_4_BIT_DATA; in jz4740_mmc_probe()
1048 mmc->caps |= MMC_CAP_SDIO_IRQ; in jz4740_mmc_probe()
1050 mmc->max_blk_size = (1 << 10) - 1; in jz4740_mmc_probe()
1051 mmc->max_blk_count = (1 << 15) - 1; in jz4740_mmc_probe()
1052 mmc->max_req_size = mmc->max_blk_size * mmc->max_blk_count; in jz4740_mmc_probe()
1054 mmc->max_segs = 128; in jz4740_mmc_probe()
1055 mmc->max_seg_size = mmc->max_req_size; in jz4740_mmc_probe()
1057 host->mmc = mmc; in jz4740_mmc_probe()
1081 ret = mmc_add_host(mmc); in jz4740_mmc_probe()
1091 (mmc->caps & MMC_CAP_4_BIT_DATA) ? 4 : 1); in jz4740_mmc_probe()
1104 mmc_free_host(mmc); in jz4740_mmc_probe()
1117 mmc_remove_host(host->mmc); in jz4740_mmc_remove()
1127 mmc_free_host(host->mmc); in jz4740_mmc_remove()