On 5/26/22 14:42, Viresh Kumar wrote: > The OPP core now provides a unified API for setting all configuration > types, i.e. dev_pm_opp_set_config(). > > Lets start using it. > > Signed-off-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx> > --- > drivers/cpufreq/tegra20-cpufreq.c | 12 ++++++++---- > 1 file changed, 8 insertions(+), 4 deletions(-) > > diff --git a/drivers/cpufreq/tegra20-cpufreq.c b/drivers/cpufreq/tegra20-cpufreq.c > index e8db3d75be25..2c73623e3abb 100644 > --- a/drivers/cpufreq/tegra20-cpufreq.c > +++ b/drivers/cpufreq/tegra20-cpufreq.c > @@ -34,7 +34,7 @@ static bool cpu0_node_has_opp_v2_prop(void) > > static void tegra20_cpufreq_put_supported_hw(void *opp_table) > { > - dev_pm_opp_put_supported_hw(opp_table); > + dev_pm_opp_clear_config(opp_table); > } > > static void tegra20_cpufreq_dt_unregister(void *cpufreq_dt) > @@ -49,6 +49,10 @@ static int tegra20_cpufreq_probe(struct platform_device *pdev) > struct device *cpu_dev; > u32 versions[2]; > int err; > + struct dev_pm_opp_config config = { > + .supported_hw = versions, > + .supported_hw_count = ARRAY_SIZE(versions), > + }; > > if (!cpu0_node_has_opp_v2_prop()) { > dev_err(&pdev->dev, "operating points not found\n"); > @@ -71,10 +75,10 @@ static int tegra20_cpufreq_probe(struct platform_device *pdev) > if (WARN_ON(!cpu_dev)) > return -ENODEV; > > - opp_table = dev_pm_opp_set_supported_hw(cpu_dev, versions, 2); > - err = PTR_ERR_OR_ZERO(opp_table); > + opp_table = dev_pm_opp_set_config(cpu_dev, &config); > + err = PTR_ERR(opp_table); Please keep the PTR_ERR_OR_ZERO. tegra20-cpufreq tegra20-cpufreq: failed to set OPP config: -1042688000 -- Best regards, Dmitry