[CPUFREQ][7/8] acpi-cpufreq: Fix get of current frequency breakage
authorVenkatesh Pallipadi <venkatesh.pallipadi@intel.com>
Tue, 3 Oct 2006 19:37:42 +0000 (12:37 -0700)
committerDave Jones <davej@redhat.com>
Sun, 15 Oct 2006 23:57:11 +0000 (19:57 -0400)
Recent speedstep-centrino unification onto acpi-cpufreq patchset broke
cpuinfo_cur_freq interface in /sys/../cpuinfo/, when MSR was used for
transitions. Attached patch fixes that breakage.

Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>
Signed-off-by: Dave Jones <davej@redhat.com>
arch/i386/kernel/cpu/cpufreq/acpi-cpufreq.c

index e6513e994088fbca7c4c33682d46dc629c270d65..8b0c7db85a474bd45f62a52fb05357b33fe4608f 100644 (file)
@@ -101,10 +101,13 @@ static unsigned extract_io(u32 value, struct acpi_cpufreq_data *data)
 static unsigned extract_msr(u32 msr, struct acpi_cpufreq_data *data)
 {
        int i;
+       struct acpi_processor_performance *perf;
 
        msr &= INTEL_MSR_RANGE;
+       perf = data->acpi_data;
+
        for (i = 0; data->freq_table[i].frequency != CPUFREQ_TABLE_END; i++) {
-               if (msr == data->freq_table[i].index)
+               if (msr == perf->states[data->freq_table[i].index].status)
                        return data->freq_table[i].frequency;
        }
        return data->freq_table[0].frequency;