From: Jarkko Lavinen Date: Thu, 6 Nov 2008 14:02:28 +0000 (+0200) Subject: OMAP: HSMMC: Fix SDVS values in omap_mmc_switch_opcond X-Git-Tag: v2.6.28-omap1~76^2~3 X-Git-Url: http://pilppa.com/gitweb/?a=commitdiff_plain;h=2fe8f3403981bb7a1c8b03358c41fc2437a2f9f5;p=linux-2.6-omap-h63xx.git 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 --- 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);