aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/mmc
diff options
context:
space:
mode:
authorOhad Ben-Cohen <ohad@wizery.com>2010-10-02 07:54:10 -0400
committerChris Ball <cjb@laptop.org>2010-10-23 09:11:18 -0400
commit81968561bd69536c82be7ee654b04c68cd3e1746 (patch)
treee6a4553cb6ce672d73bf0d9ae1dec50cf64e6ddf /drivers/mmc
parent80fd933c44557c5261b80f8f8145b4fe071aeaf3 (diff)
mmc: sdio: enable runtime PM for SDIO cards
Enable runtime PM for new SDIO cards. As soon as the card will be added to the device tree, runtime PM core will release its power, since it doesn't have any users yet. Signed-off-by: Ohad Ben-Cohen <ohad@wizery.com> Tested-by: Luciano Coelho <luciano.coelho@nokia.com> Signed-off-by: Chris Ball <cjb@laptop.org>
Diffstat (limited to 'drivers/mmc')
-rw-r--r--drivers/mmc/core/sdio.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/drivers/mmc/core/sdio.c b/drivers/mmc/core/sdio.c
index f17e0e0bd9d1..0dbd6fe66660 100644
--- a/drivers/mmc/core/sdio.c
+++ b/drivers/mmc/core/sdio.c
@@ -10,6 +10,7 @@
10 */ 10 */
11 11
12#include <linux/err.h> 12#include <linux/err.h>
13#include <linux/pm_runtime.h>
13 14
14#include <linux/mmc/host.h> 15#include <linux/mmc/host.h>
15#include <linux/mmc/card.h> 16#include <linux/mmc/card.h>
@@ -708,6 +709,18 @@ int mmc_attach_sdio(struct mmc_host *host, u32 ocr)
708 card = host->card; 709 card = host->card;
709 710
710 /* 711 /*
712 * Let runtime PM core know our card is active
713 */
714 err = pm_runtime_set_active(&card->dev);
715 if (err)
716 goto remove;
717
718 /*
719 * Enable runtime PM for this card
720 */
721 pm_runtime_enable(&card->dev);
722
723 /*
711 * The number of functions on the card is encoded inside 724 * The number of functions on the card is encoded inside
712 * the ocr. 725 * the ocr.
713 */ 726 */