Subject: [PATCH 3/4] clk: 88pm800: Add clk provider driver for 88pm800 family of devices

From: [email-masked] (Vaibhav Hiremath)
Date: Wed, 22 Jul 2015 11:57:37 +0530

On Wednesday 22 July 2015 02:22 AM, Stephen Boyd wrote:
> On 07/21/2015 12:36 PM, Vaibhav Hiremath wrote:
>>
>> On Wednesday 22 July 2015 12:40 AM, Stephen Boyd wrote:
>>> On 07/21/2015 04:07 AM, Vaibhav Hiremath wrote:
>>>> +

<snip>

>>>> +static int pm800_clk_remove(struct platform_device *pdev)
>>>> +{
>>>> +    struct pm800_clk *pm800_clks = platform_get_drvdata(pdev);
>>>> +    int i;
>>>> +
>>>> +    of_clk_del_provider(pm800_clks[0].clk_np);
>>>> +    /* Drop the reference obtained in pm800_clk_parse_dt */
>>>> +    of_node_put(pm800_clks[0].clk_np);
>>>
>>> This is odd. Why are we keeping the reference in the driver?
>>>
>>
>> Honestly I do not have any good answer here. I have to admit that it is
>> getting carry forwarded from legacy driver.
>>
>
> Well we shouldn't do things if we don't know why we're doing them.
> Krzysztof?
>

Hold on,
After looking more in to this, it seems we really do not need it.
It is already taken care by

of_clk_add_provider() and
of_clk_del_provider()

Sorry for not investigating this before. Just left out from my eyes
somehow.

Actually I can cleanup clk-s2mps11.c driver as well, but only thing is
I can validate it, as I do not have platform to test it.
It should be trivial changes.

If somebody can help me out in validation I can submit the patch for
clk-s2mps11.c driver as well.

Thanks,
Vaibhav