Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e2376d1f authored by Viresh Kumar's avatar Viresh Kumar Committed by Rafael J. Wysocki
Browse files

cpufreq: powernow: Don't validate the frequency table twice



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 powernow driver.

Signed-off-by: default avatarViresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
parent b01b531f
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -214,8 +214,9 @@ static int powernow_k6_cpu_init(struct cpufreq_policy *policy)

	/* cpuinfo and default policy values */
	policy->cpuinfo.transition_latency = 500000;
	policy->freq_table = clock_ratio;

	return cpufreq_table_validate_and_show(policy, clock_ratio);
	return 0;
}


+2 −1
Original line number Diff line number Diff line
@@ -639,8 +639,9 @@ static int powernow_cpu_init(struct cpufreq_policy *policy)

	policy->cpuinfo.transition_latency =
		cpufreq_scale(2000000UL, fsb, latency);
	policy->freq_table = powernow_table;

	return cpufreq_table_validate_and_show(policy, powernow_table);
	return 0;
}

static int powernow_cpu_exit(struct cpufreq_policy *policy)
+1 −9
Original line number Diff line number Diff line
@@ -1076,15 +1076,7 @@ static int powernowk8_cpu_init(struct cpufreq_policy *pol)

	cpumask_copy(pol->cpus, topology_core_cpumask(pol->cpu));
	data->available_cores = pol->cpus;

	/* min/max the cpu is capable of */
	if (cpufreq_table_validate_and_show(pol, data->powernow_table)) {
		pr_err(FW_BUG "invalid powernow_table\n");
		powernow_k8_cpu_exit_acpi(data);
		kfree(data->powernow_table);
		kfree(data);
		return -EINVAL;
	}
	pol->freq_table = data->powernow_table;

	pr_debug("cpu_init done, current fid 0x%x, vid 0x%x\n",
		data->currfid, data->currvid);