From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Lezcano Subject: Re: [PATCH v4 5/9] cpufreq: cpufreq-dt: Use auto-registration of thermal cooling device Date: Mon, 28 Jan 2019 09:35:41 +0100 Message-ID: <52fd659d-b5a2-b0dc-b901-9bc33d7d6721@linaro.org> References: Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Return-path: In-Reply-To: Content-Language: en-US Sender: linux-kernel-owner@vger.kernel.org To: Amit Kucheria , linux-kernel@vger.kernel.org Cc: linux-arm-msm@vger.kernel.org, viresh.kumar@linaro.org, edubezval@gmail.com, swboyd@chromium.org, dianders@chromium.org, mka@chromium.org, "Rafael J. Wysocki" , linux-pm@vger.kernel.org List-Id: linux-arm-msm@vger.kernel.org On 28/01/2019 07:41, Amit Kucheria wrote: > Use the CPUFREQ_AUTO_REGISTER_COOLING_DEV flag to allow cpufreq core to > automatically register as a thermal cooling device. > > This allows removal of boiler plate code from the driver. > > Signed-off-by: Amit Kucheria Reviewed-by: Daniel Lezcano > --- > drivers/cpufreq/cpufreq-dt.c | 14 ++------------ > 1 file changed, 2 insertions(+), 12 deletions(-) > > diff --git a/drivers/cpufreq/cpufreq-dt.c b/drivers/cpufreq/cpufreq-dt.c > index e58bfcb1169e..2a4c4ea7980b 100644 > --- a/drivers/cpufreq/cpufreq-dt.c > +++ b/drivers/cpufreq/cpufreq-dt.c > @@ -13,7 +13,6 @@ > > #include > #include > -#include > #include > #include > #include > @@ -30,7 +29,6 @@ > struct private_data { > struct opp_table *opp_table; > struct device *cpu_dev; > - struct thermal_cooling_device *cdev; > const char *reg_name; > bool have_static_opps; > }; > @@ -301,7 +299,6 @@ static int cpufreq_exit(struct cpufreq_policy *policy) > { > struct private_data *priv = policy->driver_data; > > - cpufreq_cooling_unregister(priv->cdev); > dev_pm_opp_free_cpufreq_table(priv->cpu_dev, &policy->freq_table); > if (priv->have_static_opps) > dev_pm_opp_of_cpumask_remove_table(policy->related_cpus); > @@ -314,21 +311,14 @@ static int cpufreq_exit(struct cpufreq_policy *policy) > return 0; > } > > -static void cpufreq_ready(struct cpufreq_policy *policy) > -{ > - struct private_data *priv = policy->driver_data; > - > - priv->cdev = of_cpufreq_cooling_register(policy); > -} > - > static struct cpufreq_driver dt_cpufreq_driver = { > - .flags = CPUFREQ_STICKY | CPUFREQ_NEED_INITIAL_FREQ_CHECK, > + .flags = CPUFREQ_STICKY | CPUFREQ_NEED_INITIAL_FREQ_CHECK | > + CPUFREQ_AUTO_REGISTER_COOLING_DEV, > .verify = cpufreq_generic_frequency_table_verify, > .target_index = set_target, > .get = cpufreq_generic_get, > .init = cpufreq_init, > .exit = cpufreq_exit, > - .ready = cpufreq_ready, > .name = "cpufreq-dt", > .attr = cpufreq_dt_attr, > .suspend = cpufreq_generic_suspend, > -- Linaro.org │ Open source software for ARM SoCs Follow Linaro: Facebook | Twitter | Blog