[PATCH v5 10/44] clk: davinci: New driver for davinci PSC clocks
Sekhar Nori
nsekhar at ti.com
Wed Jan 17 04:25:16 PST 2018
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?
Thanks,
Sekhar
More information about the linux-arm-kernel
mailing list