diff options
author | Dong Aisheng <b29396@freescale.com> | 2013-11-07 02:12:48 -0500 |
---|---|---|
committer | Nitin Garg <nitin.garg@freescale.com> | 2014-04-16 09:47:07 -0400 |
commit | e20edc5eaf1cac68ae27a97d375a2c9de23f9b85 (patch) | |
tree | 0fb76125ca9ffb49d7f77fac277e3e44faa0d24c /drivers/mmc | |
parent | c42968e929e911fe51ef29ad8aa8ac617135fa68 (diff) |
mmc: sdhci-esdhc-imx: fix runtime pm unblance issue
Since we're using common esdhc_send_command for tuning commands and
the core code will call pm_runtime_put after command is finished.
So we add a pm_runtime_get_sync here to get the blance.
Signed-off-by: Dong Aisheng <b29396@freescale.com>
Acked-by: Shawn Guo <shawn.guo@linaro.org>
Acked-by: Ulf Hansson <ulf.hansson@linaro.org>
Diffstat (limited to 'drivers/mmc')
-rw-r--r-- | drivers/mmc/host/sdhci-esdhc-imx.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/mmc/host/sdhci-esdhc-imx.c b/drivers/mmc/host/sdhci-esdhc-imx.c index 22df371a7aa1..5690b1bdab13 100644 --- a/drivers/mmc/host/sdhci-esdhc-imx.c +++ b/drivers/mmc/host/sdhci-esdhc-imx.c | |||
@@ -723,6 +723,7 @@ static void esdhc_prepare_tuning(struct sdhci_host *host, u32 val) | |||
723 | /* reset controller before tuning or it may fail on some cards */ | 723 | /* reset controller before tuning or it may fail on some cards */ |
724 | esdhc_reset(host, ESDHC_SYS_CTRL_RSTA); | 724 | esdhc_reset(host, ESDHC_SYS_CTRL_RSTA); |
725 | 725 | ||
726 | pm_runtime_get_sync(host->mmc->parent); | ||
726 | reg = readl(host->ioaddr + ESDHC_MIX_CTRL); | 727 | reg = readl(host->ioaddr + ESDHC_MIX_CTRL); |
727 | reg |= ESDHC_MIX_CTRL_EXE_TUNE | ESDHC_MIX_CTRL_SMPCLK_SEL | | 728 | reg |= ESDHC_MIX_CTRL_EXE_TUNE | ESDHC_MIX_CTRL_SMPCLK_SEL | |
728 | ESDHC_MIX_CTRL_FBCLK_SEL; | 729 | ESDHC_MIX_CTRL_FBCLK_SEL; |