[PATCH v2 2/2] mmc: sdhci-bcm2835: Actually enable the clock

Ulf Hansson ulf.hansson at linaro.org
Mon Jun 1 01:05:50 PDT 2015


On 29 May 2015 at 23:06, Eric Anholt <eric at anholt.net> wrote:
> We're currently using a fixed frequency clock specified in the DT, so
> enabling is a no-op.  However, the RPi firmware-based clocks driver
> can actually disable unused clocks, so when switching to use it we
> ended up losing our MMC clock once all devices were probed.
>
> Signed-off-by: Eric Anholt <eric at anholt.net>

Thanks, applied!

Kind regards
Uffe


> ---
>
> v2: Re-disable our clock on sdhci_add_host() failure.
>
>  drivers/mmc/host/sdhci-bcm2835.c | 9 ++++++++-
>  1 file changed, 8 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/mmc/host/sdhci-bcm2835.c b/drivers/mmc/host/sdhci-bcm2835.c
> index 32f4046..1c65d46 100644
> --- a/drivers/mmc/host/sdhci-bcm2835.c
> +++ b/drivers/mmc/host/sdhci-bcm2835.c
> @@ -172,12 +172,19 @@ static int bcm2835_sdhci_probe(struct platform_device *pdev)
>                 ret = PTR_ERR(pltfm_host->clk);
>                 goto err;
>         }
> +       ret = clk_prepare_enable(pltfm_host->clk);
> +       if (ret) {
> +               dev_err(&pdev->dev, "failed to enable host clk\n");
> +               goto err;
> +       }
>
>         ret = sdhci_add_host(host);
>         if (ret)
> -               goto err;
> +               goto err_clk;
>
>         return 0;
> +err_clk:
> +       clk_disable_unprepare(pltfm_host->clk);
>  err:
>         sdhci_pltfm_free(pdev);
>         return ret;
> --
> 2.1.4
>



More information about the linux-rpi-kernel mailing list