diff options
Diffstat (limited to 'drivers/mmc/host')
-rw-r--r-- | drivers/mmc/host/mmci.c | 9 | ||||
-rw-r--r-- | drivers/mmc/host/sdricoh_cs.c | 20 |
2 files changed, 10 insertions, 19 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 | } |
diff --git a/drivers/mmc/host/sdricoh_cs.c b/drivers/mmc/host/sdricoh_cs.c index 7009f17ad6cd..50adbd155f35 100644 --- a/drivers/mmc/host/sdricoh_cs.c +++ b/drivers/mmc/host/sdricoh_cs.c | |||
@@ -543,25 +543,7 @@ static struct pcmcia_driver sdricoh_driver = { | |||
543 | .suspend = sdricoh_pcmcia_suspend, | 543 | .suspend = sdricoh_pcmcia_suspend, |
544 | .resume = sdricoh_pcmcia_resume, | 544 | .resume = sdricoh_pcmcia_resume, |
545 | }; | 545 | }; |
546 | 546 | module_pcmcia_driver(sdricoh_driver); | |
547 | /*****************************************************************************\ | ||
548 | * * | ||
549 | * Driver init/exit * | ||
550 | * * | ||
551 | \*****************************************************************************/ | ||
552 | |||
553 | static int __init sdricoh_drv_init(void) | ||
554 | { | ||
555 | return pcmcia_register_driver(&sdricoh_driver); | ||
556 | } | ||
557 | |||
558 | static void __exit sdricoh_drv_exit(void) | ||
559 | { | ||
560 | pcmcia_unregister_driver(&sdricoh_driver); | ||
561 | } | ||
562 | |||
563 | module_init(sdricoh_drv_init); | ||
564 | module_exit(sdricoh_drv_exit); | ||
565 | 547 | ||
566 | module_param(switchlocked, uint, 0444); | 548 | module_param(switchlocked, uint, 0444); |
567 | 549 | ||