<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://www.thinkwiki.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Mkarcher</id>
	<title>ThinkWiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://www.thinkwiki.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Mkarcher"/>
	<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/wiki/Special:Contributions/Mkarcher"/>
	<updated>2026-04-08T16:44:40Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.31.12</generator>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=2648-46U&amp;diff=30562</id>
		<title>2648-46U</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=2648-46U&amp;diff=30562"/>
		<updated>2007-06-19T10:43:34Z</updated>

		<summary type="html">&lt;p&gt;Mkarcher: â†Created page with 'Category:T20'&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:T20]]&lt;/div&gt;</summary>
		<author><name>Mkarcher</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Problems_with_ACPI_suspend-to-ram&amp;diff=30561</id>
		<title>Problems with ACPI suspend-to-ram</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Problems_with_ACPI_suspend-to-ram&amp;diff=30561"/>
		<updated>2007-06-19T10:41:20Z</updated>

		<summary type="html">&lt;p&gt;Mkarcher: ec_intr=0 also for T20&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The following glitches may or may not occur in relation to suspending to RAM:&lt;br /&gt;
&lt;br /&gt;
==Troubles on suspend==&lt;br /&gt;
;Permissions:If your suspend is failing, and a {{cmdroot|tail /var/log/acpid}} shows &amp;quot;Permission denied&amp;quot; errors, be sure that your new ACPI event and action scripts have the appropriate permissions.&lt;br /&gt;
&lt;br /&gt;
;Write error:If {{cmdroot|echo mem &amp;gt; /sys/power/state}} shows &amp;quot;write error: Operation not permitted&amp;quot;, verify that CONFIG_HOTPLUG_CPU option is enabled in the kernel. [[Software_Suspend_2|Suspend2]] automatically selects this option. &lt;br /&gt;
&lt;br /&gt;
;Broken sysfs interface:You may experience problems when using {{cmdroot|echo standby &amp;gt; /sys/power/state}} or {{cmdroot|echo mem &amp;gt; /sys/power/state}} (machine goes to sleep and wakes up immediately). This can be avoided by using {{cmdroot|echo -n 3 &amp;gt;/proc/acpi/sleep}} to get it to sleep. This can be also happen if hotplug daemon is still running.&lt;br /&gt;
&lt;br /&gt;
;Hangs on &amp;quot;switching to UP code&amp;quot;:You may be using a [[How to make use of Dynamic Frequency Scaling|frequency scaling governor]] such as &amp;quot;conservative&amp;quot; or &amp;quot;ondemand&amp;quot;, which sometimes have problems with suspending. Switching to a governor such as &amp;quot;powersave&amp;quot; or &amp;quot;performance&amp;quot; before suspending may solve this problem.&lt;br /&gt;
&lt;br /&gt;
;MySQL daemon running:If you're running MySQL, sleep may also not work, so stop MySQL first, then sleep. Remember to restart MySQL when you wakeup.&lt;br /&gt;
&lt;br /&gt;
;LCD backlight remains on during sleep:When your system is equiped with a Radeon Mobility graphic controller your [[Problem with LCD backlight remaining on during ACPI sleep|LCD backlight may not turn off automatically]]. Use [[radeontool]] to switch off your backlight prior suspend in your sleep action script.&lt;br /&gt;
&lt;br /&gt;
;High power drain during sleep:Also, you might want to take note of the [[Problem with high power drain in ACPI sleep]].&lt;br /&gt;
&lt;br /&gt;
;Built-in MMC reader:If you have an MMC reader, and the computer hangs when attempting suspend then remove sdhci, mmc_block, and mmc_core modules before suspending.&lt;br /&gt;
&lt;br /&gt;
;Could not power down device &amp;lt;NULL&amp;gt;: error -22:If you have the acpi_cpufreq kernel module loaded, this prevents suspension.&lt;br /&gt;
&lt;br /&gt;
==Troubles on resume==&lt;br /&gt;
;Blank display on resume:&lt;br /&gt;
:When resuming from a suspend-to-ram the display might remain black (on {{X60}}) or might only show the pre-suspend output (the system is still rebootable via {{key|ctrl}}{{key|alt}}{{key|del}}). See [[Problem with display remaining black after resume]] for solutions. See also '''System hang on resume''' on this page - which may be potentially mismatched with this one.&lt;br /&gt;
&lt;br /&gt;
;No mouse cursor on resume:&lt;br /&gt;
:When resuming from a suspend-to-ram your X cursor might be invisible(on {{X40}}) when using {{path|/sys/power/state}} directly to suspend, they way to fix this is to rerun the post bios code after returning for suspending.&lt;br /&gt;
:{{cmdroot|FGCONSOLE&amp;lt;nowiki&amp;gt;=&amp;lt;/nowiki&amp;gt;`fgconsole\`}}&lt;br /&gt;
:{{cmdroot|chvt 1 &amp;amp;&amp;amp; echo -n mem &amp;gt;/sys/power/state}}&lt;br /&gt;
:{{cmdroot|vbetool post &amp;amp;&amp;amp; chvt 7 &amp;amp;&amp;amp; chvt $FGCONSOLE}}&lt;br /&gt;
&lt;br /&gt;
;Garbage on text consoles on resume:When resuming from suspend-to-ram the text console displays may show garbage instead of actual text. The machine is otherwise still responsive and X displays fine. If all of this is true, then adding the kernel option {{bootparm|acpi_sleep|s3_bios,s3_mode}} in your menu.lst or lilo.conf may solve the problem.&lt;br /&gt;
&lt;br /&gt;
;Broken hardware support after resume:&lt;br /&gt;
:*The '''serial port''' of the port replicator might not work after resume.&lt;br /&gt;
:*The '''parallel port''' might not work after resume. A possible fix is to unload and reload the parallel port drivers: {{cmdroot|rmmod lp parport_pc parport; modprobe lp}}.&lt;br /&gt;
:*Problems with the '''CD-RW/DVD drive''' after wake up from ram have been experienced.&lt;br /&gt;
:*There is a known Problem regarding '''battery info''' after suspend to RAM. A [http://www.ussg.iu.edu/hypermail/linux/kernel/0511.0/2429.html small patch] exists for kernels 2.6.14/2.6.15.&lt;br /&gt;
:*On {{X20}} and {{X21}} (and possibly other) models, the '''sleep LED''' is not reset properly on resume and will keep blinking. If you have the [[ibm-acpi]] kernel module loaded with the {{bootparm|ibm-acpi.experimental|1}} option, you can switch it off on resume by appending the following line to your suspend script: {{cmdroot|echo 7 off &amp;gt; /proc/acpi/ibm/led}}&lt;br /&gt;
&lt;br /&gt;
;Crash on resume:&lt;br /&gt;
:*When using '''older ATI proprietary drivers''' a crash on resume can be solved by using [http://freshmeat.net/projects/vbetool/ vbetool]. See the example suspend script [[Problem with display remaining black after resume#Solution for ThinkPads with Intel I830 Chipset]]. This is no longer necessary with recent revisions of the ATI proprietary driver.&lt;br /&gt;
:*A crash could also be caused by having '''apic support''' enabled in the kernel config. Try disabling it (in the &amp;quot;Processor type and features&amp;quot; section).&lt;br /&gt;
:*On machines with Savage chipsets, the '''savagefb framebuffer driver''' might crash the machine on resume. Make sure it is disabled in your kernel config and use the standard vesafb driver instead.&lt;br /&gt;
:*SATA-based laptops utilize the '''libata layer for disk access''' which does not have fully-working power-management support before Linux kernel 2.6.16 (ata_piix) and 2.6.19 (ahci).  Suspend to RAM crashes these machines on resume.  See the [[Problems with SATA and Linux#Hang on resume from suspend to RAM|relevant section]] on the [[Problems with SATA and Linux]] page.&lt;br /&gt;
:*Using [[HDAPS]] as a module causes a crash on resume with the Linux kernel 2.6.19 (possibly even earlier versions). This was observed on a {{X41}}. Try unloading the module before suspending.&lt;br /&gt;
&lt;br /&gt;
;System hang on resume:&lt;br /&gt;
:When system resumes it hangs right after restarting tasks. Strange thing is, that you may be even able to restart your ThinkPad using {{key|ctrl}}{{key|alt}}{{key|del}}, but if you try to blindly exec a command, it will not work, (eg. touch FILE) so it's not only the problem of videocard. This may be fixed by passing {{bootparm|ec_intr|0}} on kernel cmdline. Affected models: {{T20,T21}} (at least [[2648-46U]] (T20),[[2647-8AG]] (T21)).&lt;br /&gt;
:'''Note:''' ''this is resolved in kernel 2.6.20, there is no need to pass the {{bootparm|ec_intr|0}} bootparam anymore (moreover, you are discouraged to use it) See [http://bugzilla.kernel.org/show_bug.cgi?id=6749 revelant kernel bug report]''&lt;br /&gt;
&lt;br /&gt;
;Shutdown on resume:&lt;br /&gt;
:If your system immediately begins to shut down right after resume, make sure you don't have acpid running with the power button tied to shutdown. The system is simply sensing the power button event and shutting down.  This issue has been reported as a bug against the kernel ACPI subsystem, refer to [http://bugzilla.kernel.org/show_bug.cgi?id=6612 kernel.org bugzilla bug #6612].&lt;br /&gt;
&lt;br /&gt;
;Immediate suspend on resume:&lt;br /&gt;
:When running GNOME, sometimes gnome-power-manager will put the system back into suspend immediately after resuming.  This is caused by a known bug in HAL that causes some ACPI events to be reported incorrectly after a suspend-to-ram.  A simple workaround can be found [http://live.gnome.org/GnomePowerManager/Faq?action=recall&amp;amp;rev=28#head-b8b1280115b0a51c2cc27b13a57121130ebf36cb here].&lt;br /&gt;
:Note that suspend being triggered by unrelated ACPI events such as disconnecting the AC adapter may also be fixed by the above method.&lt;br /&gt;
&lt;br /&gt;
;Power Off when suspended laptop is docked&lt;br /&gt;
:When T60p is suspended, docking laptop into Advanced Dock immediately turns off laptop and crescent moon sleep indicator LED. Pressing power button initiates cold boot. Also reported by multiple people on thinkpads.com.&lt;br /&gt;
&lt;br /&gt;
;SectorIdNotFound disk errors when laptop is resumed&lt;br /&gt;
:The errors look like this:&lt;br /&gt;
: Oct 14 17:35:02 cacharro kernel: hda: dma_intr: status=0x51 { DriveReady SeekComplete Error }&lt;br /&gt;
: Oct 14 17:35:02 cacharro kernel: hda: dma_intr: error=0x10 { SectorIdNotFound }, LBAsect=115896900, sector=115896900&lt;br /&gt;
: Oct 14 17:35:02 cacharro kernel: ide: failed opcode was: unknown&lt;br /&gt;
&lt;br /&gt;
:This happens when you have [[Hidden Protected Area]] (HPA) enabled on the hard drive.  There is a [http://bugzilla.kernel.org/show_bug.cgi?id=6840 kernel bug report with an unfinished patch] to fix this.  This is not fixed as of kernel 2.16.18.&lt;/div&gt;</summary>
		<author><name>Mkarcher</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Problem_with_video_related_system_lockup&amp;diff=26744</id>
		<title>Problem with video related system lockup</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Problem_with_video_related_system_lockup&amp;diff=26744"/>
		<updated>2006-12-02T17:59:17Z</updated>

		<summary type="html">&lt;p&gt;Mkarcher: Removed the AGP2x remark -- it proved wrong&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Information about the problem of system lockups related to high video load.&lt;br /&gt;
&lt;br /&gt;
==Problem description==&lt;br /&gt;
&lt;br /&gt;
Occasionally, under high video load (e.g. scrolling text or moving windows), the computer becomes unresponsive or the computer becomes unresponsive during 3D rendering.&lt;br /&gt;
&lt;br /&gt;
==Affected Models==&lt;br /&gt;
&lt;br /&gt;
*ThinkPad {{A22e}}&lt;br /&gt;
*ThinkPad {{T20}}, {{T21}}, {{T22}}, {{T23}}&lt;br /&gt;
*other ThinkPads with an S3 Savage video card&lt;br /&gt;
&lt;br /&gt;
==Affected Operating Systems==&lt;br /&gt;
&lt;br /&gt;
*Any OS using the XFree86/Xorg 'savage' driver&lt;br /&gt;
&lt;br /&gt;
==Status==&lt;br /&gt;
&lt;br /&gt;
The problem of lockups due to 2D video load is already known about/solved by the driver development team.  According to the savage manual page, the problem is related to &amp;quot;a chip bug in the Savage graphics engine that causes a bus lock when reading from the engine status register under high load&amp;quot;.  Also according to the same source, &amp;quot;the bug affects about 4% of all Savage users.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
The problem of lockups or video corruption as a result of 3D rendering is less well-known/understood.  There appears to be a bug in AGP on Thinkpads interacting with Savage graphics cards.  For reference, there was a [http://mailman.linux-thinkpad.org/pipermail/linux-thinkpad/2006-March/032672.html recent discussion] of this problem on the Linux-Thinkpad Mailing List.&lt;br /&gt;
&lt;br /&gt;
==Solutions==&lt;br /&gt;
&lt;br /&gt;
If lockups are occuring under 2D video load (moving windows, scrolling), or you are using XFree86 or an XOrg version older than 6.8.x, add the following line to the Device section of your XF86Config-4/xorg.conf file:&lt;br /&gt;
&lt;br /&gt;
 Option     &amp;quot;ShadowStatus&amp;quot;&lt;br /&gt;
&lt;br /&gt;
If you are experiencing lockups related to 3D rendering (using DRI) and you are using an XOrg version more recent than 6.9/7.0, you may need to add one or both of the following lines to the Devices section of your xorg.conf file:&lt;br /&gt;
&lt;br /&gt;
 Option     &amp;quot;BusType&amp;quot; &amp;quot;PCI&amp;quot;&lt;br /&gt;
 Option     &amp;quot;DmaMode&amp;quot; &amp;quot;None&amp;quot;&lt;br /&gt;
&lt;br /&gt;
==Related Links==&lt;br /&gt;
&lt;br /&gt;
*[http://www.xfree86.org/4.3.0/savage.4.html XFree86 Savage(4) Manual Page]&lt;/div&gt;</summary>
		<author><name>Mkarcher</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Problem_with_video_related_system_lockup&amp;diff=24305</id>
		<title>Problem with video related system lockup</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Problem_with_video_related_system_lockup&amp;diff=24305"/>
		<updated>2006-08-20T21:52:46Z</updated>

		<summary type="html">&lt;p&gt;Mkarcher: /* Solutions */ On T20, AGPMode 2 helps&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Information about the problem of system lockups related to high video load.&lt;br /&gt;
&lt;br /&gt;
==Problem description==&lt;br /&gt;
&lt;br /&gt;
Occasionally, under high video load (e.g. scrolling text or moving windows), the computer becomes unresponsive or the computer becomes unresponsive during 3D rendering.&lt;br /&gt;
&lt;br /&gt;
==Affected Models==&lt;br /&gt;
&lt;br /&gt;
*ThinkPad {{A22e}}&lt;br /&gt;
*ThinkPad {{T20}}, {{T21}}, {{T22}}, {{T23}}&lt;br /&gt;
*other ThinkPads with an S3 Savage video card&lt;br /&gt;
&lt;br /&gt;
==Affected Operating Systems==&lt;br /&gt;
&lt;br /&gt;
*Any OS using the XFree86/Xorg 'savage' driver&lt;br /&gt;
&lt;br /&gt;
==Status==&lt;br /&gt;
&lt;br /&gt;
The problem of lockups due to 2D video load is already known about/solved by the driver development team.  According to the savage manual page, the problem is related to &amp;quot;a chip bug in the Savage graphics engine that causes a bus lock when reading from the engine status register under high load&amp;quot;.  Also according to the same source, &amp;quot;the bug affects about 4% of all Savage users.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
The problem of lockups or video corruption as a result of 3D rendering is less well-known/understood.  There appears to be a bug in AGP on Thinkpads interacting with Savage graphics cards.  For reference, there was a [http://mailman.linux-thinkpad.org/pipermail/linux-thinkpad/2006-March/032672.html recent discussion] of this problem on the Linux-Thinkpad Mailing List.&lt;br /&gt;
&lt;br /&gt;
==Solutions==&lt;br /&gt;
&lt;br /&gt;
If lockups are occuring under 2D video load (moving windows, scrolling), or you are using XFree86 or an XOrg version older than 6.8.x, add the following line to the Device section of your XF86Config-4/xorg.conf file:&lt;br /&gt;
&lt;br /&gt;
 Option     &amp;quot;ShadowStatus&amp;quot;&lt;br /&gt;
&lt;br /&gt;
If you are experiencing lockups related to 3D rendering (using DRI) and you are using an XOrg version more recent than 6.9/7.0, you may need to add one or both of the following lines to the Devices section of your xorg.conf file:&lt;br /&gt;
&lt;br /&gt;
 Option     &amp;quot;BusType&amp;quot; &amp;quot;PCI&amp;quot;&lt;br /&gt;
 Option     &amp;quot;DmaMode&amp;quot; &amp;quot;None&amp;quot;&lt;br /&gt;
&lt;br /&gt;
On a {{T20}}, 3D rendering crashes could also be prevented by forcing AGP 2x mode (instead of 1x) using&lt;br /&gt;
&lt;br /&gt;
 Option     &amp;quot;AGPMode&amp;quot; &amp;quot;2&amp;quot;&lt;br /&gt;
&lt;br /&gt;
instead of disabling AGP and DMA completely.&lt;br /&gt;
&lt;br /&gt;
==Related Links==&lt;br /&gt;
&lt;br /&gt;
*[http://www.xfree86.org/4.3.0/savage.4.html XFree86 Savage(4) Manual Page]&lt;/div&gt;</summary>
		<author><name>Mkarcher</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Problem_with_high_pitch_noises&amp;diff=24304</id>
		<title>Problem with high pitch noises</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Problem_with_high_pitch_noises&amp;diff=24304"/>
		<updated>2006-08-20T21:31:34Z</updated>

		<summary type="html">&lt;p&gt;Mkarcher: /* Limit ACPI CPU power states */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Information on strange high pitch, low volume noises emitted by ThinkPads.&lt;br /&gt;
&lt;br /&gt;
==Problem description==&lt;br /&gt;
Even though ThinkPads are known as very silent notebooks, they tend to emit different, mostly high pitch noises in certain circumstances. The noises are of low volume and hence not realized by everyone or at least tolerated by most people. However, there are those with &amp;quot;bat like ears&amp;quot; that hear them and might be annoyed by that.&lt;br /&gt;
&lt;br /&gt;
==Affected Models==&lt;br /&gt;
Noises have been experienced in the following situations:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;vertical-align:top;background-color:#DDDDDD;&amp;quot; | situation&lt;br /&gt;
! style=&amp;quot;vertical-align:top;background-color:#DDDDDD;&amp;quot; | noise description&lt;br /&gt;
! style=&amp;quot;vertical-align:top;background-color:#DDDDDD;&amp;quot; | affected models&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
Plugged into AC / running at high CPU frequency&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
soft crackling, buzzing noise&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
*{{T41}}&lt;br /&gt;
**2379-DJU&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
ThinkPad suspended to RAM&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
constant high pitch noise&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
*{{T42p}}&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
ThinkPad connected to power and switched off, with battery fully charged&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
constant high pitch noise&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
*{{T41p}}&lt;br /&gt;
**2373-GHG&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
moving windows or just the mouse in xorg&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
strange noise like a rapid series of very short high pitch noises adding to a constant kind of whistling (only as long as the movement goes)&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
*{{T41p}}&lt;br /&gt;
**2373-GHG&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
Thinkpad connected to power or working on battery, also when suspended to RAM&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
High pitch noise also when HD is powered down.&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
*{{T23}}&lt;br /&gt;
**2647-DG4&lt;br /&gt;
*{{X24}}&lt;br /&gt;
**2662-MWG&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
Thinkpad connected to power battery charged less than 60%&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
High pitch noise till battery is charged more than 60%.&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
*{{T41p}}&lt;br /&gt;
**2373-GEG&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
Constantly, if AC connected&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
High pitched, low volume constant noise.&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
*{{T40}}&lt;br /&gt;
**2373-88U&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
When the CPU freq jumps up to 1Ghz or above, or when the laptop is in suspend mode&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
Constant high pitched&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
*{{R50}}&lt;br /&gt;
**1829-6DM&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
(May come from harddisk.)&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
continuous, intermittent, low volume, high pitched&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
*{{600X}}&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
ACPI puts the processor into the C3 or C4 power saving states (i.e., the system is idle).&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
High-pitched crackling noise.&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
*{{X41}}&lt;br /&gt;
*{{T43}}&lt;br /&gt;
**2686-DGU&lt;br /&gt;
*{{T43p}}&lt;br /&gt;
*{{T60}}&lt;br /&gt;
**2007-72U&lt;br /&gt;
*{{T21}}&lt;br /&gt;
*{{T20}}&lt;br /&gt;
**2648-46U&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
Cpufreqd (or powernowd etc.) slows down the processor, for exemple at the end of an heavy task.&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
High-pitched crackling noise.&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
*{{T42}}&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
When on battery&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
Almost inaudible screeching sound, or sometimes beeping (when wifi is on)&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
*{{R52}}&lt;br /&gt;
**1858-A11&lt;br /&gt;
*{{T43}}&lt;br /&gt;
**2686-DGU&lt;br /&gt;
*{{T60}}&lt;br /&gt;
**2007-72U&lt;br /&gt;
*{{x60}}&lt;br /&gt;
*{{x31}}&lt;br /&gt;
**2673-CBU&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| CPU is used much AND laptop is on AC power AND the TFT panel is enabled.&lt;br /&gt;
| Screetching high pitch noise, like a million crickets&lt;br /&gt;
| &lt;br /&gt;
* {{X41}}&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| Network is pluged in and networkload is ~100%.&lt;br /&gt;
| low volume highfreq. pitch noise from left speaker or cpu.&lt;br /&gt;
|&lt;br /&gt;
*{{Z60}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Affected Operating Systems==&lt;br /&gt;
All, though Linux appears especially susceptible.&lt;br /&gt;
&lt;br /&gt;
==Possible sources==&lt;br /&gt;
&lt;br /&gt;
* '''CPU activity:''' On some models the noise is triggered by certain CPU power states or activity patterns (as proven [http://www.wisdom.weizmann.ac.il/~tromer/acoustic here]).&lt;br /&gt;
* '''Graphics processor:''' In some models from the T2x era, e.g. the {{T23}}, the problem was related to the graphics circuitry and occured especially or only while making use of DirectDraw functions. IBM was able to fix it through a BIOS upgrade.&lt;br /&gt;
* '''Hard disk:''' On some ThinkPads the processor and hard disk are adjacent and produce similar noise. For example, in the {{X41}} the sound generated by the hard disk is likely to be loudest at the vent.&lt;br /&gt;
&lt;br /&gt;
==Status==&lt;br /&gt;
&lt;br /&gt;
The problem is highly specific to operating system, model and even individual machines. There is no universal solution, but on most machines one of the following will reduce or eliminate the noise (possibly at some cost in power consumption).&lt;br /&gt;
&lt;br /&gt;
==Solutions for CPU-triggered noise==&lt;br /&gt;
&lt;br /&gt;
===Limit ACPI CPU power states===&lt;br /&gt;
&lt;br /&gt;
There are four ACPI CPU power states, called C1 through C4. Often only the extreme power saving modes C4 or C3 produce the noise, so the noise can be stopped by insructing the Linux ACPI code to use only lower modes.&lt;br /&gt;
&lt;br /&gt;
To forbid the ACPI driver from using C4 (this fixed the problem with on some ThinkPad {{T43}}, {{T43p}} and {{T41}}):&lt;br /&gt;
* If the ACPI processor component is compiled as built-in (&amp;lt;tt&amp;gt;CONFIG_ACPI_PROCESSOR=y&amp;lt;/tt&amp;gt;):&lt;br /&gt;
**Pass the {{bootparm|max_cstate|3}} kernel argument.&lt;br /&gt;
* If the ACPI processor component is loaded as a module (&amp;lt;tt&amp;gt;CONFIG_ACPI_PROCESSOR=m&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;processor&amp;lt;/tt&amp;gt; shows in the output of {{cmdroot|lsmod}}), do either of:&lt;br /&gt;
** Pass the {{bootparm|processor.max_cstate|3}} kernel argument (this does not work in Ubuntu 5.10 with default kernel).&lt;br /&gt;
** Add &amp;lt;code&amp;gt;options processor max_cstate=3&amp;lt;/code&amp;gt; to {{path|/etc/modprobe.conf}} (or {{path|/etc/modprobe.conf.local}}, or {{path|/etc/modprobe.d/...}}, depending on your system) (this does not work in Ubuntu 5.10 with default kernel).&lt;br /&gt;
** {{cmdroot|echo 3 &amp;gt;  /sys/module/processor/parameters/max_cstate}} (this can be changed in runtime for experimentation). (If may need to be set again upon resume from suspend, e.g., in the wakeup script.)&lt;br /&gt;
** (On Ubuntu 5.10, the default kernel uses &amp;lt;code&amp;gt;processor&amp;lt;/code&amp;gt; as a module.  Unfortunately, the script loading it, {{path|/etc/init.d/acpid}}, ignores the &amp;lt;code&amp;gt;options processor max_cstate=3&amp;lt;/code&amp;gt; setting in {{path|/etc/modprobe.d/&amp;lt;my file&amp;gt;}}.  As a solution for this specific problem, add the line &amp;lt;code&amp;gt;echo 2 &amp;gt; /sys/module/processor/parameters/max_cstate&amp;lt;/code&amp;gt; directly to {{path|/etc/init.d/acpid}}, at the end of the function &amp;lt;code&amp;gt;load_modules()&amp;lt;/code&amp;gt;, immediately after the line &amp;lt;code&amp;gt;echo &amp;quot;$PRINTK&amp;quot; &amp;gt; /proc/sys/kernel/printk&amp;lt;/code&amp;gt;.)&lt;br /&gt;
&lt;br /&gt;
To also forbid the C3 state, replace &amp;quot;&amp;lt;tt&amp;gt;3&amp;lt;/tt&amp;gt;&amp;quot; with &amp;quot;&amp;lt;tt&amp;gt;2&amp;lt;/tt&amp;gt;&amp;quot; above (this fixed the problem on some ThinkPad {{X40}}, {{X41}}, and {{R52}}, as well as on {{T20}} where C4 is not supported at all):&lt;br /&gt;
&lt;br /&gt;
Note that these options affect power consumption when the CPU is idle. For example, here are the power consumption figures on a ThinkPad {{T43}}:&lt;br /&gt;
* {{bootparm|processor.max_cstate|4}}: 15160mW (default, noisy)&lt;br /&gt;
* {{bootparm|processor.max_cstate|3}}: 15770mW (660mW higher, silent)&lt;br /&gt;
* {{bootparm|processor.max_cstate|2}}: 16100mW (2940mW higher, silent)&lt;br /&gt;
&lt;br /&gt;
See the [http://thinkwiki.org/wiki?title=Talk:Problem_with_high_pitch_noises discussion page] for further information and success reports.&lt;br /&gt;
&lt;br /&gt;
*Jakob Schou Pedersen: Editing the file {{path|/etc/init.d/acpid}} as described above (the last solution) worked on my T43 :-)&lt;br /&gt;
&lt;br /&gt;
===Turn off CPU power saving in in BIOS===&lt;br /&gt;
&lt;br /&gt;
Go into the BIOS and turn off the power saving processor feature that puts it into idle mode. (This worked on a ThinkPad {{T43}}, {{T21}} and {{X60s}}.)&lt;br /&gt;
&lt;br /&gt;
===Disable ACPI CPU power states===&lt;br /&gt;
&lt;br /&gt;
Completely disable CPU ACPI power states. Discussion:&lt;br /&gt;
&lt;br /&gt;
*From Martin Steigerwald: I made the observation that I get at least less high pitch noises on my {{T23}} when I do not use the two ACPI modules &amp;quot;processor&amp;quot; and &amp;quot;thermal&amp;quot; (depends on the first one). I have no clue, why. Anyone with similar experiences?&lt;br /&gt;
:Omar Yasin: I've got a {{R52}} and when I load the same ACPIO modules the high pitch noises are not as loud but I can still hear them.&lt;br /&gt;
*Niko Ehrenfeuchter: I'm experiencing the same here on my {{X24}}. Removing the &amp;quot;processor&amp;quot; module also stops the pitch noise, which does ONLY occur when setting the CPU to maximum speed (using cpufreq). On low speed it's completely silent, even having loaded the processor module.&lt;br /&gt;
&lt;br /&gt;
*Rolf Adelsberger: I can confirm this: the high pitch noise is only remarkable (at least with my ears ;-) ) if the processor speed is set to maximum frequency.&lt;br /&gt;
&lt;br /&gt;
*Stefan Baums: My {{X41}} produced a high-pitched crackle from the processor vent on the left.  Changing HZ did nothing, and the 'processor' module could not easily be removed from the system (Ubuntu 5.04).  What solved the problem for me was adding {{bootparm|idle|halt}} to the boot command line. Unfortunately, this solution only lasts until the first hibernation or suspend - when the computer ({{X41}}) resumes, the high-pitched crackle is back.&lt;br /&gt;
&lt;br /&gt;
* The {{bootparm|idle|halt}} solution combined with setting &amp;lt;code&amp;gt;#define HZ 100&amp;lt;/code&amp;gt; in the kernel fixes the problem on a {{T43}}.&lt;br /&gt;
&lt;br /&gt;
* jhatch:  {{bootparm|idle|halt}} plus &amp;lt;code&amp;gt;#define HZ 100&amp;lt;/code&amp;gt; also worked on my {{T43}}.  It still reverts back to noisy after a suspend/resume though.  This needs to be fixed...&lt;br /&gt;
&lt;br /&gt;
===Change the timer interrupt frequency===&lt;br /&gt;
&lt;br /&gt;
Change the &amp;quot;HZ&amp;quot; kernel constants to alter the frequency of timer interrupts. Discussion:&lt;br /&gt;
&lt;br /&gt;
{{NOTE|The timer interrupt frequency (HZ) in current Linux kernels is directly tied to the kernel task scheduler.  Lower frequencies provide larger time-slices and thus also higher latencies (which may kill latency-sensitive applications like audio processing). 100Hz ended up as the recommended &amp;quot;server&amp;quot; setting (because it increases disk/CPU throughput in a latency-insensitive environment).  Higher frequencies are better for latency-sensitive applications, and improve desktop responsivity at the cost of less processor throughput. 1000Hz ended up as the recommended &amp;quot;desktop&amp;quot; setting.}}&lt;br /&gt;
&lt;br /&gt;
*Andreas Karnahl: i've read in several forums it has something to do with the &amp;quot;idle&amp;quot;-state (or &amp;quot;C3&amp;quot;) of the processor. There is a frequency called &amp;quot;timer interrupt&amp;quot; (or so mething like that). Since kernel 2.6x it is set to 1000 Hz by default (compared to 100 Hz in Kernel 2.4x). The exact reason i don't know, but it is safe to change this frequency to 100 Hz in kernel 2.6x (by the way, windows up to XP uses 100 Hz by default).&amp;lt;br /&amp;gt;Just do the following:&amp;lt;br /&amp;gt;&lt;br /&gt;
:   In {{path|[path to kernel-sources]/include/asm-i386/param.h}} find the line&lt;br /&gt;
::       &amp;lt;code&amp;gt;#define HZ 1000&amp;lt;/code&amp;gt;&lt;br /&gt;
:   and change the value of HZ to 100: &lt;br /&gt;
::       &amp;lt;code&amp;gt;#define HZ 100&amp;lt;/code&amp;gt;&lt;br /&gt;
:Then recompile the kernel.&amp;lt;br /&amp;gt;After i changed it on my ThinkPad {{A30}} (under SuSE 9.2 and 9.3) and recompiling the kernel the high pitch noise is gone away.&lt;br /&gt;
&lt;br /&gt;
* Omar Yasin: Worked on my {{R52}}, thanks.&lt;br /&gt;
&lt;br /&gt;
* [[User:Thinker|Thinker]]: In modern kernels this constant is in the kernel configuration {{kernelconf|CONFIG_HZ|Processor type and features||Timer Frequency|||||}}.&lt;br /&gt;
&lt;br /&gt;
===Prevent idling===&lt;br /&gt;
&lt;br /&gt;
Indirectly avoid power saving states by making sure the CPU is rarely idle:&lt;br /&gt;
&lt;br /&gt;
* Paul RIVIER: Here is a really simple workaround. C3 / C4 states are mainly called when the cpu freq is higher than required, for example if your cpufreqd is lazy to slow down the frequency but quick to raise it. That is why I use powernowd with the builtin &amp;quot;passive&amp;quot; mode, which is lazy for raising frequency, but quick to go back to the lowest. Now I don't hear them as often as before, as I avoid C3/C4 states at high frequency.&lt;br /&gt;
&lt;br /&gt;
* The problem also occurs on my {{X41}} with 2.6.11. Setting up [[How to make use of Dynamic Frequency Scaling|frequency scaling]] with the &amp;lt;code&amp;gt;ondemand&amp;lt;/code&amp;gt; governor makes things a lot better, as the processor does not stay with the maximum frequency when in idle mode. It can be still heard sometimes, though.&lt;br /&gt;
&lt;br /&gt;
* On a {{T43}} the noise was gone after dropping cpufreqd and switching to the ondemand governor - maybe because of the high sampling rate? (used the default: 10ms)&lt;br /&gt;
&lt;br /&gt;
===Change the processor voltage===&lt;br /&gt;
&lt;br /&gt;
Reducing the processor voltage (when possible) may decrease or eliminate the noise. On one ThinkPad {{T43}}, [[Pentium M undervolting and underclocking|undervolting the Pentium M processor]] eliminated the high-pitched noise. Compared to the other solutions this has the benefit of lower power consumption, both due to the undervolting itself and because there is no need to forbid high APCI CPU power saving modes.&lt;br /&gt;
&lt;br /&gt;
==Other solutions==&lt;br /&gt;
&lt;br /&gt;
===Disable UltraBay===&lt;br /&gt;
*Naheed Vora: My {{T41}} (2373-268) started to give high pitch noise ocassionally, when I upgraded to 2.6.11 kernel. I tried to unload lot of modules but finally figured out that disabling bay stops the noise. If you have [[ibm-acpi]], do (need a cleaner solution): {{cmduser|echo eject &amp;gt;/proc/acpi/ibm/bay}} .&lt;br /&gt;
&lt;br /&gt;
===Disable IrDA===&lt;br /&gt;
*Mike Perry: I was able to cure an intermittent high-pitched whine on both my {{X24}} and {{X40}} by disabling the Infrared port.&lt;br /&gt;
&lt;br /&gt;
===Disable the Linuxant Modem Driver===&lt;br /&gt;
*Joern Heissler: I made another experience. I played around with linuxant conexant [[Modem Devices|modem]] drivers. After loading them I got some noise on my {{T42p}}.&lt;br /&gt;
&lt;br /&gt;
===Media Player paused===&lt;br /&gt;
*Eilif Muller: On my {{R52}} the high-pitched noises go away if I load XMMS, play something then pause it.&lt;br /&gt;
*Jacob: On my {{T43}} DGU it goes away if I open mplayerc.exe and press play then pause it. This is the high-pitched noise that only shows up when I'm on battery.&lt;br /&gt;
&lt;br /&gt;
''I'd guess that the above tip works as when xmms or similar is running, it is uncompressing compressed audio/video, which is a processor intensive action.  Keeping this paused means that the app won't 'let go' of the processor, forcing it to stay up and running, which stops it entering the higher powersave modes.''&lt;br /&gt;
&lt;br /&gt;
===Upgrade BIOS===&lt;br /&gt;
On a ThinkPad [[X60s]], [[BIOS_Upgrade|upgrading the BIOS]] to version 1.06 eliminated the high pitch noise when running on battery.&lt;/div&gt;</summary>
		<author><name>Mkarcher</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Problem_with_high_pitch_noises&amp;diff=24303</id>
		<title>Problem with high pitch noises</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Problem_with_high_pitch_noises&amp;diff=24303"/>
		<updated>2006-08-20T21:28:44Z</updated>

		<summary type="html">&lt;p&gt;Mkarcher: /* Affected Models */  Added T20 to C-state noise&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Information on strange high pitch, low volume noises emitted by ThinkPads.&lt;br /&gt;
&lt;br /&gt;
==Problem description==&lt;br /&gt;
Even though ThinkPads are known as very silent notebooks, they tend to emit different, mostly high pitch noises in certain circumstances. The noises are of low volume and hence not realized by everyone or at least tolerated by most people. However, there are those with &amp;quot;bat like ears&amp;quot; that hear them and might be annoyed by that.&lt;br /&gt;
&lt;br /&gt;
==Affected Models==&lt;br /&gt;
Noises have been experienced in the following situations:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;vertical-align:top;background-color:#DDDDDD;&amp;quot; | situation&lt;br /&gt;
! style=&amp;quot;vertical-align:top;background-color:#DDDDDD;&amp;quot; | noise description&lt;br /&gt;
! style=&amp;quot;vertical-align:top;background-color:#DDDDDD;&amp;quot; | affected models&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
Plugged into AC / running at high CPU frequency&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
soft crackling, buzzing noise&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
*{{T41}}&lt;br /&gt;
**2379-DJU&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
ThinkPad suspended to RAM&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
constant high pitch noise&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
*{{T42p}}&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
ThinkPad connected to power and switched off, with battery fully charged&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
constant high pitch noise&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
*{{T41p}}&lt;br /&gt;
**2373-GHG&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
moving windows or just the mouse in xorg&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
strange noise like a rapid series of very short high pitch noises adding to a constant kind of whistling (only as long as the movement goes)&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
*{{T41p}}&lt;br /&gt;
**2373-GHG&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
Thinkpad connected to power or working on battery, also when suspended to RAM&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
High pitch noise also when HD is powered down.&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
*{{T23}}&lt;br /&gt;
**2647-DG4&lt;br /&gt;
*{{X24}}&lt;br /&gt;
**2662-MWG&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
Thinkpad connected to power battery charged less than 60%&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
High pitch noise till battery is charged more than 60%.&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
*{{T41p}}&lt;br /&gt;
**2373-GEG&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
Constantly, if AC connected&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
High pitched, low volume constant noise.&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
*{{T40}}&lt;br /&gt;
**2373-88U&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
When the CPU freq jumps up to 1Ghz or above, or when the laptop is in suspend mode&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
Constant high pitched&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
*{{R50}}&lt;br /&gt;
**1829-6DM&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
(May come from harddisk.)&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
continuous, intermittent, low volume, high pitched&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
*{{600X}}&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
ACPI puts the processor into the C3 or C4 power saving states (i.e., the system is idle).&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
High-pitched crackling noise.&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
*{{X41}}&lt;br /&gt;
*{{T43}}&lt;br /&gt;
**2686-DGU&lt;br /&gt;
*{{T43p}}&lt;br /&gt;
*{{T60}}&lt;br /&gt;
**2007-72U&lt;br /&gt;
*{{T21}}&lt;br /&gt;
*{{T20}}&lt;br /&gt;
**2648-46U&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
Cpufreqd (or powernowd etc.) slows down the processor, for exemple at the end of an heavy task.&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
High-pitched crackling noise.&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
*{{T42}}&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
When on battery&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
Almost inaudible screeching sound, or sometimes beeping (when wifi is on)&lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
*{{R52}}&lt;br /&gt;
**1858-A11&lt;br /&gt;
*{{T43}}&lt;br /&gt;
**2686-DGU&lt;br /&gt;
*{{T60}}&lt;br /&gt;
**2007-72U&lt;br /&gt;
*{{x60}}&lt;br /&gt;
*{{x31}}&lt;br /&gt;
**2673-CBU&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| CPU is used much AND laptop is on AC power AND the TFT panel is enabled.&lt;br /&gt;
| Screetching high pitch noise, like a million crickets&lt;br /&gt;
| &lt;br /&gt;
* {{X41}}&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| Network is pluged in and networkload is ~100%.&lt;br /&gt;
| low volume highfreq. pitch noise from left speaker or cpu.&lt;br /&gt;
|&lt;br /&gt;
*{{Z60}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Affected Operating Systems==&lt;br /&gt;
All, though Linux appears especially susceptible.&lt;br /&gt;
&lt;br /&gt;
==Possible sources==&lt;br /&gt;
&lt;br /&gt;
* '''CPU activity:''' On some models the noise is triggered by certain CPU power states or activity patterns (as proven [http://www.wisdom.weizmann.ac.il/~tromer/acoustic here]).&lt;br /&gt;
* '''Graphics processor:''' In some models from the T2x era, e.g. the {{T23}}, the problem was related to the graphics circuitry and occured especially or only while making use of DirectDraw functions. IBM was able to fix it through a BIOS upgrade.&lt;br /&gt;
* '''Hard disk:''' On some ThinkPads the processor and hard disk are adjacent and produce similar noise. For example, in the {{X41}} the sound generated by the hard disk is likely to be loudest at the vent.&lt;br /&gt;
&lt;br /&gt;
==Status==&lt;br /&gt;
&lt;br /&gt;
The problem is highly specific to operating system, model and even individual machines. There is no universal solution, but on most machines one of the following will reduce or eliminate the noise (possibly at some cost in power consumption).&lt;br /&gt;
&lt;br /&gt;
==Solutions for CPU-triggered noise==&lt;br /&gt;
&lt;br /&gt;
===Limit ACPI CPU power states===&lt;br /&gt;
&lt;br /&gt;
There are four ACPI CPU power states, called C1 through C4. Often only the extreme power saving modes C4 or C3 produce the noise, so the noise can be stopped by insructing the Linux ACPI code to use only lower modes.&lt;br /&gt;
&lt;br /&gt;
To forbid the ACPI driver from using C4 (this fixed the problem with on some ThinkPad {{T43}}, {{T43p}} and {{T41}}):&lt;br /&gt;
* If the ACPI processor component is compiled as built-in (&amp;lt;tt&amp;gt;CONFIG_ACPI_PROCESSOR=y&amp;lt;/tt&amp;gt;):&lt;br /&gt;
**Pass the {{bootparm|max_cstate|3}} kernel argument.&lt;br /&gt;
* If the ACPI processor component is loaded as a module (&amp;lt;tt&amp;gt;CONFIG_ACPI_PROCESSOR=m&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;processor&amp;lt;/tt&amp;gt; shows in the output of {{cmdroot|lsmod}}), do either of:&lt;br /&gt;
** Pass the {{bootparm|processor.max_cstate|3}} kernel argument (this does not work in Ubuntu 5.10 with default kernel).&lt;br /&gt;
** Add &amp;lt;code&amp;gt;options processor max_cstate=3&amp;lt;/code&amp;gt; to {{path|/etc/modprobe.conf}} (or {{path|/etc/modprobe.conf.local}}, or {{path|/etc/modprobe.d/...}}, depending on your system) (this does not work in Ubuntu 5.10 with default kernel).&lt;br /&gt;
** {{cmdroot|echo 3 &amp;gt;  /sys/module/processor/parameters/max_cstate}} (this can be changed in runtime for experimentation). (If may need to be set again upon resume from suspend, e.g., in the wakeup script.)&lt;br /&gt;
** (On Ubuntu 5.10, the default kernel uses &amp;lt;code&amp;gt;processor&amp;lt;/code&amp;gt; as a module.  Unfortunately, the script loading it, {{path|/etc/init.d/acpid}}, ignores the &amp;lt;code&amp;gt;options processor max_cstate=3&amp;lt;/code&amp;gt; setting in {{path|/etc/modprobe.d/&amp;lt;my file&amp;gt;}}.  As a solution for this specific problem, add the line &amp;lt;code&amp;gt;echo 2 &amp;gt; /sys/module/processor/parameters/max_cstate&amp;lt;/code&amp;gt; directly to {{path|/etc/init.d/acpid}}, at the end of the function &amp;lt;code&amp;gt;load_modules()&amp;lt;/code&amp;gt;, immediately after the line &amp;lt;code&amp;gt;echo &amp;quot;$PRINTK&amp;quot; &amp;gt; /proc/sys/kernel/printk&amp;lt;/code&amp;gt;.)&lt;br /&gt;
&lt;br /&gt;
To also forbid the C3 state, replace &amp;quot;&amp;lt;tt&amp;gt;3&amp;lt;/tt&amp;gt;&amp;quot; with &amp;quot;&amp;lt;tt&amp;gt;2&amp;lt;/tt&amp;gt;&amp;quot; above (this fixed the problem on some ThinkPad {{X40}}, {{X41}}, and {{R52}}):&lt;br /&gt;
&lt;br /&gt;
Note that these options affect power consumption when the CPU is idle. For example, here are the power consumption figures on a ThinkPad {{T43}}:&lt;br /&gt;
* {{bootparm|processor.max_cstate|4}}: 15160mW (default, noisy)&lt;br /&gt;
* {{bootparm|processor.max_cstate|3}}: 15770mW (660mW higher, silent)&lt;br /&gt;
* {{bootparm|processor.max_cstate|2}}: 16100mW (2940mW higher, silent)&lt;br /&gt;
&lt;br /&gt;
See the [http://thinkwiki.org/wiki?title=Talk:Problem_with_high_pitch_noises discussion page] for further information and success reports.&lt;br /&gt;
&lt;br /&gt;
*Jakob Schou Pedersen: Editing the file {{path|/etc/init.d/acpid}} as described above (the last solution) worked on my T43 :-)&lt;br /&gt;
&lt;br /&gt;
===Turn off CPU power saving in in BIOS===&lt;br /&gt;
&lt;br /&gt;
Go into the BIOS and turn off the power saving processor feature that puts it into idle mode. (This worked on a ThinkPad {{T43}}, {{T21}} and {{X60s}}.)&lt;br /&gt;
&lt;br /&gt;
===Disable ACPI CPU power states===&lt;br /&gt;
&lt;br /&gt;
Completely disable CPU ACPI power states. Discussion:&lt;br /&gt;
&lt;br /&gt;
*From Martin Steigerwald: I made the observation that I get at least less high pitch noises on my {{T23}} when I do not use the two ACPI modules &amp;quot;processor&amp;quot; and &amp;quot;thermal&amp;quot; (depends on the first one). I have no clue, why. Anyone with similar experiences?&lt;br /&gt;
:Omar Yasin: I've got a {{R52}} and when I load the same ACPIO modules the high pitch noises are not as loud but I can still hear them.&lt;br /&gt;
*Niko Ehrenfeuchter: I'm experiencing the same here on my {{X24}}. Removing the &amp;quot;processor&amp;quot; module also stops the pitch noise, which does ONLY occur when setting the CPU to maximum speed (using cpufreq). On low speed it's completely silent, even having loaded the processor module.&lt;br /&gt;
&lt;br /&gt;
*Rolf Adelsberger: I can confirm this: the high pitch noise is only remarkable (at least with my ears ;-) ) if the processor speed is set to maximum frequency.&lt;br /&gt;
&lt;br /&gt;
*Stefan Baums: My {{X41}} produced a high-pitched crackle from the processor vent on the left.  Changing HZ did nothing, and the 'processor' module could not easily be removed from the system (Ubuntu 5.04).  What solved the problem for me was adding {{bootparm|idle|halt}} to the boot command line. Unfortunately, this solution only lasts until the first hibernation or suspend - when the computer ({{X41}}) resumes, the high-pitched crackle is back.&lt;br /&gt;
&lt;br /&gt;
* The {{bootparm|idle|halt}} solution combined with setting &amp;lt;code&amp;gt;#define HZ 100&amp;lt;/code&amp;gt; in the kernel fixes the problem on a {{T43}}.&lt;br /&gt;
&lt;br /&gt;
* jhatch:  {{bootparm|idle|halt}} plus &amp;lt;code&amp;gt;#define HZ 100&amp;lt;/code&amp;gt; also worked on my {{T43}}.  It still reverts back to noisy after a suspend/resume though.  This needs to be fixed...&lt;br /&gt;
&lt;br /&gt;
===Change the timer interrupt frequency===&lt;br /&gt;
&lt;br /&gt;
Change the &amp;quot;HZ&amp;quot; kernel constants to alter the frequency of timer interrupts. Discussion:&lt;br /&gt;
&lt;br /&gt;
{{NOTE|The timer interrupt frequency (HZ) in current Linux kernels is directly tied to the kernel task scheduler.  Lower frequencies provide larger time-slices and thus also higher latencies (which may kill latency-sensitive applications like audio processing). 100Hz ended up as the recommended &amp;quot;server&amp;quot; setting (because it increases disk/CPU throughput in a latency-insensitive environment).  Higher frequencies are better for latency-sensitive applications, and improve desktop responsivity at the cost of less processor throughput. 1000Hz ended up as the recommended &amp;quot;desktop&amp;quot; setting.}}&lt;br /&gt;
&lt;br /&gt;
*Andreas Karnahl: i've read in several forums it has something to do with the &amp;quot;idle&amp;quot;-state (or &amp;quot;C3&amp;quot;) of the processor. There is a frequency called &amp;quot;timer interrupt&amp;quot; (or so mething like that). Since kernel 2.6x it is set to 1000 Hz by default (compared to 100 Hz in Kernel 2.4x). The exact reason i don't know, but it is safe to change this frequency to 100 Hz in kernel 2.6x (by the way, windows up to XP uses 100 Hz by default).&amp;lt;br /&amp;gt;Just do the following:&amp;lt;br /&amp;gt;&lt;br /&gt;
:   In {{path|[path to kernel-sources]/include/asm-i386/param.h}} find the line&lt;br /&gt;
::       &amp;lt;code&amp;gt;#define HZ 1000&amp;lt;/code&amp;gt;&lt;br /&gt;
:   and change the value of HZ to 100: &lt;br /&gt;
::       &amp;lt;code&amp;gt;#define HZ 100&amp;lt;/code&amp;gt;&lt;br /&gt;
:Then recompile the kernel.&amp;lt;br /&amp;gt;After i changed it on my ThinkPad {{A30}} (under SuSE 9.2 and 9.3) and recompiling the kernel the high pitch noise is gone away.&lt;br /&gt;
&lt;br /&gt;
* Omar Yasin: Worked on my {{R52}}, thanks.&lt;br /&gt;
&lt;br /&gt;
* [[User:Thinker|Thinker]]: In modern kernels this constant is in the kernel configuration {{kernelconf|CONFIG_HZ|Processor type and features||Timer Frequency|||||}}.&lt;br /&gt;
&lt;br /&gt;
===Prevent idling===&lt;br /&gt;
&lt;br /&gt;
Indirectly avoid power saving states by making sure the CPU is rarely idle:&lt;br /&gt;
&lt;br /&gt;
* Paul RIVIER: Here is a really simple workaround. C3 / C4 states are mainly called when the cpu freq is higher than required, for example if your cpufreqd is lazy to slow down the frequency but quick to raise it. That is why I use powernowd with the builtin &amp;quot;passive&amp;quot; mode, which is lazy for raising frequency, but quick to go back to the lowest. Now I don't hear them as often as before, as I avoid C3/C4 states at high frequency.&lt;br /&gt;
&lt;br /&gt;
* The problem also occurs on my {{X41}} with 2.6.11. Setting up [[How to make use of Dynamic Frequency Scaling|frequency scaling]] with the &amp;lt;code&amp;gt;ondemand&amp;lt;/code&amp;gt; governor makes things a lot better, as the processor does not stay with the maximum frequency when in idle mode. It can be still heard sometimes, though.&lt;br /&gt;
&lt;br /&gt;
* On a {{T43}} the noise was gone after dropping cpufreqd and switching to the ondemand governor - maybe because of the high sampling rate? (used the default: 10ms)&lt;br /&gt;
&lt;br /&gt;
===Change the processor voltage===&lt;br /&gt;
&lt;br /&gt;
Reducing the processor voltage (when possible) may decrease or eliminate the noise. On one ThinkPad {{T43}}, [[Pentium M undervolting and underclocking|undervolting the Pentium M processor]] eliminated the high-pitched noise. Compared to the other solutions this has the benefit of lower power consumption, both due to the undervolting itself and because there is no need to forbid high APCI CPU power saving modes.&lt;br /&gt;
&lt;br /&gt;
==Other solutions==&lt;br /&gt;
&lt;br /&gt;
===Disable UltraBay===&lt;br /&gt;
*Naheed Vora: My {{T41}} (2373-268) started to give high pitch noise ocassionally, when I upgraded to 2.6.11 kernel. I tried to unload lot of modules but finally figured out that disabling bay stops the noise. If you have [[ibm-acpi]], do (need a cleaner solution): {{cmduser|echo eject &amp;gt;/proc/acpi/ibm/bay}} .&lt;br /&gt;
&lt;br /&gt;
===Disable IrDA===&lt;br /&gt;
*Mike Perry: I was able to cure an intermittent high-pitched whine on both my {{X24}} and {{X40}} by disabling the Infrared port.&lt;br /&gt;
&lt;br /&gt;
===Disable the Linuxant Modem Driver===&lt;br /&gt;
*Joern Heissler: I made another experience. I played around with linuxant conexant [[Modem Devices|modem]] drivers. After loading them I got some noise on my {{T42p}}.&lt;br /&gt;
&lt;br /&gt;
===Media Player paused===&lt;br /&gt;
*Eilif Muller: On my {{R52}} the high-pitched noises go away if I load XMMS, play something then pause it.&lt;br /&gt;
*Jacob: On my {{T43}} DGU it goes away if I open mplayerc.exe and press play then pause it. This is the high-pitched noise that only shows up when I'm on battery.&lt;br /&gt;
&lt;br /&gt;
''I'd guess that the above tip works as when xmms or similar is running, it is uncompressing compressed audio/video, which is a processor intensive action.  Keeping this paused means that the app won't 'let go' of the processor, forcing it to stay up and running, which stops it entering the higher powersave modes.''&lt;br /&gt;
&lt;br /&gt;
===Upgrade BIOS===&lt;br /&gt;
On a ThinkPad [[X60s]], [[BIOS_Upgrade|upgrading the BIOS]] to version 1.06 eliminated the high pitch noise when running on battery.&lt;/div&gt;</summary>
		<author><name>Mkarcher</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=CS4239&amp;diff=18771</id>
		<title>CS4239</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=CS4239&amp;diff=18771"/>
		<updated>2006-01-22T22:33:27Z</updated>

		<summary type="html">&lt;p&gt;Mkarcher: Added PnP information&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
{| width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|style=&amp;quot;vertical-align:top&amp;quot; |&lt;br /&gt;
&amp;lt;div style=&amp;quot;margin: 0; margin-right:10px; border: 1px solid #dfdfdf; padding: 0em 1em 1em 1em; background-color:#F8F8FF; align:right;&amp;quot;&amp;gt;&lt;br /&gt;
=== CS4239 ===&lt;br /&gt;
This is a Cirrus Logic Audio controller&lt;br /&gt;
&lt;br /&gt;
Note: This sound chip is paired with a PCI [[CS4610]] audio controller, only one sound driver should be loaded, preferably the PCI driver.&lt;br /&gt;
&lt;br /&gt;
=== Features ===&lt;br /&gt;
* Chipset: CS4239&lt;br /&gt;
* Interface: ISA 16bit&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
|style=&amp;quot;vertical-align:top&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Linux OSS driver ===&lt;br /&gt;
This sound chip is supported by the cs4232 kernel module. Use the following options line when loading this module:&lt;br /&gt;
&lt;br /&gt;
 options cs4232 io=0x530 irq=5 dma=1 dma2=0&lt;br /&gt;
=== Linux ALSA driver ===&lt;br /&gt;
This sound chip is supported by the snd-cs4236 kernel module. Use the following options line when loading this module:&lt;br /&gt;
&lt;br /&gt;
 options snd-cs4236 snd_index=0 snd_port=0x530 snd_cport=0x538 snd_isapnp=0 snd_dma1=1 snd_dma2=0 snd_irq=5&lt;br /&gt;
&lt;br /&gt;
=== PnP issues ===&lt;br /&gt;
This chip is software configurable. In Thinkpads, the BIOS sets up the chip if fast boot is disabled. If fast boot is enabled, the chip is disabled until a PnP driver enables it. As both the OSS and the ALSA module do not support PnP discovering of this chips in thinkpad, a isapnptools like user space configuration approach described in [[CS4239 in PnP mode]] could be used.&lt;br /&gt;
&lt;br /&gt;
=== ThinkPads this chip may be found in ===&lt;br /&gt;
* {{600E}}&lt;br /&gt;
* {{770X}}, {{770Z}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Components]]&lt;/div&gt;</summary>
		<author><name>Mkarcher</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Script_for_configuring_the_CS4239_sound_chip_in_PnP_mode&amp;diff=18769</id>
		<title>Script for configuring the CS4239 sound chip in PnP mode</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Script_for_configuring_the_CS4239_sound_chip_in_PnP_mode&amp;diff=18769"/>
		<updated>2006-01-22T22:32:45Z</updated>

		<summary type="html">&lt;p&gt;Mkarcher: CS4239PnP moved to CS4239 in PnP mode&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;To configure the [[CS4239]] sound chip via PnP, use the following script (Tested on a Thinkpad {{600E}}). It is meant to be used as &amp;lt;tt&amp;gt;install&amp;lt;/tt&amp;gt; script with modprobe. An example modprobe.conf snippet follows.&lt;br /&gt;
&lt;br /&gt;
Save this script as &amp;lt;tt&amp;gt;/usr/local/sbin/soundcard-on&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 #!/bin/bash&lt;br /&gt;
 &lt;br /&gt;
 # Sound-via-pnp-script for Thinkpad 600E and possibly other computers with onboard&lt;br /&gt;
 # CS4239/CS4610 that to not work with the PCI driver and are not recognized by the&lt;br /&gt;
 # PnP code of snd-cs4236&lt;br /&gt;
 &lt;br /&gt;
 # search sound card pnp device&lt;br /&gt;
 &lt;br /&gt;
 for dev in /sys/bus/pnp/devices/*&lt;br /&gt;
 do&lt;br /&gt;
   grep CSC0100 $dev/id &amp;gt; /dev/null &amp;amp;&amp;amp; WSSDEV=$dev&lt;br /&gt;
   grep CSC0110 $dev/id &amp;gt; /dev/null &amp;amp;&amp;amp; CTLDEV=$dev&lt;br /&gt;
 done&lt;br /&gt;
 &lt;br /&gt;
 # activate devices (Thinkpad boots with devices disabled unless &amp;quot;fast boot&amp;quot; is turned off)&lt;br /&gt;
 &lt;br /&gt;
 echo activate &amp;gt; $WSSDEV/resources&lt;br /&gt;
 echo activate &amp;gt; $CTLDEV/resources&lt;br /&gt;
 &lt;br /&gt;
 # parse resource settings&lt;br /&gt;
 &lt;br /&gt;
 { read&lt;br /&gt;
  read bla port1&lt;br /&gt;
  read bla port2&lt;br /&gt;
  read bla port3&lt;br /&gt;
  read bla irq&lt;br /&gt;
  read bla dma1&lt;br /&gt;
  read bla dma2&lt;br /&gt;
  # Hack: with PnPBIOS: ports are: port1: WSS, port2: OPL, port3: sb (unneeded)&lt;br /&gt;
  #       with ACPI-PnP:ports are: port1: OPL, port2: sb, port3: WSS&lt;br /&gt;
  # (ACPI bios seems to be wrong here, the PnP-card-code in snd-cs4236.c uses the&lt;br /&gt;
  #  PnPBIOS port order)&lt;br /&gt;
  # Detect port order using the fixed OPL port as reference&lt;br /&gt;
  if [ ${port2%%-*} = 0x388 ]&lt;br /&gt;
  then&lt;br /&gt;
    # PnPBIOS: usual order&lt;br /&gt;
    port=${port1%%-*}&lt;br /&gt;
    oplport=${port2%%-*}&lt;br /&gt;
  else&lt;br /&gt;
    # ACPI: mixed-up order&lt;br /&gt;
    port=${port3%%-*}&lt;br /&gt;
    oplport=${port1%%-*}&lt;br /&gt;
  fi&lt;br /&gt;
  } &amp;lt; $WSSDEV/resources&lt;br /&gt;
 &lt;br /&gt;
 { read&lt;br /&gt;
  read bla port1&lt;br /&gt;
  cport=${port1%%-*}&lt;br /&gt;
 } &amp;lt; $CTLDEV/resources&lt;br /&gt;
 &lt;br /&gt;
 # load the module&lt;br /&gt;
 &lt;br /&gt;
 modprobe --ignore-install snd-cs4236 port=$port cport=$cport fm_port=$oplport irq=$irq dma1=$dma1 dma2=$dma2 isapnp=0 index=0 &amp;amp;&amp;amp; /lib/alsa/modprobe-post-install snd-cs4236&lt;br /&gt;
&lt;br /&gt;
Use these lines in &amp;lt;tt&amp;gt;modprobe.conf&amp;lt;/tt&amp;gt; or &amp;lt;tt&amp;gt;/etc/modprobe.d/cs4236pnp&amp;lt;/tt&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 # Kill any attempts from hotplug or discover to load the PCI driver&lt;br /&gt;
 install snd-cs46xx /bin/true&lt;br /&gt;
 # Set up PnP before loading ISA driver&lt;br /&gt;
 install snd-cs4236 /usr/local/bin/soundcard-on&lt;br /&gt;
&lt;br /&gt;
--[[User:Mkarcher|Mkarcher]] 23:20, 22 January 2006 (CET)&lt;br /&gt;
[[Category:Scripts]]&lt;/div&gt;</summary>
		<author><name>Mkarcher</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Script_for_configuring_the_CS4239_sound_chip_in_PnP_mode&amp;diff=18768</id>
		<title>Script for configuring the CS4239 sound chip in PnP mode</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Script_for_configuring_the_CS4239_sound_chip_in_PnP_mode&amp;diff=18768"/>
		<updated>2006-01-22T22:27:31Z</updated>

		<summary type="html">&lt;p&gt;Mkarcher: Link to CS4239&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;To configure the [[CS4239]] sound chip via PnP, use the following script (Tested on a Thinkpad {{600E}}). It is meant to be used as &amp;lt;tt&amp;gt;install&amp;lt;/tt&amp;gt; script with modprobe. An example modprobe.conf snippet follows.&lt;br /&gt;
&lt;br /&gt;
Save this script as &amp;lt;tt&amp;gt;/usr/local/sbin/soundcard-on&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 #!/bin/bash&lt;br /&gt;
 &lt;br /&gt;
 # Sound-via-pnp-script for Thinkpad 600E and possibly other computers with onboard&lt;br /&gt;
 # CS4239/CS4610 that to not work with the PCI driver and are not recognized by the&lt;br /&gt;
 # PnP code of snd-cs4236&lt;br /&gt;
 &lt;br /&gt;
 # search sound card pnp device&lt;br /&gt;
 &lt;br /&gt;
 for dev in /sys/bus/pnp/devices/*&lt;br /&gt;
 do&lt;br /&gt;
   grep CSC0100 $dev/id &amp;gt; /dev/null &amp;amp;&amp;amp; WSSDEV=$dev&lt;br /&gt;
   grep CSC0110 $dev/id &amp;gt; /dev/null &amp;amp;&amp;amp; CTLDEV=$dev&lt;br /&gt;
 done&lt;br /&gt;
 &lt;br /&gt;
 # activate devices (Thinkpad boots with devices disabled unless &amp;quot;fast boot&amp;quot; is turned off)&lt;br /&gt;
 &lt;br /&gt;
 echo activate &amp;gt; $WSSDEV/resources&lt;br /&gt;
 echo activate &amp;gt; $CTLDEV/resources&lt;br /&gt;
 &lt;br /&gt;
 # parse resource settings&lt;br /&gt;
 &lt;br /&gt;
 { read&lt;br /&gt;
  read bla port1&lt;br /&gt;
  read bla port2&lt;br /&gt;
  read bla port3&lt;br /&gt;
  read bla irq&lt;br /&gt;
  read bla dma1&lt;br /&gt;
  read bla dma2&lt;br /&gt;
  # Hack: with PnPBIOS: ports are: port1: WSS, port2: OPL, port3: sb (unneeded)&lt;br /&gt;
  #       with ACPI-PnP:ports are: port1: OPL, port2: sb, port3: WSS&lt;br /&gt;
  # (ACPI bios seems to be wrong here, the PnP-card-code in snd-cs4236.c uses the&lt;br /&gt;
  #  PnPBIOS port order)&lt;br /&gt;
  # Detect port order using the fixed OPL port as reference&lt;br /&gt;
  if [ ${port2%%-*} = 0x388 ]&lt;br /&gt;
  then&lt;br /&gt;
    # PnPBIOS: usual order&lt;br /&gt;
    port=${port1%%-*}&lt;br /&gt;
    oplport=${port2%%-*}&lt;br /&gt;
  else&lt;br /&gt;
    # ACPI: mixed-up order&lt;br /&gt;
    port=${port3%%-*}&lt;br /&gt;
    oplport=${port1%%-*}&lt;br /&gt;
  fi&lt;br /&gt;
  } &amp;lt; $WSSDEV/resources&lt;br /&gt;
 &lt;br /&gt;
 { read&lt;br /&gt;
  read bla port1&lt;br /&gt;
  cport=${port1%%-*}&lt;br /&gt;
 } &amp;lt; $CTLDEV/resources&lt;br /&gt;
 &lt;br /&gt;
 # load the module&lt;br /&gt;
 &lt;br /&gt;
 modprobe --ignore-install snd-cs4236 port=$port cport=$cport fm_port=$oplport irq=$irq dma1=$dma1 dma2=$dma2 isapnp=0 index=0 &amp;amp;&amp;amp; /lib/alsa/modprobe-post-install snd-cs4236&lt;br /&gt;
&lt;br /&gt;
Use these lines in &amp;lt;tt&amp;gt;modprobe.conf&amp;lt;/tt&amp;gt; or &amp;lt;tt&amp;gt;/etc/modprobe.d/cs4236pnp&amp;lt;/tt&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 # Kill any attempts from hotplug or discover to load the PCI driver&lt;br /&gt;
 install snd-cs46xx /bin/true&lt;br /&gt;
 # Set up PnP before loading ISA driver&lt;br /&gt;
 install snd-cs4236 /usr/local/bin/soundcard-on&lt;br /&gt;
&lt;br /&gt;
--[[User:Mkarcher|Mkarcher]] 23:20, 22 January 2006 (CET)&lt;br /&gt;
[[Category:Scripts]]&lt;/div&gt;</summary>
		<author><name>Mkarcher</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Script_for_configuring_the_CS4239_sound_chip_in_PnP_mode&amp;diff=18766</id>
		<title>Script for configuring the CS4239 sound chip in PnP mode</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Script_for_configuring_the_CS4239_sound_chip_in_PnP_mode&amp;diff=18766"/>
		<updated>2006-01-22T22:20:10Z</updated>

		<summary type="html">&lt;p&gt;Mkarcher: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;To configure the CS4239 sound chip via PnP, use the following script. It is meant to be used&lt;br /&gt;
as &amp;lt;tt&amp;gt;install&amp;lt;/tt&amp;gt; script with modprobe. An example modprobe.conf snippet follows.&lt;br /&gt;
&lt;br /&gt;
Save this script as &amp;lt;tt&amp;gt;/usr/local/sbin/soundcard-on&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 #!/bin/bash&lt;br /&gt;
 &lt;br /&gt;
 # Sound-via-pnp-script for Thinkpad 600E and possibly other computers with onboard&lt;br /&gt;
 # CS4239/CS4610 that to not work with the PCI driver and are not recognized by the&lt;br /&gt;
 # PnP code of snd-cs4236&lt;br /&gt;
 &lt;br /&gt;
 # search sound card pnp device&lt;br /&gt;
 &lt;br /&gt;
 for dev in /sys/bus/pnp/devices/*&lt;br /&gt;
 do&lt;br /&gt;
   grep CSC0100 $dev/id &amp;gt; /dev/null &amp;amp;&amp;amp; WSSDEV=$dev&lt;br /&gt;
   grep CSC0110 $dev/id &amp;gt; /dev/null &amp;amp;&amp;amp; CTLDEV=$dev&lt;br /&gt;
 done&lt;br /&gt;
 &lt;br /&gt;
 # activate devices (Thinkpad boots with devices disabled unless &amp;quot;fast boot&amp;quot; is turned off)&lt;br /&gt;
 &lt;br /&gt;
 echo activate &amp;gt; $WSSDEV/resources&lt;br /&gt;
 echo activate &amp;gt; $CTLDEV/resources&lt;br /&gt;
 &lt;br /&gt;
 # parse resource settings&lt;br /&gt;
 &lt;br /&gt;
 { read&lt;br /&gt;
  read bla port1&lt;br /&gt;
  read bla port2&lt;br /&gt;
  read bla port3&lt;br /&gt;
  read bla irq&lt;br /&gt;
  read bla dma1&lt;br /&gt;
  read bla dma2&lt;br /&gt;
  # Hack: with PnPBIOS: ports are: port1: WSS, port2: OPL, port3: sb (unneeded)&lt;br /&gt;
  #       with ACPI-PnP:ports are: port1: OPL, port2: sb, port3: WSS&lt;br /&gt;
  # (ACPI bios seems to be wrong here, the PnP-card-code in snd-cs4236.c uses the&lt;br /&gt;
  #  PnPBIOS port order)&lt;br /&gt;
  # Detect port order using the fixed OPL port as reference&lt;br /&gt;
  if [ ${port2%%-*} = 0x388 ]&lt;br /&gt;
  then&lt;br /&gt;
    # PnPBIOS: usual order&lt;br /&gt;
    port=${port1%%-*}&lt;br /&gt;
    oplport=${port2%%-*}&lt;br /&gt;
  else&lt;br /&gt;
    # ACPI: mixed-up order&lt;br /&gt;
    port=${port3%%-*}&lt;br /&gt;
    oplport=${port1%%-*}&lt;br /&gt;
  fi&lt;br /&gt;
  } &amp;lt; $WSSDEV/resources&lt;br /&gt;
 &lt;br /&gt;
 { read&lt;br /&gt;
  read bla port1&lt;br /&gt;
  cport=${port1%%-*}&lt;br /&gt;
 } &amp;lt; $CTLDEV/resources&lt;br /&gt;
 &lt;br /&gt;
 # load the module&lt;br /&gt;
 &lt;br /&gt;
 modprobe --ignore-install snd-cs4236 port=$port cport=$cport fm_port=$oplport irq=$irq dma1=$dma1 dma2=$dma2 isapnp=0 index=0 &amp;amp;&amp;amp; /lib/alsa/modprobe-post-install snd-cs4236&lt;br /&gt;
&lt;br /&gt;
Use these lines in &amp;lt;tt&amp;gt;modprobe.conf&amp;lt;/tt&amp;gt; or &amp;lt;tt&amp;gt;/etc/modprobe.d/cs4236pnp&amp;lt;/tt&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 # Kill any attempts from hotplug or discover to load the PCI driver&lt;br /&gt;
 install snd-cs46xx /bin/true&lt;br /&gt;
 # Set up PnP before loading ISA driver&lt;br /&gt;
 install snd-cs4236 /usr/local/bin/soundcard-on&lt;br /&gt;
&lt;br /&gt;
--[[User:Mkarcher|Mkarcher]] 23:20, 22 January 2006 (CET)&lt;/div&gt;</summary>
		<author><name>Mkarcher</name></author>
		
	</entry>
</feed>