Commit 58abdd80 authored by Yangtao Li's avatar Yangtao Li Committed by Ulf Hansson
Browse files

mmc: f-sdh30: fix order of function calls in sdhci_f_sdh30_remove



The order of function calls in sdhci_f_sdh30_remove is wrong,
let's call sdhci_pltfm_unregister first.

Cc: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Fixes: 5def5c1c ("mmc: sdhci-f-sdh30: Replace with sdhci_pltfm")
Signed-off-by: default avatarYangtao Li <frank.li@vivo.com>
Reported-by: default avatarUwe Kleine-König <u.kleine-koenig@pengutronix.de>
Acked-by: default avatarUwe Kleine-König <u.kleine-koenig@pengutronix.de>
Acked-by: default avatarAdrian Hunter <adrian.hunter@intel.com>
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/r/20230727070051.17778-62-frank.li@vivo.com


Signed-off-by: default avatarUlf Hansson <ulf.hansson@linaro.org>
parent cf3f15b8
Loading
Loading
Loading
Loading
+7 −4
Original line number Diff line number Diff line
@@ -210,13 +210,16 @@ static int sdhci_f_sdh30_remove(struct platform_device *pdev)
{
	struct sdhci_host *host = platform_get_drvdata(pdev);
	struct f_sdhost_priv *priv = sdhci_f_sdhost_priv(host);

	reset_control_assert(priv->rst);
	clk_disable_unprepare(priv->clk);
	clk_disable_unprepare(priv->clk_iface);
	struct clk *clk_iface = priv->clk_iface;
	struct reset_control *rst = priv->rst;
	struct clk *clk = priv->clk;

	sdhci_pltfm_unregister(pdev);

	reset_control_assert(rst);
	clk_disable_unprepare(clk);
	clk_disable_unprepare(clk_iface);

	return 0;
}