[PATCH] cpufreq: qoriq: enhance bus frequency calculation

Andy Tang andy.tang at nxp.com
Fri Mar 10 02:12:44 PST 2017


Hi Viresh,

> -----Original Message-----
> From: Viresh Kumar [mailto:viresh.kumar at linaro.org]
> Sent: Friday, March 10, 2017 6:05 PM
> To: Andy Tang
> Cc: rjw at rjwysocki.net; linux-pm at vger.kernel.org; linux-
> kernel at vger.kernel.org; linux-arm-kernel at lists.infradead.org
> Subject: Re: [PATCH] cpufreq: qoriq: enhance bus frequency calculation
> 
> On 10-03-17, 01:44, Andy Tang wrote:
> > > Will this always work? If yes, then what about dropping the code
> > > parsing DT completely ? That is, just rely on clk_get_rate() in all cases.
> > >
> > We put all the clock tree configuration in driver, not in dts.
> > cg-pll0-div1 is hardcoded in driver since we don't depend on dts.
> > We kind of don't have other choices but use the hardcode clock name
> > here too.
> 
> Looks like you misread my comment. Let me try again. Will it be fine to write
> get_bus_freq() this way?
> 
> static u32 get_bus_freq(void)
> {
> 	struct clk *pltclk;
> 
> 	/* get platform freq by its clock name */
> 	pltclk = clk_get(NULL, "cg-pll0-div1");
> 	if (IS_ERR(pltclk)) {
> 		pr_err("%s: can't get bus frequency %ld\n",
> 		       __func__, PTR_ERR(pltclk));
> 		return PTR_ERR(pltclk);
> 	}
> 
> 	return clk_get_rate(pltclk);
> }
> 
Yes, we can. But for some legacy powerpc-based socs, this may not work.
powerpc-base socs are still  using legacy clock driver. For compatibility sake, we better be compatible with old ones. It would break any compatibility this way.

Regards,
Yuantian

> --
> viresh



More information about the linux-arm-kernel mailing list