From 2fe8f3403981bb7a1c8b03358c41fc2437a2f9f5 Mon Sep 17 00:00:00 2001 From: Jarkko Lavinen Date: Thu, 6 Nov 2008 16:02:28 +0200 Subject: [PATCH] OMAP: HSMMC: Fix SDVS values in omap_mmc_switch_opcond Set only 1.8V as SDVS value in HCTL register for HSMMC2 and HSMMC3. Signed-off-by: Jarkko Lavinen --- drivers/mmc/host/omap_hsmmc.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c index f4b7c306153..e3291159b97 100644 --- a/drivers/mmc/host/omap_hsmmc.c +++ b/drivers/mmc/host/omap_hsmmc.c @@ -529,10 +529,13 @@ static int omap_mmc_switch_opcond(struct mmc_omap_host *host, int vdd) * Only MMC1 supports 3.0V. MMC2 will not function if SDVS30 is * set in HCTL. */ - if (host->id == OMAP_MMC1_DEVID && (((1 << vdd) == MMC_VDD_32_33) || - ((1 << vdd) == MMC_VDD_33_34))) - reg_val |= SDVS30; - if ((1 << vdd) == MMC_VDD_165_195) + if (host->id == OMAP_MMC1_DEVID) { + if (((1 << vdd) == MMC_VDD_32_33) || + ((1 << vdd) == MMC_VDD_33_34)) + reg_val |= SDVS30; + else if ((1 << vdd) == MMC_VDD_165_195) + reg_val |= SDVS18; + } else reg_val |= SDVS18; OMAP_HSMMC_WRITE(host->base, HCTL, reg_val); -- 2.41.1