summaryrefslogtreecommitdiff
path: root/drivers/mmc
diff options
context:
space:
mode:
authorHu Ziji <huziji@marvell.com>2017-04-28 10:34:59 +0800
committerUlf Hansson <ulf.hansson@linaro.org>2017-04-28 12:33:05 +0200
commit4cc59dffa9cb579613776cad5b777236210496d8 (patch)
tree98b13f92f520f26691ec69b14a3eaf0e04c46008 /drivers/mmc
parentff4143ccff314b22f03666c1d8eccd4de967df2c (diff)
mmc: sdhci-xenon: Fix the work flow in xenon_remove().
sdhci_remove_host() might execute SOFT_RESET_ALL. Inside xenon_remove(), Xenon SDHC should be enabled during sdhci_remove_host(). Move xenon_sdhc_unprepare after sdhci_remove_host() such that Xenon SDHC is disabled after sdhci_remove_host() completes. Signed-off-by: Hu Ziji <huziji@marvell.com> Reported-by: Jisheng Zhang <jszhang@marvell.com> Tested-by: Jisheng Zhang <jszhang@marvell.com> Acked-by: Adrian Hunter <adrian.hunter@intel.com> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Diffstat (limited to 'drivers/mmc')
-rw-r--r--drivers/mmc/host/sdhci-xenon.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/mmc/host/sdhci-xenon.c b/drivers/mmc/host/sdhci-xenon.c
index 8e56b9ccfb39..67246655315b 100644
--- a/drivers/mmc/host/sdhci-xenon.c
+++ b/drivers/mmc/host/sdhci-xenon.c
@@ -512,10 +512,10 @@ static int xenon_remove(struct platform_device *pdev)
xenon_clean_phy(host);
- xenon_sdhc_unprepare(host);
-
sdhci_remove_host(host, 0);
+ xenon_sdhc_unprepare(host);
+
clk_disable_unprepare(pltfm_host->clk);
sdhci_pltfm_free(pdev);