Difference between revisions of "Talk:Problem with high pitch noises"
m (→Discussion of "Limit ACPI CPU power states") |
m (→Discussion of "Limit ACPI CPU power states") |
||
Line 3: | Line 3: | ||
*Stefan Baums: I raised this issue on the linux-kernel mailing list, and from there it was forwarded to the acpi-devel mailing list. See the discussion [http://sourceforge.net/mailarchive/forum.php?thread_id=7593600&forum_id=6102 here] and [http://sourceforge.net/mailarchive/forum.php?thread_id=7599419&forum_id=6102 here]. Results: The <code>idle=halt</code> kernel parameter disables ACPI C-state switching entirely (i.e., locks the processor in C1). It is preferable to pass to the ACPI processor component the option {{bootparm|max_cstate|2}}, which only disables the problematic states C3 and C4. The only way to accomplish this that worked for me was to compile the ACPI processor component permanently into the kernel (<tt>CONFIG_ACPI_PROCESSOR=y</tt>) and then enable it by adding the parameter {{bootparm|processor.max_cstate|2}} to the boot command line (and of course removing {{bootparm|idle|halt}}). Now the computer switches back and forth between C1 and C2, but avoids the noise-inducing C3 and C4, and frequency scaling works regardless. ({{X41}}) | *Stefan Baums: I raised this issue on the linux-kernel mailing list, and from there it was forwarded to the acpi-devel mailing list. See the discussion [http://sourceforge.net/mailarchive/forum.php?thread_id=7593600&forum_id=6102 here] and [http://sourceforge.net/mailarchive/forum.php?thread_id=7599419&forum_id=6102 here]. Results: The <code>idle=halt</code> kernel parameter disables ACPI C-state switching entirely (i.e., locks the processor in C1). It is preferable to pass to the ACPI processor component the option {{bootparm|max_cstate|2}}, which only disables the problematic states C3 and C4. The only way to accomplish this that worked for me was to compile the ACPI processor component permanently into the kernel (<tt>CONFIG_ACPI_PROCESSOR=y</tt>) and then enable it by adding the parameter {{bootparm|processor.max_cstate|2}} to the boot command line (and of course removing {{bootparm|idle|halt}}). Now the computer switches back and forth between C1 and C2, but avoids the noise-inducing C3 and C4, and frequency scaling works regardless. ({{X41}}) | ||
*Simon Eggert: The {{bootparm|processor.max_cstate|3}} option worked for me on my {{T43p}} thanks. | *Simon Eggert: The {{bootparm|processor.max_cstate|3}} option worked for me on my {{T43p}} thanks. | ||
− | * Adding <code>options processor | + | * Adding <code>options processor max_cstate=2</code> in {{path|/etc/modprobe.conf}} (or {{path|/etc/modprobe.conf.local}} on my SuSE 9.3 installation) prevents the CPU permanently from entering into C3 and higher states. ({{X40}}, {{R52}}) |
* [[User:Thinker|Thinker]]: On one {{T43}}, this worked even with {{bootparm|processor.max_cstate|3}}. That is, C3 was silent and only C4 produced whining (at both HZ=100 and HZ=250). | * [[User:Thinker|Thinker]]: On one {{T43}}, this worked even with {{bootparm|processor.max_cstate|3}}. That is, C3 was silent and only C4 produced whining (at both HZ=100 and HZ=250). | ||
* [[User:Thinker|Thinker]]: These options affect power consumption when the CPU is idle. Here are the figures on one ThinkPad T43: | * [[User:Thinker|Thinker]]: These options affect power consumption when the CPU is idle. Here are the figures on one ThinkPad T43: | ||
Line 9: | Line 9: | ||
** {{bootparm|processor.max_cstate|3}}: 15770mW (660mW higher, silent) | ** {{bootparm|processor.max_cstate|3}}: 15770mW (660mW higher, silent) | ||
** {{bootparm|processor.max_cstate|2}}: 16100mW (2940mW higher, silent) | ** {{bootparm|processor.max_cstate|2}}: 16100mW (2940mW higher, silent) | ||
+ | |||
+ | On a debian system, no modprobe.conf, can use modutils to add max_cstate line. On my t43p the noise only occcurs when on battery power after suspend / resume cycle. It is definitely is still present when hard disk is spun down. | ||
== Harddisk related noise == | == Harddisk related noise == |
Revision as of 04:44, 18 November 2005
Discussion of "Limit ACPI CPU power states"
- Stefan Baums: I raised this issue on the linux-kernel mailing list, and from there it was forwarded to the acpi-devel mailing list. See the discussion here and here. Results: The
idle=halt
kernel parameter disables ACPI C-state switching entirely (i.e., locks the processor in C1). It is preferable to pass to the ACPI processor component the optionmax_cstate=2
, which only disables the problematic states C3 and C4. The only way to accomplish this that worked for me was to compile the ACPI processor component permanently into the kernel (CONFIG_ACPI_PROCESSOR=y) and then enable it by adding the parameterprocessor.max_cstate=2
to the boot command line (and of course removingidle=halt
). Now the computer switches back and forth between C1 and C2, but avoids the noise-inducing C3 and C4, and frequency scaling works regardless. (X41) - Simon Eggert: The
processor.max_cstate=3
option worked for me on my T43p thanks. - Adding
options processor max_cstate=2
in /etc/modprobe.conf (or /etc/modprobe.conf.local on my SuSE 9.3 installation) prevents the CPU permanently from entering into C3 and higher states. (X40, R52) - Thinker: On one T43, this worked even with
processor.max_cstate=3
. That is, C3 was silent and only C4 produced whining (at both HZ=100 and HZ=250). - Thinker: These options affect power consumption when the CPU is idle. Here are the figures on one ThinkPad T43:
processor.max_cstate=4
: 15160mW (default, noisy)processor.max_cstate=3
: 15770mW (660mW higher, silent)processor.max_cstate=2
: 16100mW (2940mW higher, silent)
On a debian system, no modprobe.conf, can use modutils to add max_cstate line. On my t43p the noise only occcurs when on battery power after suspend / resume cycle. It is definitely is still present when hard disk is spun down.
on my T43p the noise definitely comes from the harddisk and can be heard both in Windows and Linux. Only at boot time, before the harddisk spins up, or when I manually spin down the harddisk with
# hdparm -y /dev/sda
the system is silent.