[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20200709090912.vapouiruidgypxzc@vireshk-i7>
Date: Thu, 9 Jul 2020 14:39:12 +0530
From: Viresh Kumar <viresh.kumar@...aro.org>
To: Ionela Voinescu <ionela.voinescu@....com>
Cc: Dietmar Eggemann <dietmar.eggemann@....com>,
"Rafael J. Wysocki" <rafael@...nel.org>,
"Rafael J. Wysocki" <rjw@...ysocki.net>,
Catalin Marinas <catalin.marinas@....com>,
Sudeep Holla <sudeep.holla@....com>,
Will Deacon <will@...nel.org>,
Russell King - ARM Linux <linux@...linux.org.uk>,
Valentin Schneider <valentin.schneider@....com>,
Ingo Molnar <mingo@...hat.com>,
Peter Zijlstra <peterz@...radead.org>,
Linux PM <linux-pm@...r.kernel.org>,
Linux ARM <linux-arm-kernel@...ts.infradead.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH 1/8] cpufreq: allow drivers to flag custom support for
freq invariance
On 09-07-20, 09:53, Ionela Voinescu wrote:
> On Monday 06 Jul 2020 at 14:14:47 (+0200), Dietmar Eggemann wrote:
> > Why can't we just move the arch_set_freq_scale() call from cpufreq
> > driver to cpufreq core w/o introducing a FIE related driver flag?
> >
> > Current scenario for Frequency Invariance Engine (FIE) on arm/arm64.
> >
> > +------------------------------+ +------------------------------+
> > | | | |
> > | cpufreq core: | | arch: (arm, arm64) |
> >
> > | | | |
> > | weak arch_set_freq_scale() {}| | |
> > | | | |
> > +------------------------------+ | |
> > | |
> > +------------------------------+ | |
> > | | | |
> > | cpufreq driver: | | |
> > | +-----------> arch_set_freq_scale() |
> > | | | { |
> > +------------------------------+ | if (use counters) |
> > | return; |
> > +------------------------------+ | ... |
> > | | | } |
> > | task scheduler: | | |
> > | +-----------> arch_scale_freq_tick()* |
> > | | | { |
> >
> > | | | if (!use counters) |
> > | | | return; |
> > | | | ... |
> > | | | } |
> > +------------------------------+ +------------------------------+
> >
> > * defined as topology_scale_freq_tick() in arm64
> >
> > Only Arm/Arm64 defines arch_set_freq_scale() to get the 'legacy' CPUfreq
> > based FIE. This would still be the case when we move
> > arch_set_freq_scale() from individual cpufreq drivers to cpufreq core.
> >
> > Arm64 is the only arch which has to runtime-choose between two different
> > FIEs. This is currently done by bailing out early in one of the FIE
> > functions based on 'use counters'.
> >
> > X86 (and others) will continue to not define arch_set_freq_scale().
> >
> > The issue with CONFIG_BL_SWITCHER (vexpress-spc-cpufreq.c) could be
> > solved arm/arm64 internally (arch_topology.c) by putting
> > arch_set_freq_scale() under a !CONFIG_BL_SWITCHER guard.
> > I doubt that there are any arm bL systems out there running it. At least
> > I'm not aware of any complaints due to missing FIE support in bl
> > switcher setups so far.
I agree to that.
> Thank you Dietmar, for your review.
>
> I was trying to suggest the same in my other replies.
I am sorry, I must have overlooked that part in your replies,
otherwise I may agreed to it :)
> Rafael, Viresh, would you mind confirming whether you still consider
> having an 'opt in' flag is preferable here?
Well, we wanted an opt-in flag instead of an opt-out one. And no flag
is certainly better.
--
viresh
Powered by blists - more mailing lists