diff --git a/drivers/cpufreq/cpufreq-dt.c b/drivers/cpufreq/cpufreq-dt.c index 552a05724fcc..ee269642eb28 100644 --- a/drivers/cpufreq/cpufreq-dt.c +++ b/drivers/cpufreq/cpufreq-dt.c @@ -236,10 +236,14 @@ static int cpufreq_init(struct cpufreq_policy *policy) cpumask_copy(&cpus, policy->cpus); cpumask_clear_cpu(policy->cpu, &cpus); - if (!dev_pm_opp_of_cpumask_add_table(&cpus)) + if (!cpumask_empty(&cpus)) { + if (!dev_pm_opp_of_cpumask_add_table(&cpus)) + priv->have_static_opps = true; + else + dev_pm_opp_of_remove_table(cpu_dev); + } else { priv->have_static_opps = true; - else - dev_pm_opp_of_remove_table(cpu_dev); + } } #else if (!dev_pm_opp_of_cpumask_add_table(policy->cpus))