Lines Matching defs:host
25 #include <linux/mmc/host.h>
64 struct mxs_mmc_host *host = mmc_priv(mmc);
65 struct mxs_ssp *ssp = &host->ssp;
68 if (host->broken_cd)
85 static int mxs_mmc_reset(struct mxs_mmc_host *host)
87 struct mxs_ssp *ssp = &host->ssp;
111 if (host->sdio_irq_en) {
121 static void mxs_mmc_start_cmd(struct mxs_mmc_host *host,
124 static void mxs_mmc_request_done(struct mxs_mmc_host *host)
126 struct mmc_command *cmd = host->cmd;
127 struct mmc_data *data = host->data;
128 struct mmc_request *mrq = host->mrq;
129 struct mxs_ssp *ssp = &host->ssp;
144 mxs_mmc_start_cmd(host, mrq->cmd);
147 dma_unmap_sg(mmc_dev(host->mmc), data->sg,
158 host->data = NULL;
160 mxs_mmc_start_cmd(host, mrq->stop);
165 host->mrq = NULL;
166 mmc_request_done(host->mmc, mrq);
171 struct mxs_mmc_host *host = param;
173 mxs_mmc_request_done(host);
178 struct mxs_mmc_host *host = dev_id;
179 struct mmc_command *cmd = host->cmd;
180 struct mmc_data *data = host->data;
181 struct mxs_ssp *ssp = &host->ssp;
184 spin_lock(&host->lock);
190 spin_unlock(&host->lock);
193 mmc_signal_sdio_irq(host->mmc);
215 struct mxs_mmc_host *host, unsigned long flags)
217 struct mxs_ssp *ssp = &host->ssp;
219 struct mmc_data *data = host->data;
225 dma_map_sg(mmc_dev(host->mmc), data->sg,
239 desc->callback_param = host;
242 dma_unmap_sg(mmc_dev(host->mmc), data->sg,
249 static void mxs_mmc_bc(struct mxs_mmc_host *host)
251 struct mxs_ssp *ssp = &host->ssp;
252 struct mmc_command *cmd = host->cmd;
260 if (host->sdio_irq_en) {
270 desc = mxs_mmc_prep_dma(host, MXS_DMA_CTRL_WAIT4END);
279 dev_warn(mmc_dev(host->mmc),
283 static void mxs_mmc_ac(struct mxs_mmc_host *host)
285 struct mxs_ssp *ssp = &host->ssp;
286 struct mmc_command *cmd = host->cmd;
305 if (host->sdio_irq_en) {
315 desc = mxs_mmc_prep_dma(host, MXS_DMA_CTRL_WAIT4END);
324 dev_warn(mmc_dev(host->mmc),
344 static void mxs_mmc_adtc(struct mxs_mmc_host *host)
346 struct mmc_command *cmd = host->cmd;
358 struct mxs_ssp *ssp = &host->ssp;
380 ctrl0 = BF_SSP(host->bus_width, CTRL0_BUS_WIDTH) |
418 if (host->sdio_irq_en) {
436 desc = mxs_mmc_prep_dma(host, 0);
441 WARN_ON(host->data != NULL);
442 host->data = data;
445 desc = mxs_mmc_prep_dma(host, DMA_PREP_INTERRUPT | MXS_DMA_CTRL_WAIT4END);
453 dev_warn(mmc_dev(host->mmc),
457 static void mxs_mmc_start_cmd(struct mxs_mmc_host *host,
460 host->cmd = cmd;
464 mxs_mmc_bc(host);
467 mxs_mmc_ac(host);
470 mxs_mmc_ac(host);
473 mxs_mmc_adtc(host);
476 dev_warn(mmc_dev(host->mmc),
484 struct mxs_mmc_host *host = mmc_priv(mmc);
486 WARN_ON(host->mrq != NULL);
487 host->mrq = mrq;
490 mxs_mmc_start_cmd(host, mrq->sbc);
492 mxs_mmc_start_cmd(host, mrq->cmd);
497 struct mxs_mmc_host *host = mmc_priv(mmc);
500 host->bus_width = 2;
502 host->bus_width = 1;
504 host->bus_width = 0;
507 mxs_ssp_set_clk_rate(&host->ssp, ios->clock);
512 struct mxs_mmc_host *host = mmc_priv(mmc);
513 struct mxs_ssp *ssp = &host->ssp;
516 spin_lock_irqsave(&host->lock, flags);
518 host->sdio_irq_en = enable;
532 spin_unlock_irqrestore(&host->lock, flags);
536 mmc_signal_sdio_irq(host->mmc);
578 struct mxs_mmc_host *host;
592 host = mmc_priv(mmc);
593 ssp = &host->ssp;
603 host->mmc = mmc;
604 host->sdio_irq_en = 0;
630 ret = mxs_mmc_reset(host);
638 dev_err(mmc_dev(host->mmc),
649 host->broken_cd = of_property_read_bool(np, "broken-cd");
668 spin_lock_init(&host->lock);
671 dev_name(&pdev->dev), host);
679 dev_info(mmc_dev(host->mmc), "initialized\n");
695 struct mxs_mmc_host *host = mmc_priv(mmc);
696 struct mxs_ssp *ssp = &host->ssp;
714 struct mxs_mmc_host *host = mmc_priv(mmc);
715 struct mxs_ssp *ssp = &host->ssp;
724 struct mxs_mmc_host *host = mmc_priv(mmc);
725 struct mxs_ssp *ssp = &host->ssp;