Powernow: Enable more than 2 low P-states
PATCH 1/1 Powernow: Enable more than 2 low P-states
Remove an obsolete check that used to prevent there being more than 2 low P-states. Now that low-to-low P-states changes are enabled, it prevents otherwise workable configurations with multiple low P-states.
Signed-off-by Mark Langsdorf <[email protected]>
Tested-by Krists Krilovs <[email protected]>
--- arch/x86/kernel/cpu/cpufreq/powernow-k8.c | 29 ++++------------------------- 1 files changed, 4 insertions(+), 25 deletions(-)
arch/x86/kernel/cpu/cpufreq/powernow-k8.c +4 -25
@@ -854,6 +854,10 @@ static int powernow_k8_cpu_init_acpi(struct powernow_k8_data *data) goto err_out; } +/* fill in data */ + data->numps = data->acpi_data.state_count; +powernow_k8_acpi_pst_values (data,0 ); +if (cpu_family ==CPU_HW_PSTATE ) ret_val =fill_powernow_table_pstate (data, powernow_table);else
@@ -866,11 +870,8 @@ static int powernow_k8_cpu_init_acpi(struct powernow_k8_data *data) powernow_table[data->acpi_data.state_count].index =0 ; data->powernow_table = powernow_table; -/* fill in data */ - data->numps = data->acpi_data.state_count;if (cpumask_first (cpu_core_mask (data->cpu)) == data->cpu)print_basics (data); -powernow_k8_acpi_pst_values (data,0 );/* notify BIOS that we exist */ acpi_processor_notify_smm (THIS_MODULE );
@@ -941,7 +942,6 @@ static int fill_powernow_table_fidvid(struct powernow_k8_data *data, struct cpufreq_frequency_table *powernow_table) {int i; -int cntlofreq =0 ;for (i =0 ; i < data->acpi_data.state_count; i++) {u32 fid;
@@ -982,27 +982,6 @@ static int fill_powernow_table_fidvid(struct powernow_k8_data *data,continue ; } -/* verify only 1 entry from the lo frequency table */ -if (fid <HI_FID_TABLE_BOTTOM ) { -if (cntlofreq) { -/* if both entries are the same, -* ignore this one ... */ -if ((freq != powernow_table[cntlofreq].frequency) || - (index != powernow_table[cntlofreq].index)) { - printk(KERN_ERR PFX -"Too many lo freq table " - "entries\n"); -return 1 ; - } - -dprintk ("double low frequency table entry, " -"ignoring it.\n" ); -invalidate_entry (data, i); -continue ; - }else - cntlofreq = i; - } -if (freq != (data->acpi_data.states[i].core_frequency *1000 )) { printk(KERN_INFO PFX "invalid freq entries " "%u kHz vs. %u kHz\n", freq,