[PATCH v5 10/44] clk: davinci: New driver for davinci PSC clocks
David Lechner
david at lechnology.com
Wed Jan 17 09:28:41 PST 2018
On 01/17/2018 06:25 AM, Sekhar Nori wrote:
> On Tuesday 16 January 2018 10:21 PM, David Lechner wrote:
>
>>>> +static struct clk *davinci_psc_clk_register(const char *name,
>>>> + const char *parent_name,
>>>> + struct regmap *regmap,
>>>> + u32 lpsc, u32 pd, u32 flags)
>>>> +{
>>>> + struct clk_init_data init;
>>>> + struct davinci_psc_clk *psc;
>>>> + struct clk *clk;
>>>> +
>>>> + psc = kzalloc(sizeof(*psc), GFP_KERNEL);
>>>> + if (!psc)
>>>> + return ERR_PTR(-ENOMEM);
>>>> +
>>>> + init.name = name;
>>>> + init.ops = &davinci_psc_clk_ops;
>>>> + init.parent_names = (parent_name ? &parent_name : NULL);
>>>> + init.num_parents = (parent_name ? 1 : 0);
>>>> + init.flags = CLK_SET_RATE_PARENT;
>>>
>>> Is this needed since PSC does not cause any rate change?
>>
>> Yes, because one of the PSCs is the ARM clock and for cpufreq, we
>> need to propagate the rate change up the chain to SYSCLK6.
>
> Good point. But how about treating that as an exception with a new LPSC_
> quirk flag?
Sure.
More information about the linux-arm-kernel
mailing list