aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/mmc
diff options
context:
space:
mode:
authorCarlo Caione <carlo@endlessm.com>2015-11-25 09:39:51 -0500
committerUlf Hansson <ulf.hansson@linaro.org>2015-12-22 05:32:13 -0500
commit100a606d54a087cfec54efbedba72f36e5a9cdf0 (patch)
tree81fab69739528e973b3197c6114fb1da7d2cae91 /drivers/mmc
parent17da678368fac22375f0854c811034e311be23b5 (diff)
mmc: core: Introduce MMC_CAP2_NO_SDIO cap
This patch introduce a new MMC_CAP2_NO_SDIO cap used to tell the mmc core to not send SDIO specific commands. Signed-off-by: Carlo Caione <carlo@endlessm.com> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Diffstat (limited to 'drivers/mmc')
-rw-r--r--drivers/mmc/core/core.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/drivers/mmc/core/core.c b/drivers/mmc/core/core.c
index 07b2f086213f..910aa254f23a 100644
--- a/drivers/mmc/core/core.c
+++ b/drivers/mmc/core/core.c
@@ -2476,15 +2476,20 @@ static int mmc_rescan_try_freq(struct mmc_host *host, unsigned freq)
2476 * sdio_reset sends CMD52 to reset card. Since we do not know 2476 * sdio_reset sends CMD52 to reset card. Since we do not know
2477 * if the card is being re-initialized, just send it. CMD52 2477 * if the card is being re-initialized, just send it. CMD52
2478 * should be ignored by SD/eMMC cards. 2478 * should be ignored by SD/eMMC cards.
2479 * Skip it if we already know that we do not support SDIO commands
2479 */ 2480 */
2480 sdio_reset(host); 2481 if (!(host->caps2 & MMC_CAP2_NO_SDIO))
2482 sdio_reset(host);
2483
2481 mmc_go_idle(host); 2484 mmc_go_idle(host);
2482 2485
2483 mmc_send_if_cond(host, host->ocr_avail); 2486 mmc_send_if_cond(host, host->ocr_avail);
2484 2487
2485 /* Order's important: probe SDIO, then SD, then MMC */ 2488 /* Order's important: probe SDIO, then SD, then MMC */
2486 if (!mmc_attach_sdio(host)) 2489 if (!(host->caps2 & MMC_CAP2_NO_SDIO))
2487 return 0; 2490 if (!mmc_attach_sdio(host))
2491 return 0;
2492
2488 if (!mmc_attach_sd(host)) 2493 if (!mmc_attach_sd(host))
2489 return 0; 2494 return 0;
2490 if (!mmc_attach_mmc(host)) 2495 if (!mmc_attach_mmc(host))