Bug 10386
Summary: | cpufreq reports wrong scaling_freqs - Acer Extensa 3001WLMi | ||
---|---|---|---|
Product: | ACPI | Reporter: | Michael Straube (miste78) |
Component: | BIOS | Assignee: | acpi_bios |
Status: | CLOSED DOCUMENTED | ||
Severity: | normal | CC: | lenb |
Priority: | P1 | ||
Hardware: | All | ||
OS: | Linux | ||
Kernel Version: | 2.6.24.4 | Subsystem: | |
Regression: | No | Bisected commit-id: | |
Attachments: |
output of 'lspci -vvv'
output of 'acpidump' output of 'dmesg | grep -i acpi' fixed DSDT table speedstep-centrino.c patch corrected speedstep-centrino.c patch |
Description
Michael Straube
2008-04-02 14:39:43 UTC
Created attachment 15582 [details]
output of 'lspci -vvv'
attached output of 'lspci -vvv'
Created attachment 15583 [details]
output of 'acpidump'
Created attachment 15584 [details]
output of 'dmesg | grep -i acpi'
Name (PPSS, Package (0x05) { Package (0x06) { 0x0640, 0x5DC0, 0x0A, 0x0A, 0x89, 0x00 }, Package (0x06) { 0x0578, 0x4E20, 0x0A, 0x0A, 0x8A, 0x01 }, Package (0x06) { 0x04B0, 0x4650, 0x0A, 0x0A, 0x8B, 0x02 }, Package (0x06) { 0x0320, 0x3E80, 0x0A, 0x0A, 0x8C, 0x03 }, Package (0x06) { 0x0258, 0x2EE0, 0x0A, 0x0A, 0x8D, 0x04 } }) 1600000 1400000 1200000 800000 600000 is exactly what your BIOS is exporting to the OS. If you want different numbers, you need a new BIOS. There is no newer BIOS version available, but a while ago I figured out that loading a fixed DSDT table with the correct values for the freqs work. But I don't use acpi_cpufreq anymore for freq. scaling. I use a patched speedstep-centrino.c file with added support for my CPU now. Created attachment 43992 [details]
fixed DSDT table
Created attachment 44002 [details]
speedstep-centrino.c patch
Created attachment 44012 [details]
corrected speedstep-centrino.c patch
sorry, the first patch contains a mistake. It should be 100 instead of 133 for base
#define OPEX(mhz, base, mva, mvb, mvc, mvd) \
{ \
.frequency = (mhz) * 1000, \
.index = (((mhz)/(base)) << 8) | ((mva - 700) / 16) \
}
/* Intel Pentium M processor 715 / 1.50 GHz (Sonoma) */
static struct cpufreq_frequency_table sonoma_1500[] =
{
OPEX( 600, 100, 988, 988, 988, 988),
OPEX( 800, 100, 1068, 1068, 1068, 1052),
OPEX(1000, 100, 1148, 1148, 1132, 1116),
OPEX(1200, 100, 1228, 1212, 1212, 1180),
OPEX(1500, 100, 1340, 1324, 1308, 1276),
{ .frequency = CPUFREQ_TABLE_END }
};
|