From: Wolfram Sang Date: Mon, 2 May 2016 20:25:41 +0000 (+0200) Subject: mmc: sh_mobile_sdhi: only change the clock on RCar Gen2+ X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=8fc009986471729533fb1246c7ea9395635dac26;p=GitHub%2Fmoto-9609%2Fandroid_kernel_motorola_exynos9610.git mmc: sh_mobile_sdhi: only change the clock on RCar Gen2+ We had a regression on r8a7740 where the SDHI clock was a generic peripheral clock, so changing its rate was not desired. This should be fixed in the clock driver. However, it also shows that the new clock calculation should only be used on tested systems. Add a check for that. Signed-off-by: Wolfram Sang Tested-by: Geert Uytterhoeven Signed-off-by: Ulf Hansson --- diff --git a/drivers/mmc/host/sh_mobile_sdhi.c b/drivers/mmc/host/sh_mobile_sdhi.c index 19e4c29e4233..ac9ba36da39b 100644 --- a/drivers/mmc/host/sh_mobile_sdhi.c +++ b/drivers/mmc/host/sh_mobile_sdhi.c @@ -168,6 +168,10 @@ static unsigned int sh_mobile_sdhi_clk_update(struct tmio_mmc_host *host, unsigned int freq, diff, best_freq = 0, diff_min = ~0; int i; + /* tested only on RCar Gen2+ currently; may work for others */ + if (!(host->pdata->flags & TMIO_MMC_MIN_RCAR2)) + return clk_get_rate(priv->clk); + /* * We want the bus clock to be as close as possible to, but no * greater than, new_clock. As we can divide by 1 << i for