• Home
  • Raw
  • Download

Lines Matching full:mmc

32 #include <linux/mmc/mmc.h>
33 #include <linux/mmc/sdio.h>
34 #include <linux/mmc/host.h>
35 #include <linux/mmc/card.h>
67 /* MMC command number */
70 /* MMC argument */
73 /* MMC response (or R2 bits 0 - 31) */
76 /* MMC R2 response bits 32 - 63 */
79 /* MMC R2 response bits 64 - 95 */
82 /* MMC R2 response bits 96 - 127 */
88 /* MMC state flags */
116 struct mmc_host *mmc; member
118 unsigned char id; /* 16xx chips have 2 MMC blocks */
178 dev_err(mmc_dev(host->mmc), in goldfish_mmc_start_command()
224 dma_unmap_sg(mmc_dev(host->mmc), data->sg, host->sg_len, in goldfish_mmc_xfer_done()
232 * NOTE: MMC layer will sometimes poll-wait CMD13 next, issuing in goldfish_mmc_xfer_done()
239 mmc_request_done(host->mmc, data->mrq); in goldfish_mmc_xfer_done()
281 mmc_request_done(host->mmc, cmd->mrq); in goldfish_mmc_cmd_done()
316 mmc_request_done(host->mmc, mrq); in goldfish_mmc_irq()
342 mmc_detect_change(host->mmc, 0); in goldfish_mmc_irq()
347 dev_info(mmc_dev(host->mmc),"spurious irq 0x%04x\n", status); in goldfish_mmc_irq()
386 host->sg_len = dma_map_sg(mmc_dev(host->mmc), data->sg, in goldfish_mmc_prepare_data()
401 static void goldfish_mmc_request(struct mmc_host *mmc, struct mmc_request *req) in goldfish_mmc_request() argument
403 struct goldfish_mmc_host *host = mmc_priv(mmc); in goldfish_mmc_request()
420 static void goldfish_mmc_set_ios(struct mmc_host *mmc, struct mmc_ios *ios) in goldfish_mmc_set_ios() argument
422 struct goldfish_mmc_host *host = mmc_priv(mmc); in goldfish_mmc_set_ios()
428 static int goldfish_mmc_get_ro(struct mmc_host *mmc) in goldfish_mmc_get_ro() argument
431 struct goldfish_mmc_host *host = mmc_priv(mmc); in goldfish_mmc_get_ro()
445 struct mmc_host *mmc; in goldfish_mmc_probe() local
457 mmc = mmc_alloc_host(sizeof(struct goldfish_mmc_host), &pdev->dev); in goldfish_mmc_probe()
458 if (mmc == NULL) { in goldfish_mmc_probe()
463 host = mmc_priv(mmc); in goldfish_mmc_probe()
464 host->mmc = mmc; in goldfish_mmc_probe()
466 pr_err("mmc: Mapping %lX to %lX\n", (long)res->start, (long)res->end); in goldfish_mmc_probe()
484 mmc->ops = &goldfish_mmc_ops; in goldfish_mmc_probe()
485 mmc->f_min = 400000; in goldfish_mmc_probe()
486 mmc->f_max = 24000000; in goldfish_mmc_probe()
487 mmc->ocr_avail = MMC_VDD_32_33 | MMC_VDD_33_34; in goldfish_mmc_probe()
488 mmc->caps = MMC_CAP_4_BIT_DATA; in goldfish_mmc_probe()
494 mmc->max_segs = 32; in goldfish_mmc_probe()
495 mmc->max_blk_size = 2048; /* MMC_BLOCK_LENGTH is 11 bits (+1) */ in goldfish_mmc_probe()
496 mmc->max_blk_count = 2048; /* MMC_BLOCK_COUNT is 11 bits (+1) */ in goldfish_mmc_probe()
497 mmc->max_req_size = BUFFER_SIZE; in goldfish_mmc_probe()
498 mmc->max_seg_size = mmc->max_req_size; in goldfish_mmc_probe()
502 dev_err(&pdev->dev, "Failed IRQ Adding goldfish MMC\n"); in goldfish_mmc_probe()
511 dev_warn(mmc_dev(host->mmc), in goldfish_mmc_probe()
519 mmc_add_host(mmc); in goldfish_mmc_probe()
528 mmc_free_host(host->mmc); in goldfish_mmc_probe()
539 mmc_remove_host(host->mmc); in goldfish_mmc_remove()
543 mmc_free_host(host->mmc); in goldfish_mmc_remove()