Messages in this thread | | | Date | Thu, 13 Feb 2020 12:59:18 +0000 | From | Ionela Voinescu <> | Subject | Re: [PATCH v3 5/7] cpufreq: add function to get the hardware max frequency |
| |
On Thursday 13 Feb 2020 at 11:59:56 (+0000), Valentin Schneider wrote: > On 2/11/20 6:45 PM, Ionela Voinescu wrote: > > +/** > > + * cpufreq_get_hw_max_freq - get the max hardware frequency of the CPU > > + * @cpu: CPU number > > + * > > + * The default return value is the max_freq field of cpuinfo. > > + */ > > +__weak unsigned int cpufreq_get_hw_max_freq(unsigned int cpu) > > +{ > > + struct cpufreq_policy *policy = cpufreq_cpu_get(cpu); > > + unsigned int ret_freq = 0; > > + > > + if (policy) { > > + ret_freq = policy->cpuinfo.max_freq; > > + cpufreq_cpu_put(policy); > > What about intel_pstate / turbo stuff? IIRC one of Giovanni's issues was that > turbo freq is not always reported as the max freq. Dunno if we can do > anything about it; at the very least maybe document the caveat? >
Okay, I can add details in the description in regards to potential reasons to overwrite this function. But basically this is one of the reasons for making this a weak function. The best information we can generically get for maximum hardware frequency is cpuinfo.max_freq. But if platforms have the possibility to obtain this differently from either hardware or firmware they can overwrite this.
Thanks, Ionela.
> > + } > > + > > + return ret_freq; > > +} > > +EXPORT_SYMBOL(cpufreq_get_hw_max_freq); > > + > > static unsigned int __cpufreq_get(struct cpufreq_policy *policy) > > { > > if (unlikely(policy_is_inactive(policy))) >
| |