linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2] mmc: meson-gx: fix error path when driver initialization fails before enabling clocks
@ 2017-03-14 20:05 Michał Zegan
  2017-03-16 14:46 ` Ulf Hansson
  0 siblings, 1 reply; 2+ messages in thread
From: Michał Zegan @ 2017-03-14 20:05 UTC (permalink / raw)
  To: Kevin Hilman
  Cc: Ulf Hansson, Carlo Caione, linux-mmc, linux-amlogic,
	linux-kernel, Michał Zegan

This patch fixes the case where meson_mmc_probe function fails before
core_clk is enabled.
Originally, that would result in a try to disable the core clock, and if
it was not already enabled, it would result in a kernel warning.
This issue is similar to the one with div_clk.
Fix it by introducing another error path used only between successfully
enabling the core clock, and successfully enabling the div clock.
That would ensure that core clock is disabled only if it was enabled before.

Signed-off-by: Michał Zegan <webczat@webczatnet.pl>
---
changes since v1:
cherry picked on top of mmc next branch
 drivers/mmc/host/meson-gx-mmc.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/drivers/mmc/host/meson-gx-mmc.c b/drivers/mmc/host/meson-gx-mmc.c
index c574e1519623..bd075fef08d4 100644
--- a/drivers/mmc/host/meson-gx-mmc.c
+++ b/drivers/mmc/host/meson-gx-mmc.c
@@ -743,7 +743,7 @@ static int meson_mmc_probe(struct platform_device *pdev)
 
 	ret = meson_mmc_clk_init(host);
 	if (ret)
-		goto free_host;
+		goto err_core_clk;
 
 	/* Stop execution */
 	writel(0, host->regs + SD_EMMC_START);
@@ -783,8 +783,9 @@ static int meson_mmc_probe(struct platform_device *pdev)
 
 err_div_clk:
 	clk_disable_unprepare(host->cfg_div_clk);
-free_host:
+err_core_clk:
 	clk_disable_unprepare(host->core_clk);
+free_host:
 	mmc_free_host(mmc);
 	return ret;
 }
-- 
2.12.0

^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH v2] mmc: meson-gx: fix error path when driver initialization fails before enabling clocks
  2017-03-14 20:05 [PATCH v2] mmc: meson-gx: fix error path when driver initialization fails before enabling clocks Michał Zegan
@ 2017-03-16 14:46 ` Ulf Hansson
  0 siblings, 0 replies; 2+ messages in thread
From: Ulf Hansson @ 2017-03-16 14:46 UTC (permalink / raw)
  To: Michał Zegan
  Cc: Kevin Hilman, Carlo Caione, linux-mmc, linux-amlogic, linux-kernel

On 14 March 2017 at 21:05, Michał Zegan <webczat@webczatnet.pl> wrote:
> This patch fixes the case where meson_mmc_probe function fails before
> core_clk is enabled.
> Originally, that would result in a try to disable the core clock, and if
> it was not already enabled, it would result in a kernel warning.
> This issue is similar to the one with div_clk.
> Fix it by introducing another error path used only between successfully
> enabling the core clock, and successfully enabling the div clock.
> That would ensure that core clock is disabled only if it was enabled before.
>
> Signed-off-by: Michał Zegan <webczat@webczatnet.pl>

Thanks, applied for next!

Kind regards
Uffe

> ---
> changes since v1:
> cherry picked on top of mmc next branch
>  drivers/mmc/host/meson-gx-mmc.c | 5 +++--
>  1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/mmc/host/meson-gx-mmc.c b/drivers/mmc/host/meson-gx-mmc.c
> index c574e1519623..bd075fef08d4 100644
> --- a/drivers/mmc/host/meson-gx-mmc.c
> +++ b/drivers/mmc/host/meson-gx-mmc.c
> @@ -743,7 +743,7 @@ static int meson_mmc_probe(struct platform_device *pdev)
>
>         ret = meson_mmc_clk_init(host);
>         if (ret)
> -               goto free_host;
> +               goto err_core_clk;
>
>         /* Stop execution */
>         writel(0, host->regs + SD_EMMC_START);
> @@ -783,8 +783,9 @@ static int meson_mmc_probe(struct platform_device *pdev)
>
>  err_div_clk:
>         clk_disable_unprepare(host->cfg_div_clk);
> -free_host:
> +err_core_clk:
>         clk_disable_unprepare(host->core_clk);
> +free_host:
>         mmc_free_host(mmc);
>         return ret;
>  }
> --
> 2.12.0
>

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2017-03-16 14:46 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-03-14 20:05 [PATCH v2] mmc: meson-gx: fix error path when driver initialization fails before enabling clocks Michał Zegan
2017-03-16 14:46 ` Ulf Hansson

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).