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

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

cpufreq: Reuse new freq-table helpers



This patch migrates few users of cpufreq tables to the new helpers
that work on sorted freq-tables.

Signed-off-by: default avatarViresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
parent da0c6dc0
Loading
Loading
Loading
Loading
+4 −10
Original line number Diff line number Diff line
@@ -468,20 +468,14 @@ unsigned int acpi_cpufreq_fast_switch(struct cpufreq_policy *policy,
	struct acpi_cpufreq_data *data = policy->driver_data;
	struct acpi_processor_performance *perf;
	struct cpufreq_frequency_table *entry;
	unsigned int next_perf_state, next_freq, freq;
	unsigned int next_perf_state, next_freq, index;

	/*
	 * Find the closest frequency above target_freq.
	 *
	 * The table is sorted in the reverse order with respect to the
	 * frequency and all of the entries are valid (see the initialization).
	 */
	entry = policy->freq_table;
	do {
		entry++;
		freq = entry->frequency;
	} while (freq >= target_freq && freq != CPUFREQ_TABLE_END);
	entry--;
	index = cpufreq_table_find_index_dl(policy, target_freq);

	entry = &policy->freq_table[index];
	next_freq = entry->frequency;
	next_perf_state = entry->driver_data;

+2 −2
Original line number Diff line number Diff line
@@ -91,8 +91,8 @@ static unsigned int amd_powersave_bias_target(struct cpufreq_policy *policy,
		else {
			unsigned int index;

			index = cpufreq_frequency_table_target(policy,
				policy->cur - 1, CPUFREQ_RELATION_H);
			index = cpufreq_table_find_index_h(policy,
							   policy->cur - 1);
			freq_next = policy->freq_table[index].frequency;
		}

+2 −4
Original line number Diff line number Diff line
@@ -85,11 +85,9 @@ static unsigned int generic_powersave_bias_target(struct cpufreq_policy *policy,
	freq_avg = freq_req - freq_reduc;

	/* Find freq bounds for freq_avg in freq_table */
	index = cpufreq_frequency_table_target(policy, freq_avg,
					       CPUFREQ_RELATION_H);
	index = cpufreq_table_find_index_h(policy, freq_avg);
	freq_lo = freq_table[index].frequency;
	index = cpufreq_frequency_table_target(policy, freq_avg,
					       CPUFREQ_RELATION_L);
	index = cpufreq_table_find_index_l(policy, freq_avg);
	freq_hi = freq_table[index].frequency;

	/* Find out how long we have to be in hi and lo freqs */
+1 −2
Original line number Diff line number Diff line
@@ -760,8 +760,7 @@ void powernv_cpufreq_work_fn(struct work_struct *work)
		struct cpufreq_policy policy;

		cpufreq_get_policy(&policy, cpu);
		index = cpufreq_frequency_table_target(&policy, policy.cur,
					       CPUFREQ_RELATION_C);
		index = cpufreq_table_find_index_c(&policy, policy.cur);
		powernv_cpufreq_target_index(&policy, index);
		cpumask_andnot(&mask, &mask, policy.cpus);
	}
+1 −2
Original line number Diff line number Diff line
@@ -246,8 +246,7 @@ static int s5pv210_target(struct cpufreq_policy *policy, unsigned int index)
	new_freq = s5pv210_freq_table[index].frequency;

	/* Finding current running level index */
	priv_index = cpufreq_frequency_table_target(policy, old_freq,
						    CPUFREQ_RELATION_H);
	priv_index = cpufreq_table_find_index_h(policy, old_freq);

	arm_volt = dvs_conf[index].arm_volt;
	int_volt = dvs_conf[index].int_volt;