[PATCH 13/18] mmc: meson-gx: remove unneeded meson_mmc_clk_set in meson_mmc_clk_init
Heiner Kallweit
hkallweit1 at gmail.com
Wed Feb 15 23:05:00 PST 2017
Am 16.02.2017 um 00:56 schrieb Kevin Hilman:
> Heiner Kallweit <hkallweit1 at gmail.com> writes:
>
>> Am 15.02.2017 um 20:27 schrieb Kevin Hilman:
>>> Heiner Kallweit <hkallweit1 at gmail.com> writes:
>>>
>>>> I don't think this clk_disable_unprepare is right here. We do this
>>>> in meson_mmc_remove what should be sufficient.
>>>
>>> I don't think so, because if _clk_init() fails, then _probe will fail,
>>> and the driver's ->remove() will not be called.
>>>
>> In general, then the condition should be "if (ret)", not "if (!ret)".
>> And if _clk_init() fails, then probe jumps to label free_host,
>> where we have exactly this clk_disable_unprepare(host->cfg_div_clk)
>
> Then you need to update the changelog, which refers to remove, not the
> cleanup in probe.
>
Sure ..
> Kevin
>
>>> Kevin
>>>
>>>> Signed-off-by: Heiner Kallweit <hkallweit1 at gmail.com>
>>>> ---
>>>> drivers/mmc/host/meson-gx-mmc.c | 6 +-----
>>>> 1 file changed, 1 insertion(+), 5 deletions(-)
>>>>
>>>> diff --git a/drivers/mmc/host/meson-gx-mmc.c b/drivers/mmc/host/meson-gx-mmc.c
>>>> index 74ceda75..39904fb5 100644
>>>> --- a/drivers/mmc/host/meson-gx-mmc.c
>>>> +++ b/drivers/mmc/host/meson-gx-mmc.c
>>>> @@ -315,11 +315,7 @@ static int meson_mmc_clk_init(struct meson_host *host)
>>>> /* Get the nearest minimum clock to 400KHz */
>>>> host->mmc->f_min = clk_round_rate(host->cfg_div_clk, 400000);
>>>>
>>>> - ret = meson_mmc_clk_set(host, host->mmc->f_min);
>>>> - if (!ret)
>>>> - clk_disable_unprepare(host->cfg_div_clk);
>>>> -
>>>> - return ret;
>>>> + return meson_mmc_clk_set(host, host->mmc->f_min);
>>>> }
>>>>
>>>> static void meson_mmc_set_ios(struct mmc_host *mmc, struct mmc_ios *ios)
>>>
>
More information about the linux-amlogic
mailing list