Re: [PATCH] cpufreq: tegra186: Share policy per cluster
From: Thierry Reding
Date: Fri Mar 07 2025 - 11:05:55 EST
On Fri, Mar 07, 2025 at 08:45:29PM +0530, Sumit Gupta wrote:
>
>
> On 03/03/25 21:18, Thierry Reding wrote:
> > On Mon, Mar 03, 2025 at 03:33:06PM +0530, Viresh Kumar wrote:
> > > On 16-02-25, 10:08, Aaron Kling wrote:
> > > > This functionally brings tegra186 in line with tegra210 and tegra194,
> > > > sharing a cpufreq policy between all cores in a cluster.
> > > >
> > > > Signed-off-by: Aaron Kling <webgeek1234@xxxxxxxxx>
> > > > ---
> > > > drivers/cpufreq/tegra186-cpufreq.c | 7 +++++++
> > > > 1 file changed, 7 insertions(+)
> > > >
> > > > diff --git a/drivers/cpufreq/tegra186-cpufreq.c b/drivers/cpufreq/tegra186-cpufreq.c
> > > > index c7761eb99f3cc..c832a1270e688 100644
> > > > --- a/drivers/cpufreq/tegra186-cpufreq.c
> > > > +++ b/drivers/cpufreq/tegra186-cpufreq.c
> > > > @@ -73,11 +73,18 @@ static int tegra186_cpufreq_init(struct cpufreq_policy *policy)
> > > > {
> > > > struct tegra186_cpufreq_data *data = cpufreq_get_driver_data();
> > > > unsigned int cluster = data->cpus[policy->cpu].bpmp_cluster_id;
> > > > + u32 cpu;
> > > > policy->freq_table = data->clusters[cluster].table;
> > > > policy->cpuinfo.transition_latency = 300 * 1000;
> > > > policy->driver_data = NULL;
> > > > + /* set same policy for all cpus in a cluster */
> > > > + for (cpu = 0; cpu < (sizeof(tegra186_cpus)/sizeof(struct tegra186_cpufreq_cpu)); cpu++) {
> > > > + if (data->cpus[cpu].bpmp_cluster_id == cluster)
> > > > + cpumask_set_cpu(cpu, policy->cpus);
> > > > + }
> > > > +
> > > > return 0;
> > > > }
> > >
> > > Thierry / Jonathan,
> > >
> > > Any inputs on this ?
> >
> > Sumit,
> >
> > does this look reasonable?
> >
> > Thanks,
> > Thierry
>
> Looks good to me.
>
> Reviewed-by: Sumit Gupta <sumitg@xxxxxxxxxx>
Thanks, in that case:
Acked-by: Thierry Reding <treding@xxxxxxxxxx>
Attachment:
signature.asc
Description: PGP signature