]> Pileus Git - ~andy/linux/commitdiff
ARM: OMAP: hsmmc: Support for AM3517 MMC1 voltages
authorAbhilash K V <abhilash.kv@ti.com>
Fri, 9 Dec 2011 20:27:36 +0000 (12:27 -0800)
committerTony Lindgren <tony@atomide.com>
Fri, 9 Dec 2011 20:32:53 +0000 (12:32 -0800)
This patch fixes the following error message which appears
while intializing MMC1 on the AM3517 EVM base-board:
    mmc0: host doesn't support card's voltages
    mmc0: error -22 whilst initialising SD card
The ocr_mask, which enumerates the volatges supported by the
MMC card was not being indicated before, assuming that a separate
Vcc regulator maybe another controllable regulator driver would be
doing this. This patch statically specifies a subset of the voltages
supported by the MMC driver, which are provided by the current fixed
voltage regulator on AM3517 EVM.

Signed-off-by: Vaibhav Hiremath <hvaibhav@ti.com>
Signed-off-by: Abhilash K V <abhilash.kv@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
arch/arm/mach-omap2/hsmmc.c

index 997b33d76418d6feebad6445a916da90019d83c8..bd844af13af56106d7fe5511dcaa6d2ebf6f7afa 100644 (file)
@@ -353,7 +353,15 @@ static int __init omap_hsmmc_pdata_init(struct omap2_hsmmc_info *c,
         *
         * temporary HACK: ocr_mask instead of fixed supply
         */
-       mmc->slots[0].ocr_mask = c->ocr_mask;
+       if (cpu_is_omap3505() || cpu_is_omap3517())
+               mmc->slots[0].ocr_mask = MMC_VDD_165_195 |
+                                        MMC_VDD_26_27 |
+                                        MMC_VDD_27_28 |
+                                        MMC_VDD_29_30 |
+                                        MMC_VDD_30_31 |
+                                        MMC_VDD_31_32;
+       else
+               mmc->slots[0].ocr_mask = c->ocr_mask;
 
        if (!cpu_is_omap3517() && !cpu_is_omap3505())
                mmc->slots[0].features |= HSMMC_HAS_PBIAS;