[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CAJZ5v0h7UEhXUUW5u=1PhvRWGURUF-KNJMPwL_MQPU-cAaYYDA@mail.gmail.com>
Date: Mon, 30 May 2022 15:36:16 +0200
From: "Rafael J. Wysocki" <rafael@...nel.org>
To: Shaokun Zhang <zhangshaokun@...ilicon.com>,
Pierre Gondois <pierre.gondois@....com>
Cc: Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Ionela Voinescu <Ionela.Voinescu@....com>,
Dietmar Eggemann <Dietmar.Eggemann@....com>,
"Rafael J. Wysocki" <rafael@...nel.org>,
Viresh Kumar <viresh.kumar@...aro.org>,
Linux PM <linux-pm@...r.kernel.org>
Subject: Re: [PATCH -next v2 1/1] cpufreq: CPPC: Fix unused-function warning
On Mon, May 30, 2022 at 1:56 PM Shaokun Zhang
<zhangshaokun@...ilicon.com> wrote:
>
> Hi,
>
> It works for me on compile when CONFIG_ENERGY_MODEL=n, please feel free to add:
> Tested-by: Shaokun Zhang <zhangshaokun@...ilicon.com>
Applied, thanks!
> On 2022/5/30 18:04, Pierre Gondois wrote:
> > Building the cppc_cpufreq driver with for arm64 with
> > CONFIG_ENERGY_MODEL=n triggers the following warnings:
> > drivers/cpufreq/cppc_cpufreq.c:550:12: error: ‘cppc_get_cpu_cost’ defined but not used
> > [-Werror=unused-function]
> > 550 | static int cppc_get_cpu_cost(struct device *cpu_dev, unsigned long KHz,
> > | ^~~~~~~~~~~~~~~~~
> > drivers/cpufreq/cppc_cpufreq.c:481:12: error: ‘cppc_get_cpu_power’ defined but not used
> > [-Werror=unused-function]
> > 481 | static int cppc_get_cpu_power(struct device *cpu_dev,
> > | ^~~~~~~~~~~~~~~~~~
> >
> > Move the Energy Model related functions into specific guards.
> > This allows to fix the warning and prevent doing extra work
> > when the Energy Model is not present.
> >
> > Fixes: 740fcdc2c20e ("cpufreq: CPPC: Register EM based on efficiency class information")
> > Reported-by: Shaokun Zhang <zhangshaokun@...ilicon.com>
> > Signed-off-by: Pierre Gondois <pierre.gondois@....com>
> > ---
> > drivers/cpufreq/cppc_cpufreq.c | 17 ++++++++---------
> > 1 file changed, 8 insertions(+), 9 deletions(-)
> >
> > diff --git a/drivers/cpufreq/cppc_cpufreq.c b/drivers/cpufreq/cppc_cpufreq.c
> > index f0a8bb2c59e5..24eaf0ec344d 100644
> > --- a/drivers/cpufreq/cppc_cpufreq.c
> > +++ b/drivers/cpufreq/cppc_cpufreq.c
> > @@ -441,6 +441,14 @@ static unsigned int cppc_cpufreq_get_transition_delay_us(unsigned int cpu)
> > }
> > return cppc_get_transition_latency(cpu) / NSEC_PER_USEC;
> > }
> > +#else
> > +static unsigned int cppc_cpufreq_get_transition_delay_us(unsigned int cpu)
> > +{
> > + return cppc_get_transition_latency(cpu) / NSEC_PER_USEC;
> > +}
> > +#endif
> > +
> > +#if defined(CONFIG_ARM64) && defined(CONFIG_ENERGY_MODEL)
> >
> > static DEFINE_PER_CPU(unsigned int, efficiency_class);
> > static void cppc_cpufreq_register_em(struct cpufreq_policy *policy);
> > @@ -621,21 +629,12 @@ static void cppc_cpufreq_register_em(struct cpufreq_policy *policy)
> > }
> >
> > #else
> > -
> > -static unsigned int cppc_cpufreq_get_transition_delay_us(unsigned int cpu)
> > -{
> > - return cppc_get_transition_latency(cpu) / NSEC_PER_USEC;
> > -}
> > static int populate_efficiency_class(void)
> > {
> > return 0;
> > }
> > -static void cppc_cpufreq_register_em(struct cpufreq_policy *policy)
> > -{
> > -}
> > #endif
> >
> > -
> > static struct cppc_cpudata *cppc_cpufreq_get_cpu_data(unsigned int cpu)
> > {
> > struct cppc_cpudata *cpu_data;
> >
Powered by blists - more mailing lists