I am sorry for there is a problem of mail system; attach it.
Sincerely,
Major Lee
________________________________
From: [email protected]
[mailto:[email protected]] On Behalf Of
[email protected]
Sent: Wednesday, March 23, 2011 4:14 PM
To: [email protected]
Subject: [Meego-kernel] [RFC] sfi-cpufreq: Temporary fix
extract_freq
sfi-cpufreq: Temporary fix extract_freq
In my test case (MRST platform, LNW Stepping = C1),
IA32_PERF_STATUS & INTEL_MSR_RANGE ==
perf->states[index].control + 1,
except highest cpu freq.
Signed-off-by: Major Lee <[email protected]>
---
--- linux-2.6.37.bak/arch/x86/kernel/cpu/cpufreq/sfi-cpufreq.c
2011-03-17 11:17:13.690941011 +0800
+++ linux-2.6.37/arch/x86/kernel/cpu/cpufreq/sfi-cpufreq.c
2011-03-23 15:57:26.140625000 +0800
@@ -249,6 +249,7 @@ static int check_est_cpu(unsigned int cp
return 1;
}
+#define BUS_RATIO_STS (0x1F << 8)
static unsigned extract_freq(u32 msr, struct sfi_cpufreq_data
*data)
{
int i;
@@ -258,7 +259,7 @@ static unsigned extract_freq(u32 msr, st
perf = data->sfi_data;
for (i = 0; data->freq_table[i].frequency !=
CPUFREQ_TABLE_END; i++) {
- if (msr == perf->states[data->freq_table[i].index].control)
+ if ((msr & BUS_RATIO_STS) ==
(perf->states[data->freq_table[i].index].control & BUS_RATIO_STS))
return data->freq_table[i].frequency;
}
return data->freq_table[0].frequency;
sfi-cpufreq.patch
Description: sfi-cpufreq.patch
_______________________________________________ MeeGo-kernel mailing list [email protected] http://lists.meego.com/listinfo/meego-kernel
