Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit dfcba5ff authored by Wolfram Sang's avatar Wolfram Sang Committed by Ulf Hansson
Browse files

mmc: host: tmio: disable clocks when unbinding



Create a helper function to disable clocks and use it in remove(), too.
Now, clk_summary in debugfs reports the clocks as disabled and
unprepared after unbinding.

Signed-off-by: default avatarWolfram Sang <wsa+renesas@sang-engineering.com>
Reviewed-by: default avatarGeert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: default avatarUlf Hansson <ulf.hansson@linaro.org>
parent 44bf2312
Loading
Loading
Loading
Loading
+9 −2
Original line number Diff line number Diff line
@@ -900,6 +900,12 @@ static int tmio_mmc_clk_enable(struct tmio_mmc_host *host)
	return host->clk_enable(host);
}

static void tmio_mmc_clk_disable(struct tmio_mmc_host *host)
{
	if (host->clk_disable)
		host->clk_disable(host);
}

static void tmio_mmc_power_on(struct tmio_mmc_host *host, unsigned short vdd)
{
	struct mmc_host *mmc = host->mmc;
@@ -1284,6 +1290,8 @@ void tmio_mmc_host_remove(struct tmio_mmc_host *host)

	pm_runtime_put_sync(&pdev->dev);
	pm_runtime_disable(&pdev->dev);

	tmio_mmc_clk_disable(host);
}
EXPORT_SYMBOL(tmio_mmc_host_remove);

@@ -1298,8 +1306,7 @@ int tmio_mmc_host_runtime_suspend(struct device *dev)
	if (host->clk_cache)
		tmio_mmc_clk_stop(host);

	if (host->clk_disable)
		host->clk_disable(host);
	tmio_mmc_clk_disable(host);

	return 0;
}