[PATCH RESEND] mmc: sunxi: Check the value returned by clk_round_rate

Ulf Hansson ulf.hansson at linaro.org
Wed Aug 24 02:32:26 PDT 2016


On 23 August 2016 at 10:51, Jean-Francois Moine <moinejf at free.fr> wrote:
> clk_round_rate() may return an error. Check it.
>
> Signed-off-by: Jean-Francois Moine <moinejf at free.fr>
> Acked-by: Maxime Ripard <maxime.ripard at free-electrons.com>

Thanks, applied for next!

For some reason this patch didn't go into the mmc patchtracker,
probably because you have several lists on cc. Future wise I guess
it's better if you have linux-mmc on the *to* list.

Kind regards
Uffe

> ---
> Rebase on linux-next
> ---
>  drivers/mmc/host/sunxi-mmc.c | 12 +++++++++---
>  1 file changed, 9 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/mmc/host/sunxi-mmc.c b/drivers/mmc/host/sunxi-mmc.c
> index 2ec91ce..142ab3f 100644
> --- a/drivers/mmc/host/sunxi-mmc.c
> +++ b/drivers/mmc/host/sunxi-mmc.c
> @@ -692,7 +692,8 @@ static int sunxi_mmc_clk_set_phase(struct sunxi_mmc_host *host,
>  static int sunxi_mmc_clk_set_rate(struct sunxi_mmc_host *host,
>                                   struct mmc_ios *ios)
>  {
> -       u32 rate, rval, clock = ios->clock;
> +       long rate;
> +       u32 rval, clock = ios->clock;
>         int ret;
>
>         /* 8 bit DDR requires a higher module clock */
> @@ -701,13 +702,18 @@ static int sunxi_mmc_clk_set_rate(struct sunxi_mmc_host *host,
>                 clock <<= 1;
>
>         rate = clk_round_rate(host->clk_mmc, clock);
> -       dev_dbg(mmc_dev(host->mmc), "setting clk to %d, rounded %d\n",
> +       if (rate < 0) {
> +               dev_err(mmc_dev(host->mmc), "error rounding clk to %d: %ld\n",
> +                       clock, rate);
> +               return rate;
> +       }
> +       dev_dbg(mmc_dev(host->mmc), "setting clk to %d, rounded %ld\n",
>                 clock, rate);
>
>         /* setting clock rate */
>         ret = clk_set_rate(host->clk_mmc, rate);
>         if (ret) {
> -               dev_err(mmc_dev(host->mmc), "error setting clk to %d: %d\n",
> +               dev_err(mmc_dev(host->mmc), "error setting clk to %ld: %d\n",
>                         rate, ret);
>                 return ret;
>         }
> --
> 2.9.3
>



More information about the linux-arm-kernel mailing list