aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/mmc/host/mmci.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2013-05-02 11:56:55 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2013-05-02 11:56:55 -0400
commit4d26aa305414dbb33b3c32fb205b68004cda8ffc (patch)
tree78da855745406afc870ea3454e584907f7cccb73 /drivers/mmc/host/mmci.c
parent600fe9751aeb6f6b72de84076a05c5b8c04152c0 (diff)
parente74fc973b6e531fef1fce8b101ffff05ecfb774c (diff)
Merge tag 'fixes-nc-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
Pull ARM SoC non-critical fixes from Olof Johansson: "Here is a collection of fixes (and some intermixed cleanups) that were considered less important and thus not included in the later parts of the 3.9-rc cycle. It's a bit all over the map, contents wise. A series of ux500 fixes and cleanups, a bunch of various fixes for OMAP and tegra, and some for Freescale i.MX and even Qualcomm MSM. Note that there's also a patch on this branch to globally turn off -Wmaybe-uninitialized when building with -Os. It's been posted several times by Arnd and no dissent was raised, but nobody seemed interested to pick it up. So here it is, as the topmost patch." * tag 'fixes-nc-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (70 commits) Turn off -Wmaybe-uninitialized when building with -Os ARM: orion5x: include linux/cpu.h ARM: tegra: call cpu_do_idle from C code ARM: u300: fix ages old copy/paste bug ARM: OMAP2+: add dependencies on ARCH_MULTI_V6/V7 ARM: tegra: solve adr range issue with THUMB2_KERNEL enabled ARM: tegra: fix relocation truncated error when THUMB2_KERNEL enabled ARM: tegra: fix build error when THUMB2_KERNEL enabled ARM: msm: Fix uncompess.h tx underrun check ARM: vexpress: Remove A9 PMU compatible values for non-A9 platforms ARM: cpuimx27 and mbimx27: prepend CONFIG_ to Kconfig macro ARM: OMAP2+: fix typo "CONFIG_BRIDGE_DVFS" ARM: OMAP1: remove "config MACH_OMAP_HTCWIZARD" ARM: mach-imx: mach-imx6q: Fix sparse warnings ARM: mach-imx: src: Include "common.h ARM: mach-imx: gpc: Include "common.h" ARM: mach-imx: avic: Staticize *avic_base ARM: mach-imx: tzic: Staticize *tzic_base ARM: mach-imx: clk: Include "clk.h" ARM: mach-imx: clk-busy: Staticize clk_busy_mux_ops ...
Diffstat (limited to 'drivers/mmc/host/mmci.c')
-rw-r--r--drivers/mmc/host/mmci.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/mmc/host/mmci.c b/drivers/mmc/host/mmci.c
index 372e921389c8..375c109607ff 100644
--- a/drivers/mmc/host/mmci.c
+++ b/drivers/mmc/host/mmci.c
@@ -1141,6 +1141,11 @@ static void mmci_set_ios(struct mmc_host *mmc, struct mmc_ios *ios)
1141 case MMC_POWER_OFF: 1141 case MMC_POWER_OFF:
1142 if (!IS_ERR(mmc->supply.vmmc)) 1142 if (!IS_ERR(mmc->supply.vmmc))
1143 mmc_regulator_set_ocr(mmc, mmc->supply.vmmc, 0); 1143 mmc_regulator_set_ocr(mmc, mmc->supply.vmmc, 0);
1144
1145 if (!IS_ERR(mmc->supply.vqmmc) &&
1146 regulator_is_enabled(mmc->supply.vqmmc))
1147 regulator_disable(mmc->supply.vqmmc);
1148
1144 break; 1149 break;
1145 case MMC_POWER_UP: 1150 case MMC_POWER_UP:
1146 if (!IS_ERR(mmc->supply.vmmc)) 1151 if (!IS_ERR(mmc->supply.vmmc))
@@ -1155,6 +1160,10 @@ static void mmci_set_ios(struct mmc_host *mmc, struct mmc_ios *ios)
1155 1160
1156 break; 1161 break;
1157 case MMC_POWER_ON: 1162 case MMC_POWER_ON:
1163 if (!IS_ERR(mmc->supply.vqmmc) &&
1164 !regulator_is_enabled(mmc->supply.vqmmc))
1165 regulator_enable(mmc->supply.vqmmc);
1166
1158 pwr |= MCI_PWR_ON; 1167 pwr |= MCI_PWR_ON;
1159 break; 1168 break;
1160 } 1169 }