diff options
| -rw-r--r-- | arch/x86/kernel/cpu/cpufreq/powernow-k8.c | 29 |
1 files changed, 4 insertions, 25 deletions
diff --git a/arch/x86/kernel/cpu/cpufreq/powernow-k8.c b/arch/x86/kernel/cpu/cpufreq/powernow-k8.c index 2a50ef891000..0cbce0481a54 100644 --- a/arch/x86/kernel/cpu/cpufreq/powernow-k8.c +++ b/arch/x86/kernel/cpu/cpufreq/powernow-k8.c | |||
| @@ -854,6 +854,10 @@ static int powernow_k8_cpu_init_acpi(struct powernow_k8_data *data) | |||
| 854 | goto err_out; | 854 | goto err_out; |
| 855 | } | 855 | } |
| 856 | 856 | ||
| 857 | /* fill in data */ | ||
| 858 | data->numps = data->acpi_data.state_count; | ||
| 859 | powernow_k8_acpi_pst_values(data, 0); | ||
| 860 | |||
| 857 | if (cpu_family == CPU_HW_PSTATE) | 861 | if (cpu_family == CPU_HW_PSTATE) |
| 858 | ret_val = fill_powernow_table_pstate(data, powernow_table); | 862 | ret_val = fill_powernow_table_pstate(data, powernow_table); |
| 859 | else | 863 | else |
| @@ -866,11 +870,8 @@ static int powernow_k8_cpu_init_acpi(struct powernow_k8_data *data) | |||
| 866 | powernow_table[data->acpi_data.state_count].index = 0; | 870 | powernow_table[data->acpi_data.state_count].index = 0; |
| 867 | data->powernow_table = powernow_table; | 871 | data->powernow_table = powernow_table; |
| 868 | 872 | ||
| 869 | /* fill in data */ | ||
| 870 | data->numps = data->acpi_data.state_count; | ||
| 871 | if (cpumask_first(cpu_core_mask(data->cpu)) == data->cpu) | 873 | if (cpumask_first(cpu_core_mask(data->cpu)) == data->cpu) |
| 872 | print_basics(data); | 874 | print_basics(data); |
| 873 | powernow_k8_acpi_pst_values(data, 0); | ||
| 874 | 875 | ||
| 875 | /* notify BIOS that we exist */ | 876 | /* notify BIOS that we exist */ |
| 876 | acpi_processor_notify_smm(THIS_MODULE); | 877 | acpi_processor_notify_smm(THIS_MODULE); |
| @@ -941,7 +942,6 @@ static int fill_powernow_table_fidvid(struct powernow_k8_data *data, | |||
| 941 | struct cpufreq_frequency_table *powernow_table) | 942 | struct cpufreq_frequency_table *powernow_table) |
| 942 | { | 943 | { |
| 943 | int i; | 944 | int i; |
| 944 | int cntlofreq = 0; | ||
| 945 | 945 | ||
| 946 | for (i = 0; i < data->acpi_data.state_count; i++) { | 946 | for (i = 0; i < data->acpi_data.state_count; i++) { |
| 947 | u32 fid; | 947 | u32 fid; |
| @@ -982,27 +982,6 @@ static int fill_powernow_table_fidvid(struct powernow_k8_data *data, | |||
| 982 | continue; | 982 | continue; |
| 983 | } | 983 | } |
| 984 | 984 | ||
| 985 | /* verify only 1 entry from the lo frequency table */ | ||
| 986 | if (fid < HI_FID_TABLE_BOTTOM) { | ||
| 987 | if (cntlofreq) { | ||
| 988 | /* if both entries are the same, | ||
| 989 | * ignore this one ... */ | ||
| 990 | if ((freq != powernow_table[cntlofreq].frequency) || | ||
| 991 | (index != powernow_table[cntlofreq].index)) { | ||
| 992 | printk(KERN_ERR PFX | ||
| 993 | "Too many lo freq table " | ||
| 994 | "entries\n"); | ||
| 995 | return 1; | ||
| 996 | } | ||
| 997 | |||
| 998 | dprintk("double low frequency table entry, " | ||
| 999 | "ignoring it.\n"); | ||
| 1000 | invalidate_entry(data, i); | ||
| 1001 | continue; | ||
| 1002 | } else | ||
| 1003 | cntlofreq = i; | ||
| 1004 | } | ||
| 1005 | |||
| 1006 | if (freq != (data->acpi_data.states[i].core_frequency * 1000)) { | 985 | if (freq != (data->acpi_data.states[i].core_frequency * 1000)) { |
| 1007 | printk(KERN_INFO PFX "invalid freq entries " | 986 | printk(KERN_INFO PFX "invalid freq entries " |
| 1008 | "%u kHz vs. %u kHz\n", freq, | 987 | "%u kHz vs. %u kHz\n", freq, |
