diff options
-rw-r--r-- | drivers/cpufreq/cpufreq-dt.c | 15 |
1 files changed, 3 insertions, 12 deletions
diff --git a/drivers/cpufreq/cpufreq-dt.c b/drivers/cpufreq/cpufreq-dt.c index 727ef79aa0252..cccdba5e0adc9 100644 --- a/drivers/cpufreq/cpufreq-dt.c +++ b/drivers/cpufreq/cpufreq-dt.c @@ -225,7 +225,6 @@ static int cpufreq_init(struct cpufreq_policy *policy) bool fallback = false; const char *name; int ret; - struct srcu_notifier_head *opp_srcu_head; struct device_node *l2_np; struct clk *l2_clk = NULL; @@ -316,17 +315,9 @@ static int cpufreq_init(struct cpufreq_policy *policy) mutex_init(&priv->lock); - rcu_read_lock(); - opp_srcu_head = dev_pm_opp_get_notifier(cpu_dev); - if (IS_ERR(opp_srcu_head)) { - ret = PTR_ERR(opp_srcu_head); - rcu_read_unlock(); - goto out_free_priv; - } - priv->opp_nb.notifier_call = opp_notifier; - ret = srcu_notifier_chain_register(opp_srcu_head, &priv->opp_nb); - rcu_read_unlock(); + ret = dev_pm_opp_register_notifier(cpu_dev, &priv->opp_nb); + if (ret) goto out_free_priv; @@ -379,7 +370,7 @@ static int cpufreq_init(struct cpufreq_policy *policy) out_free_cpufreq_table: dev_pm_opp_free_cpufreq_table(cpu_dev, &freq_table); out_unregister_nb: - srcu_notifier_chain_unregister(opp_srcu_head, &priv->opp_nb); + dev_pm_opp_unregister_notifier(cpu_dev, &priv->opp_nb); out_free_priv: kfree(priv); out_free_opp: |