From 03a81904e339d677eff3b0fd176c4bf031e1eff6 Mon Sep 17 00:00:00 2001 From: Ryan QIAN Date: Mon, 13 Feb 2012 09:38:16 +0800 Subject: [PATCH] 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 --- drivers/mmc/core/sd.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) 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. */ -- 2.39.5