Re: [PATCH 08/31] cpufreq: tegra20: Migrate to dev_pm_opp_set_config()

From: Dmitry Osipenko
Date: Sun May 29 2022 - 12:19:34 EST


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