OSDN Git Service

cpufreq: SCMI: Don't validate the frequency table twice
authorViresh Kumar <viresh.kumar@linaro.org>
Tue, 3 Apr 2018 10:07:38 +0000 (15:37 +0530)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Tue, 10 Apr 2018 06:39:55 +0000 (08:39 +0200)
The cpufreq core is already validating the CPU frequency table after
calling the ->init() callback of the cpufreq drivers and the drivers
don't need to do the same anymore. Though they need to set the
policy->freq_table field directly from the ->init() callback now.

Stop validating the frequency table from SCMI driver.

Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
Acked-by: Sudeep Holla <sudeep.holla@arm.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
drivers/cpufreq/scmi-cpufreq.c

index 959a1db..b4dbc77 100644 (file)
@@ -159,13 +159,7 @@ static int scmi_cpufreq_init(struct cpufreq_policy *policy)
        priv->domain_id = handle->perf_ops->device_domain_id(cpu_dev);
 
        policy->driver_data = priv;
-
-       ret = cpufreq_table_validate_and_show(policy, freq_table);
-       if (ret) {
-               dev_err(cpu_dev, "%s: invalid frequency table: %d\n", __func__,
-                       ret);
-               goto out_free_cpufreq_table;
-       }
+       policy->freq_table = freq_table;
 
        /* SCMI allows DVFS request for any domain from any CPU */
        policy->dvfs_possible_from_any_cpu = true;
@@ -179,8 +173,6 @@ static int scmi_cpufreq_init(struct cpufreq_policy *policy)
        policy->fast_switch_possible = true;
        return 0;
 
-out_free_cpufreq_table:
-       dev_pm_opp_free_cpufreq_table(cpu_dev, &freq_table);
 out_free_priv:
        kfree(priv);
 out_free_opp: