diff options
author | Ryan QIAN <b32804@freescale.com> | 2012-02-13 09:38:16 +0800 |
---|---|---|
committer | Ryan QIAN <b32804@freescale.com> | 2012-02-13 10:18:37 +0800 |
commit | f0f308b93ec3e7984927b96d97ef3a384237791f (patch) | |
tree | 907ff4fc5e19b54e18632c6a8ef7e365ca7a6eae /drivers/mmc | |
parent | 0dc89c3d75b150f8e1286552d72f6c8d13245c7a (diff) |
ENGR00174295-02:[MX6]USDHC: ddr mode is masked on slots with no 1.8v support.
- check ocr_avail_sd & MMC_VDD_165_195 before set S18R bit to check whether
the host is support 1.8v support.
Signed-off-by: Ryan QIAN <b32804@freescale.com>
Diffstat (limited to 'drivers/mmc')
-rw-r--r-- | drivers/mmc/core/sd.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/mmc/core/sd.c b/drivers/mmc/core/sd.c index 9dafabbfa431..b7d8e369b215 100644 --- a/drivers/mmc/core/sd.c +++ b/drivers/mmc/core/sd.c @@ -733,8 +733,9 @@ int mmc_sd_get_cid(struct mmc_host *host, u32 ocr, u32 *cid, u32 *rocr) * If the host supports one of UHS-I modes, request the card * to switch to 1.8V signaling level. */ - if (host->caps & (MMC_CAP_UHS_SDR12 | MMC_CAP_UHS_SDR25 | + if ((host->caps & (MMC_CAP_UHS_SDR12 | MMC_CAP_UHS_SDR25 | MMC_CAP_UHS_SDR50 | MMC_CAP_UHS_SDR104 | MMC_CAP_UHS_DDR50)) + && (host->ocr_avail_sd & MMC_VDD_165_195)) ocr |= SD_OCR_S18R; /* If the host can supply more than 150mA, XPC should be set to 1. */ |