<?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=Mozz</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=Mozz"/>
	<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/wiki/Special:Contributions/Mozz"/>
	<updated>2026-04-16T23:49:29Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.31.12</generator>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Problem_with_high_pitch_noises&amp;diff=36065</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=36065"/>
		<updated>2008-01-18T12:15:23Z</updated>

		<summary type="html">&lt;p&gt;Mozz: /* Kernel BIOS options */&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;
*{{A21m}}&lt;br /&gt;
**2628&lt;br /&gt;
*{{T41p}}&lt;br /&gt;
**2373-GHG&lt;br /&gt;
*{{T60}}&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;
Noise level varies from inaudible to clearly audible, screeching sound, or sometimes beeping (when wifi is on). &lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
*{{A21m}}&lt;br /&gt;
**2628&lt;br /&gt;
*{{R51}}&lt;br /&gt;
**EHG-1829&lt;br /&gt;
*{{R52}}&lt;br /&gt;
**1858-A11&lt;br /&gt;
**1846-B5G&lt;br /&gt;
*{{R60}}&lt;br /&gt;
**9461-DXG&lt;br /&gt;
**9462-77G&lt;br /&gt;
**9456-HTG&lt;br /&gt;
**9461-DXG&lt;br /&gt;
*{{R60e}}&lt;br /&gt;
**0657-A9G&lt;br /&gt;
**0657-3LG&lt;br /&gt;
*{{T43}}&lt;br /&gt;
**2686-DGU&lt;br /&gt;
**1871-4AG&lt;br /&gt;
*{{T60}}&lt;br /&gt;
**2007-72U&lt;br /&gt;
**1951-24G&lt;br /&gt;
**1951-24G&lt;br /&gt;
**2007-49G&lt;br /&gt;
**2007-FUG&lt;br /&gt;
*{{T60p}}&lt;br /&gt;
**2007-FBG&lt;br /&gt;
*{{T61}}&lt;br /&gt;
**7659-12G&lt;br /&gt;
*{{x60}}&lt;br /&gt;
*{{x31}}&lt;br /&gt;
**2673-CBU&lt;br /&gt;
*{{Z61m}}&lt;br /&gt;
**9450-3HG&lt;br /&gt;
**9452-128&lt;br /&gt;
**9452-W5Q&lt;br /&gt;
*{{Z61t}}&lt;br /&gt;
**9440-2QU&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;
*{{Z60m}}, {{Z60t}}&lt;br /&gt;
*{{T40}}&lt;br /&gt;
*{{T43}}&lt;br /&gt;
**2687-DDU&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| Constant, but is louder when Tablet Pen is near screen, on battery power&lt;br /&gt;
| high pitch noise, screeching sounds *solved by &amp;quot;Media player paused&amp;quot; (see below) and also by BIOS versions 1.05 and later.&lt;br /&gt;
|&lt;br /&gt;
*{{X60_Tablet}}&lt;br /&gt;
**6366-4DU&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;
* '''Gigabit Ethernet processor:''' In some models (e.g., {{T43}}) high ethernet activity causes a high pitch noise.&lt;br /&gt;
&lt;br /&gt;
* '''Screen brightness:''' on an {{X31}}, a hissing sound is started whenever screen brightness is not full.&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;
By default, the kernel supports up to eight ACPI CPU power saving states (C-states), called C1 through C8 (but the ThinkPad BIOS and hardware often offers (or remaps them to) only C1 to C4). Often only the extreme power saving modes C4 or C3 produce the noise, so the noise can be stopped by instructing the Linux ACPI code to use only lower modes. This has a cost, though: disabling C3 and C4 will make the CPU consume more power, and the battery last sooner. &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;
** On Gentoo: Configure your Thinkpad as described in the [http://www.gentoo.org/doc/en/power-management-guide.xml Power Management Guide].  Then as root create the files {{path|/etc/init.d/limit-sleep-states}} and {{path|/etc/conf.d/limit-sleep-states}} as below. After that just issue the command {{cmdroot|rc-update add limit-sleep-states default}} to limit the sleep states only when running on AC power, or {{cmdroot|rc-update add limit-sleep-states default battery}} to always limit the sleep states.&lt;br /&gt;
 cat &amp;lt;&amp;lt;EOF &amp;gt; /etc/init.d/limit-sleep-states&lt;br /&gt;
 #!/sbin/runscript&lt;br /&gt;
 &lt;br /&gt;
 depend() {&lt;br /&gt;
 	need acpid&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 start() {&lt;br /&gt;
 	ebegin &amp;quot;Limiting CPU sleep state to C${LIMIT_CSTATE}&amp;quot;&lt;br /&gt;
 	echo $LIMIT_CSTATE &amp;gt; /sys/module/processor/parameters/max_cstate&lt;br /&gt;
 	eend $?&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 stop() {&lt;br /&gt;
        ebegin &amp;quot;Removing CPU sleep state limit&amp;quot;&lt;br /&gt;
        echo $REMOVE_CSTATE &amp;gt; /sys/module/processor/parameters/max_cstate&lt;br /&gt;
        eend $?&lt;br /&gt;
 }&lt;br /&gt;
 EOF&lt;br /&gt;
&lt;br /&gt;
 cat &amp;lt;&amp;lt;EOF &amp;gt; /etc/conf.d/limit-sleep-states&lt;br /&gt;
 # limit CPU sleep state to the following value (adjust accordingly)&lt;br /&gt;
 LIMIT_CSTATE=3&lt;br /&gt;
 # some value which is higher than all available sleep states&lt;br /&gt;
 REMOVE_CSTATE=8&lt;br /&gt;
 EOF&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}}, {{X60}}, {{T60}}, {{T61}}, {{Z61t}} 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 is the [[How to measure power consumption|measured power consumption]] 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;
One can control how often Linux tries to enter the C3 state by using the {{bootparm|processor.bm_history|&amp;lt;bitmask&amp;gt;}} parameter on kernels with a scheduler frequency below 800Hz (and if you have noise problems, you really should not be running the kernel at 1000Hz...).  Setting {{bootparm|processor.bm_history|0xFFFFFFFF}} will cause C3 to be entered less often.  This will waste more power as the CPU won't do C3 or C4 as often, but at least it doesn't forbid C3 and C4 permanently, unlike {{bootparm|max_cstate|2}}.&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 the 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 should be somewhere under Config/Power - look for &amp;quot;CPU Power Management&amp;quot;, the default being automatic.  Set &amp;quot;CPU Power Management&amp;quot; to &amp;quot;Disabled&amp;quot; (This worked on a ThinkPad {{T43}}, {{T21}}, {{X60s}}, {{T60}} and {{Z61m}}). However, this also affects power consumption when the CPU is idle, it's similar to disabling the C4/C3 ACPI CPU power state. For example, on a Z61m 9450-3HG, a full charged battery with power management enabled in the BIOS provides the notebook with power for about 3.5h, if disabled, the battery-lifetime is only about 2h.&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;
*Kaspar Schleiser: On my {{T23}} the noise is less loud when setting max_cstate to 2, but to completely silence it, I have to set it to &amp;quot;1&amp;quot;. Is that the same as removing the &amp;quot;processor&amp;quot;-module? &amp;quot;cat /proc/acpi/battery/BAT0/state&amp;quot; does not show increased power drain.&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;
* [[User:sklnd|sklnd]]: As of 2.6.21, enabling a tickless kernel (CONFIG_NO_HZ) seems to fix the sound issue on the X60. This also has the added benefit of causing the kernel to wake up less, which will improve battery life.&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;
===Kernel BIOS options===&lt;br /&gt;
&lt;br /&gt;
Adding acpi_sleep=s3_bios and pci=bios as boot parameters significantly reduced the pitch noise on a T61. Seems to be the best solution so far, without losing battery capacity. If ondemand governor is enabled as well, the noise is almost gone.--[[User:Mozz|Mozz]] 13:14, 18 January 2008 (CET)&lt;br /&gt;
&lt;br /&gt;
==Solutions for screen brightness related sounds==&lt;br /&gt;
&lt;br /&gt;
===Disable BIOS brightness control===&lt;br /&gt;
&lt;br /&gt;
The sound starts when on batteries as the BIOS automatically reduces screen brightness. To disable this, simply switch Config&amp;gt;Display&amp;gt;Brightness from&lt;br /&gt;
Normal to High. See also [[User:Piccobello/Hissing sound on battery|here]].&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;
*butcom: On my {{X60 Tablet}}, this tip works in Windows as well with Media Player Classic or Windows Media Player.  Just open either program, start playing any music file and pause it and the screeching noise stops.&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;
===nice yes===&lt;br /&gt;
&lt;br /&gt;
Run the command: &lt;br /&gt;
 {{cmduser|nice yes &amp;gt; /dev/null}}.&lt;br /&gt;
&lt;br /&gt;
This is a good way to test whether the processor is causing the interference, since it forces the CPU to stay at full power. Of course, this will make your system get warm, and probably turn on the fan, as well as eating power.&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;br /&gt;
&lt;br /&gt;
On a ThinkPad {{R60}}, [[BIOS_Upgrade|upgrading the BIOS]] to version 2.19 eliminated the voice also.&lt;br /&gt;
&lt;br /&gt;
===Disable USB===&lt;br /&gt;
On one {{T43}} and one {{X60}}, (partially) disabling USB using {{cmdroot|rmmod uhci_hcd}} significantly reduced the noise. Also, on a {{T60}} this trick worked well, doing ''rmmod/modprobe'' twice wiped the noise permanently.&lt;br /&gt;
&lt;br /&gt;
This is likely a CPU-induced noise case, as disabling USB UHCI will reduce a lot the amount of busmaster activity while the computer is idle, and thus has a direct effect on the need for ACPI C-state transitions from C3/C4 to C2 or lower states in a {{T43}} or {{X60}}.&lt;br /&gt;
&lt;br /&gt;
===Suspend USB===&lt;br /&gt;
*Stefan Ott: On my X41, the noise seems to have stopped since I enabled &amp;quot;USB selective suspend/resume and wakeup&amp;quot; (CONFIG_USB_SUSPEND).&lt;br /&gt;
*babrodtk: This approach worked with an R60 as well.&lt;/div&gt;</summary>
		<author><name>Mozz</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Problem_with_high_pitch_noises&amp;diff=36064</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=36064"/>
		<updated>2008-01-18T12:14:55Z</updated>

		<summary type="html">&lt;p&gt;Mozz: /* Solutions for CPU-triggered 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;
*{{A21m}}&lt;br /&gt;
**2628&lt;br /&gt;
*{{T41p}}&lt;br /&gt;
**2373-GHG&lt;br /&gt;
*{{T60}}&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;
Noise level varies from inaudible to clearly audible, screeching sound, or sometimes beeping (when wifi is on). &lt;br /&gt;
| style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
*{{A21m}}&lt;br /&gt;
**2628&lt;br /&gt;
*{{R51}}&lt;br /&gt;
**EHG-1829&lt;br /&gt;
*{{R52}}&lt;br /&gt;
**1858-A11&lt;br /&gt;
**1846-B5G&lt;br /&gt;
*{{R60}}&lt;br /&gt;
**9461-DXG&lt;br /&gt;
**9462-77G&lt;br /&gt;
**9456-HTG&lt;br /&gt;
**9461-DXG&lt;br /&gt;
*{{R60e}}&lt;br /&gt;
**0657-A9G&lt;br /&gt;
**0657-3LG&lt;br /&gt;
*{{T43}}&lt;br /&gt;
**2686-DGU&lt;br /&gt;
**1871-4AG&lt;br /&gt;
*{{T60}}&lt;br /&gt;
**2007-72U&lt;br /&gt;
**1951-24G&lt;br /&gt;
**1951-24G&lt;br /&gt;
**2007-49G&lt;br /&gt;
**2007-FUG&lt;br /&gt;
*{{T60p}}&lt;br /&gt;
**2007-FBG&lt;br /&gt;
*{{T61}}&lt;br /&gt;
**7659-12G&lt;br /&gt;
*{{x60}}&lt;br /&gt;
*{{x31}}&lt;br /&gt;
**2673-CBU&lt;br /&gt;
*{{Z61m}}&lt;br /&gt;
**9450-3HG&lt;br /&gt;
**9452-128&lt;br /&gt;
**9452-W5Q&lt;br /&gt;
*{{Z61t}}&lt;br /&gt;
**9440-2QU&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;
*{{Z60m}}, {{Z60t}}&lt;br /&gt;
*{{T40}}&lt;br /&gt;
*{{T43}}&lt;br /&gt;
**2687-DDU&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| Constant, but is louder when Tablet Pen is near screen, on battery power&lt;br /&gt;
| high pitch noise, screeching sounds *solved by &amp;quot;Media player paused&amp;quot; (see below) and also by BIOS versions 1.05 and later.&lt;br /&gt;
|&lt;br /&gt;
*{{X60_Tablet}}&lt;br /&gt;
**6366-4DU&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;
* '''Gigabit Ethernet processor:''' In some models (e.g., {{T43}}) high ethernet activity causes a high pitch noise.&lt;br /&gt;
&lt;br /&gt;
* '''Screen brightness:''' on an {{X31}}, a hissing sound is started whenever screen brightness is not full.&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;
By default, the kernel supports up to eight ACPI CPU power saving states (C-states), called C1 through C8 (but the ThinkPad BIOS and hardware often offers (or remaps them to) only C1 to C4). Often only the extreme power saving modes C4 or C3 produce the noise, so the noise can be stopped by instructing the Linux ACPI code to use only lower modes. This has a cost, though: disabling C3 and C4 will make the CPU consume more power, and the battery last sooner. &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;
** On Gentoo: Configure your Thinkpad as described in the [http://www.gentoo.org/doc/en/power-management-guide.xml Power Management Guide].  Then as root create the files {{path|/etc/init.d/limit-sleep-states}} and {{path|/etc/conf.d/limit-sleep-states}} as below. After that just issue the command {{cmdroot|rc-update add limit-sleep-states default}} to limit the sleep states only when running on AC power, or {{cmdroot|rc-update add limit-sleep-states default battery}} to always limit the sleep states.&lt;br /&gt;
 cat &amp;lt;&amp;lt;EOF &amp;gt; /etc/init.d/limit-sleep-states&lt;br /&gt;
 #!/sbin/runscript&lt;br /&gt;
 &lt;br /&gt;
 depend() {&lt;br /&gt;
 	need acpid&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 start() {&lt;br /&gt;
 	ebegin &amp;quot;Limiting CPU sleep state to C${LIMIT_CSTATE}&amp;quot;&lt;br /&gt;
 	echo $LIMIT_CSTATE &amp;gt; /sys/module/processor/parameters/max_cstate&lt;br /&gt;
 	eend $?&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 stop() {&lt;br /&gt;
        ebegin &amp;quot;Removing CPU sleep state limit&amp;quot;&lt;br /&gt;
        echo $REMOVE_CSTATE &amp;gt; /sys/module/processor/parameters/max_cstate&lt;br /&gt;
        eend $?&lt;br /&gt;
 }&lt;br /&gt;
 EOF&lt;br /&gt;
&lt;br /&gt;
 cat &amp;lt;&amp;lt;EOF &amp;gt; /etc/conf.d/limit-sleep-states&lt;br /&gt;
 # limit CPU sleep state to the following value (adjust accordingly)&lt;br /&gt;
 LIMIT_CSTATE=3&lt;br /&gt;
 # some value which is higher than all available sleep states&lt;br /&gt;
 REMOVE_CSTATE=8&lt;br /&gt;
 EOF&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}}, {{X60}}, {{T60}}, {{T61}}, {{Z61t}} 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 is the [[How to measure power consumption|measured power consumption]] 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;
One can control how often Linux tries to enter the C3 state by using the {{bootparm|processor.bm_history|&amp;lt;bitmask&amp;gt;}} parameter on kernels with a scheduler frequency below 800Hz (and if you have noise problems, you really should not be running the kernel at 1000Hz...).  Setting {{bootparm|processor.bm_history|0xFFFFFFFF}} will cause C3 to be entered less often.  This will waste more power as the CPU won't do C3 or C4 as often, but at least it doesn't forbid C3 and C4 permanently, unlike {{bootparm|max_cstate|2}}.&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 the 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 should be somewhere under Config/Power - look for &amp;quot;CPU Power Management&amp;quot;, the default being automatic.  Set &amp;quot;CPU Power Management&amp;quot; to &amp;quot;Disabled&amp;quot; (This worked on a ThinkPad {{T43}}, {{T21}}, {{X60s}}, {{T60}} and {{Z61m}}). However, this also affects power consumption when the CPU is idle, it's similar to disabling the C4/C3 ACPI CPU power state. For example, on a Z61m 9450-3HG, a full charged battery with power management enabled in the BIOS provides the notebook with power for about 3.5h, if disabled, the battery-lifetime is only about 2h.&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;
*Kaspar Schleiser: On my {{T23}} the noise is less loud when setting max_cstate to 2, but to completely silence it, I have to set it to &amp;quot;1&amp;quot;. Is that the same as removing the &amp;quot;processor&amp;quot;-module? &amp;quot;cat /proc/acpi/battery/BAT0/state&amp;quot; does not show increased power drain.&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;
* [[User:sklnd|sklnd]]: As of 2.6.21, enabling a tickless kernel (CONFIG_NO_HZ) seems to fix the sound issue on the X60. This also has the added benefit of causing the kernel to wake up less, which will improve battery life.&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;
===Kernel BIOS options===&lt;br /&gt;
&lt;br /&gt;
Adding acpi_sleep=s3_bios and pci=bios significantly reduced the pitch noise on a T61. Seems to be the best solution so far, without losing battery capacity. If ondemand governor is enabled as well, the noise is almost gone.--[[User:Mozz|Mozz]] 13:14, 18 January 2008 (CET)&lt;br /&gt;
&lt;br /&gt;
==Solutions for screen brightness related sounds==&lt;br /&gt;
&lt;br /&gt;
===Disable BIOS brightness control===&lt;br /&gt;
&lt;br /&gt;
The sound starts when on batteries as the BIOS automatically reduces screen brightness. To disable this, simply switch Config&amp;gt;Display&amp;gt;Brightness from&lt;br /&gt;
Normal to High. See also [[User:Piccobello/Hissing sound on battery|here]].&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;
*butcom: On my {{X60 Tablet}}, this tip works in Windows as well with Media Player Classic or Windows Media Player.  Just open either program, start playing any music file and pause it and the screeching noise stops.&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;
===nice yes===&lt;br /&gt;
&lt;br /&gt;
Run the command: &lt;br /&gt;
 {{cmduser|nice yes &amp;gt; /dev/null}}.&lt;br /&gt;
&lt;br /&gt;
This is a good way to test whether the processor is causing the interference, since it forces the CPU to stay at full power. Of course, this will make your system get warm, and probably turn on the fan, as well as eating power.&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;br /&gt;
&lt;br /&gt;
On a ThinkPad {{R60}}, [[BIOS_Upgrade|upgrading the BIOS]] to version 2.19 eliminated the voice also.&lt;br /&gt;
&lt;br /&gt;
===Disable USB===&lt;br /&gt;
On one {{T43}} and one {{X60}}, (partially) disabling USB using {{cmdroot|rmmod uhci_hcd}} significantly reduced the noise. Also, on a {{T60}} this trick worked well, doing ''rmmod/modprobe'' twice wiped the noise permanently.&lt;br /&gt;
&lt;br /&gt;
This is likely a CPU-induced noise case, as disabling USB UHCI will reduce a lot the amount of busmaster activity while the computer is idle, and thus has a direct effect on the need for ACPI C-state transitions from C3/C4 to C2 or lower states in a {{T43}} or {{X60}}.&lt;br /&gt;
&lt;br /&gt;
===Suspend USB===&lt;br /&gt;
*Stefan Ott: On my X41, the noise seems to have stopped since I enabled &amp;quot;USB selective suspend/resume and wakeup&amp;quot; (CONFIG_USB_SUSPEND).&lt;br /&gt;
*babrodtk: This approach worked with an R60 as well.&lt;/div&gt;</summary>
		<author><name>Mozz</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=NVIDIA_Quadro_NVS_140M&amp;diff=34915</id>
		<title>NVIDIA Quadro NVS 140M</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=NVIDIA_Quadro_NVS_140M&amp;diff=34915"/>
		<updated>2007-11-27T15:01:57Z</updated>

		<summary type="html">&lt;p&gt;Mozz: /* LCD Backlight Brightness Control on T61/R61 */&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;
=== NVIDIA Quadro NVS 140M ===&lt;br /&gt;
&lt;br /&gt;
The NVIDIA Quadro NVS 140M is a mobile video card with a G86 core and either 128 MB or 256 MB graphics memory.&lt;br /&gt;
&lt;br /&gt;
=== Features ===&lt;br /&gt;
&lt;br /&gt;
* Chipset: nVidia Quadro NVS 140M&lt;br /&gt;
* PCI ID:&lt;br /&gt;
** 01:00.0 VGA compatible controller: nVidia Corporation Unknown device 0429 (rev a1) (prog-if 00 [VGA])&lt;br /&gt;
*** Subsystem: Lenovo Unknown device 20d8&lt;br /&gt;
*** Flags: bus master, fast devsel, latency 0, IRQ 169&lt;br /&gt;
*** Memory at d6000000 (32-bit, non-prefetchable) [size=16M]&lt;br /&gt;
*** Memory at e0000000 (64-bit, prefetchable) [size=256M]&lt;br /&gt;
*** Memory at d4000000 (64-bit, non-prefetchable) [size=32M]&lt;br /&gt;
*** I/O ports at 2000 [size=128]&lt;br /&gt;
*** Capabilities: [60] Power Management version 2&lt;br /&gt;
*** Capabilities: [68] Message Signalled Interrupts: 64bit+ Queue=0/0 Enable-&lt;br /&gt;
*** Capabilities: [78] Express Endpoint IRQ 0&lt;br /&gt;
*** Capabilities: [100] Virtual Channel&lt;br /&gt;
*** Capabilities: [128] Power Budgeting&lt;br /&gt;
*** Capabilities: [600] Unknown (11)&lt;br /&gt;
* PCI Express 16&amp;amp;times;&lt;br /&gt;
* 128 or 256 MB video memory&lt;br /&gt;
&lt;br /&gt;
=== Linux X.Org driver ===&lt;br /&gt;
&lt;br /&gt;
Default X.Org NVidia driver, called &amp;quot;nv&amp;quot; works.&lt;br /&gt;
&lt;br /&gt;
=== NVIDIA proprietary driver ===&lt;br /&gt;
&lt;br /&gt;
Support for Quadro NVS 140M has been introduced in the NVIDIA Linux unified driver version 100.14.09 (released on 8 June 2007). For the latest drivers go to the [http://www.nvidia.com/object/unix.html NVIDIA Unix Drivers page]. Note that NVIDIA proprietary drivers do not work with a Xen virtualized kernel.&lt;br /&gt;
&lt;br /&gt;
==== CUDA ====&lt;br /&gt;
&lt;br /&gt;
Since it has a G86 core, [http://developer.nvidia.com/object/cuda.html NVidia CUDA] works on this video card, even though not being listed in the CUDA manuals. Running very large problems (like the SDK examples) however might fail by running out of the relatively small graphics memory.&lt;br /&gt;
&lt;br /&gt;
=== LCD Backlight Brightness Control on T61/R61 ===&lt;br /&gt;
&lt;br /&gt;
There has been an issue with Brightness Control on T61/R61s. This seems to be fixed with the 169.04 BETA drivers from Nvidia. You can find them i.e. here [http://www.nvidia.com/object/linux_display_ia32_169.04.html 169.04 BETA Driver]. You might also need the latest BIOS ([[BIOS_Upgrade_Downloads]] 1.26) as well as the latest version of [[Ibm-acpi]] (thinkpad-acpi, V0.18).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the nvidia module is loaded with the argument NVreg_EnableBrightnessControl=1, one can switch to a virtual console, change the lcd brightness level there, and have that level preserved after switching back to the X session. On a {{T61}}, this was tested with the acpi video driver included in the vanilla Linux 2.6.21-6 kernel and on an {{R61}} with {{OpenSUSE}} 10.2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Components]]&lt;/div&gt;</summary>
		<author><name>Mozz</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=NVIDIA_Quadro_NVS_140M&amp;diff=34914</id>
		<title>NVIDIA Quadro NVS 140M</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=NVIDIA_Quadro_NVS_140M&amp;diff=34914"/>
		<updated>2007-11-27T15:01:14Z</updated>

		<summary type="html">&lt;p&gt;Mozz: &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;
=== NVIDIA Quadro NVS 140M ===&lt;br /&gt;
&lt;br /&gt;
The NVIDIA Quadro NVS 140M is a mobile video card with a G86 core and either 128 MB or 256 MB graphics memory.&lt;br /&gt;
&lt;br /&gt;
=== Features ===&lt;br /&gt;
&lt;br /&gt;
* Chipset: nVidia Quadro NVS 140M&lt;br /&gt;
* PCI ID:&lt;br /&gt;
** 01:00.0 VGA compatible controller: nVidia Corporation Unknown device 0429 (rev a1) (prog-if 00 [VGA])&lt;br /&gt;
*** Subsystem: Lenovo Unknown device 20d8&lt;br /&gt;
*** Flags: bus master, fast devsel, latency 0, IRQ 169&lt;br /&gt;
*** Memory at d6000000 (32-bit, non-prefetchable) [size=16M]&lt;br /&gt;
*** Memory at e0000000 (64-bit, prefetchable) [size=256M]&lt;br /&gt;
*** Memory at d4000000 (64-bit, non-prefetchable) [size=32M]&lt;br /&gt;
*** I/O ports at 2000 [size=128]&lt;br /&gt;
*** Capabilities: [60] Power Management version 2&lt;br /&gt;
*** Capabilities: [68] Message Signalled Interrupts: 64bit+ Queue=0/0 Enable-&lt;br /&gt;
*** Capabilities: [78] Express Endpoint IRQ 0&lt;br /&gt;
*** Capabilities: [100] Virtual Channel&lt;br /&gt;
*** Capabilities: [128] Power Budgeting&lt;br /&gt;
*** Capabilities: [600] Unknown (11)&lt;br /&gt;
* PCI Express 16&amp;amp;times;&lt;br /&gt;
* 128 or 256 MB video memory&lt;br /&gt;
&lt;br /&gt;
=== Linux X.Org driver ===&lt;br /&gt;
&lt;br /&gt;
Default X.Org NVidia driver, called &amp;quot;nv&amp;quot; works.&lt;br /&gt;
&lt;br /&gt;
=== NVIDIA proprietary driver ===&lt;br /&gt;
&lt;br /&gt;
Support for Quadro NVS 140M has been introduced in the NVIDIA Linux unified driver version 100.14.09 (released on 8 June 2007). For the latest drivers go to the [http://www.nvidia.com/object/unix.html NVIDIA Unix Drivers page]. Note that NVIDIA proprietary drivers do not work with a Xen virtualized kernel.&lt;br /&gt;
&lt;br /&gt;
==== CUDA ====&lt;br /&gt;
&lt;br /&gt;
Since it has a G86 core, [http://developer.nvidia.com/object/cuda.html NVidia CUDA] works on this video card, even though not being listed in the CUDA manuals. Running very large problems (like the SDK examples) however might fail by running out of the relatively small graphics memory.&lt;br /&gt;
&lt;br /&gt;
=== LCD Backlight Brightness Control on T61/R61 ===&lt;br /&gt;
&lt;br /&gt;
There has been an issue with Brightness Control on T61/R61s. This seems to be fixed with the 169.04 BETA driver from Nvidia. You can find them i.e. here [http://www.nvidia.com/object/linux_display_ia32_169.04.html 169.04 BETA Driver]. You might also need the latest BIOS ([[BIOS_Upgrade_Downloads]] 1.26) as well as the latest version of [[Ibm-acpi]] (thinkpad-acpi, V0.18).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the nvidia module is loaded with the argument NVreg_EnableBrightnessControl=1, one can switch to a virtual console, change the lcd brightness level there, and have that level preserved after switching back to the X session. On a {{T61}}, this was tested with the acpi video driver included in the vanilla Linux 2.6.21-6 kernel and on an {{R61}} with {{OpenSUSE}} 10.2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Components]]&lt;/div&gt;</summary>
		<author><name>Mozz</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=NVIDIA_Quadro_NVS_140M&amp;diff=34331</id>
		<title>NVIDIA Quadro NVS 140M</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=NVIDIA_Quadro_NVS_140M&amp;diff=34331"/>
		<updated>2007-11-06T20:24:44Z</updated>

		<summary type="html">&lt;p&gt;Mozz: /* LCD Backlight Brightness Control on T61/R61 */&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;
=== NVIDIA Quadro NVS 140M ===&lt;br /&gt;
&lt;br /&gt;
The NVIDIA Quadro NVS 140M is a mobile video card with a G86 core and either 128 MB or 256 MB graphics memory.&lt;br /&gt;
&lt;br /&gt;
=== Features ===&lt;br /&gt;
&lt;br /&gt;
* Chipset: nVidia Quadro NVS 140M&lt;br /&gt;
* PCI ID:&lt;br /&gt;
** 01:00.0 VGA compatible controller: nVidia Corporation Unknown device 0429 (rev a1) (prog-if 00 [VGA])&lt;br /&gt;
*** Subsystem: Lenovo Unknown device 20d8&lt;br /&gt;
*** Flags: bus master, fast devsel, latency 0, IRQ 169&lt;br /&gt;
*** Memory at d6000000 (32-bit, non-prefetchable) [size=16M]&lt;br /&gt;
*** Memory at e0000000 (64-bit, prefetchable) [size=256M]&lt;br /&gt;
*** Memory at d4000000 (64-bit, non-prefetchable) [size=32M]&lt;br /&gt;
*** I/O ports at 2000 [size=128]&lt;br /&gt;
*** Capabilities: [60] Power Management version 2&lt;br /&gt;
*** Capabilities: [68] Message Signalled Interrupts: 64bit+ Queue=0/0 Enable-&lt;br /&gt;
*** Capabilities: [78] Express Endpoint IRQ 0&lt;br /&gt;
*** Capabilities: [100] Virtual Channel&lt;br /&gt;
*** Capabilities: [128] Power Budgeting&lt;br /&gt;
*** Capabilities: [600] Unknown (11)&lt;br /&gt;
* PCI Express 16&amp;amp;times;&lt;br /&gt;
* 128 or 256 MB video memory&lt;br /&gt;
&lt;br /&gt;
=== Linux X.Org driver ===&lt;br /&gt;
&lt;br /&gt;
Default X.Org NVidia driver, called &amp;quot;nv&amp;quot; works.&lt;br /&gt;
&lt;br /&gt;
=== NVIDIA proprietary driver ===&lt;br /&gt;
&lt;br /&gt;
Support for Quadro NVS 140M has been introduced in the NVIDIA Linux unified driver version 100.14.09 (released on 8 June 2007). For the latest drivers go to the [http://www.nvidia.com/object/unix.html NVIDIA Unix Drivers page]. Note that NVIDIA proprietary drivers do not work with a Xen virtualized kernel.&lt;br /&gt;
&lt;br /&gt;
==== CUDA ====&lt;br /&gt;
&lt;br /&gt;
Since it has a G86 core, [http://developer.nvidia.com/object/cuda.html NVidia CUDA] works on this video card, even though not being listed in the CUDA manuals. Running very large problems (like the SDK examples) however might fail by running out of the relatively small graphics memory.&lt;br /&gt;
&lt;br /&gt;
=== LCD Backlight Brightness Control on T61/R61 ===&lt;br /&gt;
&lt;br /&gt;
To the best of my knowledge, no one has been able to get LCD backlight brightness control to work with this video card on the {{T61}}/{{R61}} when using the proprietary driver. However, brightness control works fine when using the vesa driver, so it seems that the problem lies with the Nvidia driver itself. &lt;br /&gt;
&lt;br /&gt;
{{QUOTE|Mike Kershaw|linux-thinkpad@linux-thinkpad.org|This problem was solved (for me) with the latest IBM bios release,&lt;br /&gt;
October 18, bios 1.26, 7KET56WW.  In-X brightness works now via the hw&lt;br /&gt;
keys and acpi/ibm/brightness.}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Strangely, if the nvidia module is loaded with the argument NVreg_EnableBrightnessControl=1, one can switch to a virtual console, change the lcd brightness level there, and have that level preserved after switching back to the X session. On a {{T61}}, this was tested with the acpi video driver included in the vanilla Linux 2.6.21-6 kernel and on an {{R61}} with {{OpenSUSE}} 10.2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Components]]&lt;/div&gt;</summary>
		<author><name>Mozz</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=NVIDIA_Quadro_NVS_140M&amp;diff=34330</id>
		<title>NVIDIA Quadro NVS 140M</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=NVIDIA_Quadro_NVS_140M&amp;diff=34330"/>
		<updated>2007-11-06T20:24:21Z</updated>

		<summary type="html">&lt;p&gt;Mozz: /* LCD Backlight Brightness Control on T61/R61 */&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;
=== NVIDIA Quadro NVS 140M ===&lt;br /&gt;
&lt;br /&gt;
The NVIDIA Quadro NVS 140M is a mobile video card with a G86 core and either 128 MB or 256 MB graphics memory.&lt;br /&gt;
&lt;br /&gt;
=== Features ===&lt;br /&gt;
&lt;br /&gt;
* Chipset: nVidia Quadro NVS 140M&lt;br /&gt;
* PCI ID:&lt;br /&gt;
** 01:00.0 VGA compatible controller: nVidia Corporation Unknown device 0429 (rev a1) (prog-if 00 [VGA])&lt;br /&gt;
*** Subsystem: Lenovo Unknown device 20d8&lt;br /&gt;
*** Flags: bus master, fast devsel, latency 0, IRQ 169&lt;br /&gt;
*** Memory at d6000000 (32-bit, non-prefetchable) [size=16M]&lt;br /&gt;
*** Memory at e0000000 (64-bit, prefetchable) [size=256M]&lt;br /&gt;
*** Memory at d4000000 (64-bit, non-prefetchable) [size=32M]&lt;br /&gt;
*** I/O ports at 2000 [size=128]&lt;br /&gt;
*** Capabilities: [60] Power Management version 2&lt;br /&gt;
*** Capabilities: [68] Message Signalled Interrupts: 64bit+ Queue=0/0 Enable-&lt;br /&gt;
*** Capabilities: [78] Express Endpoint IRQ 0&lt;br /&gt;
*** Capabilities: [100] Virtual Channel&lt;br /&gt;
*** Capabilities: [128] Power Budgeting&lt;br /&gt;
*** Capabilities: [600] Unknown (11)&lt;br /&gt;
* PCI Express 16&amp;amp;times;&lt;br /&gt;
* 128 or 256 MB video memory&lt;br /&gt;
&lt;br /&gt;
=== Linux X.Org driver ===&lt;br /&gt;
&lt;br /&gt;
Default X.Org NVidia driver, called &amp;quot;nv&amp;quot; works.&lt;br /&gt;
&lt;br /&gt;
=== NVIDIA proprietary driver ===&lt;br /&gt;
&lt;br /&gt;
Support for Quadro NVS 140M has been introduced in the NVIDIA Linux unified driver version 100.14.09 (released on 8 June 2007). For the latest drivers go to the [http://www.nvidia.com/object/unix.html NVIDIA Unix Drivers page]. Note that NVIDIA proprietary drivers do not work with a Xen virtualized kernel.&lt;br /&gt;
&lt;br /&gt;
==== CUDA ====&lt;br /&gt;
&lt;br /&gt;
Since it has a G86 core, [http://developer.nvidia.com/object/cuda.html NVidia CUDA] works on this video card, even though not being listed in the CUDA manuals. Running very large problems (like the SDK examples) however might fail by running out of the relatively small graphics memory.&lt;br /&gt;
&lt;br /&gt;
=== LCD Backlight Brightness Control on T61/R61 ===&lt;br /&gt;
&lt;br /&gt;
To the best of my knowledge, no one has been able to get LCD backlight brightness control to work with this video card on the {{T61}}/{{R61}} when using the proprietary driver. However, brightness control works fine when using the vesa driver, so it seems that the problem lies with the Nvidia driver itself. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{QUOTE|Mike Kershaw|linux-thinkpad@linux-thinkpad.org|This problem was solved (for me) with the latest IBM bios release,&lt;br /&gt;
October 18, bios 1.26, 7KET56WW.  In-X brightness works now via the hw&lt;br /&gt;
keys and acpi/ibm/brightness.}}&lt;br /&gt;
&lt;br /&gt;
Strangely, if the nvidia module is loaded with the argument NVreg_EnableBrightnessControl=1, one can switch to a virtual console, change the lcd brightness level there, and have that level preserved after switching back to the X session. On a {{T61}}, this was tested with the acpi video driver included in the vanilla Linux 2.6.21-6 kernel and on an {{R61}} with {{OpenSUSE}} 10.2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Components]]&lt;/div&gt;</summary>
		<author><name>Mozz</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=NVIDIA_Quadro_NVS_140M&amp;diff=34329</id>
		<title>NVIDIA Quadro NVS 140M</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=NVIDIA_Quadro_NVS_140M&amp;diff=34329"/>
		<updated>2007-11-06T20:22:44Z</updated>

		<summary type="html">&lt;p&gt;Mozz: /* LCD Backlight Brightness Control on T61/R61 */&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;
=== NVIDIA Quadro NVS 140M ===&lt;br /&gt;
&lt;br /&gt;
The NVIDIA Quadro NVS 140M is a mobile video card with a G86 core and either 128 MB or 256 MB graphics memory.&lt;br /&gt;
&lt;br /&gt;
=== Features ===&lt;br /&gt;
&lt;br /&gt;
* Chipset: nVidia Quadro NVS 140M&lt;br /&gt;
* PCI ID:&lt;br /&gt;
** 01:00.0 VGA compatible controller: nVidia Corporation Unknown device 0429 (rev a1) (prog-if 00 [VGA])&lt;br /&gt;
*** Subsystem: Lenovo Unknown device 20d8&lt;br /&gt;
*** Flags: bus master, fast devsel, latency 0, IRQ 169&lt;br /&gt;
*** Memory at d6000000 (32-bit, non-prefetchable) [size=16M]&lt;br /&gt;
*** Memory at e0000000 (64-bit, prefetchable) [size=256M]&lt;br /&gt;
*** Memory at d4000000 (64-bit, non-prefetchable) [size=32M]&lt;br /&gt;
*** I/O ports at 2000 [size=128]&lt;br /&gt;
*** Capabilities: [60] Power Management version 2&lt;br /&gt;
*** Capabilities: [68] Message Signalled Interrupts: 64bit+ Queue=0/0 Enable-&lt;br /&gt;
*** Capabilities: [78] Express Endpoint IRQ 0&lt;br /&gt;
*** Capabilities: [100] Virtual Channel&lt;br /&gt;
*** Capabilities: [128] Power Budgeting&lt;br /&gt;
*** Capabilities: [600] Unknown (11)&lt;br /&gt;
* PCI Express 16&amp;amp;times;&lt;br /&gt;
* 128 or 256 MB video memory&lt;br /&gt;
&lt;br /&gt;
=== Linux X.Org driver ===&lt;br /&gt;
&lt;br /&gt;
Default X.Org NVidia driver, called &amp;quot;nv&amp;quot; works.&lt;br /&gt;
&lt;br /&gt;
=== NVIDIA proprietary driver ===&lt;br /&gt;
&lt;br /&gt;
Support for Quadro NVS 140M has been introduced in the NVIDIA Linux unified driver version 100.14.09 (released on 8 June 2007). For the latest drivers go to the [http://www.nvidia.com/object/unix.html NVIDIA Unix Drivers page]. Note that NVIDIA proprietary drivers do not work with a Xen virtualized kernel.&lt;br /&gt;
&lt;br /&gt;
==== CUDA ====&lt;br /&gt;
&lt;br /&gt;
Since it has a G86 core, [http://developer.nvidia.com/object/cuda.html NVidia CUDA] works on this video card, even though not being listed in the CUDA manuals. Running very large problems (like the SDK examples) however might fail by running out of the relatively small graphics memory.&lt;br /&gt;
&lt;br /&gt;
=== LCD Backlight Brightness Control on T61/R61 ===&lt;br /&gt;
&lt;br /&gt;
To the best of my knowledge, no one has been able to get LCD backlight brightness control to work with this video card on the {{T61}}/{{R61}} when using the proprietary driver. However, brightness control works fine when using the vesa driver, so it seems that the problem lies with the Nvidia driver itself. &lt;br /&gt;
&lt;br /&gt;
Strangely, if the nvidia module is loaded with the argument NVreg_EnableBrightnessControl=1, one can switch to a virtual console, change the lcd brightness level there, and have that level preserved after switching back to the X session. On a {{T61}}, this was tested with the acpi video driver included in the vanilla Linux 2.6.21-6 kernel and on an {{R61}} with {{OpenSUSE}} 10.2.&lt;br /&gt;
&lt;br /&gt;
{{QUOTE|Mike Kershaw|linux-thinkpad@linux-thinkpad.org|This problem was solved (for me) with the latest IBM bios release,&lt;br /&gt;
October 18, bios 1.26, 7KET56WW.  In-X brightness works now via the hw&lt;br /&gt;
keys and acpi/ibm/brightness.}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Components]]&lt;/div&gt;</summary>
		<author><name>Mozz</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_7.04_(Feisty_Fawn)_on_a_ThinkPad_T61&amp;diff=33864</id>
		<title>Installing Ubuntu 7.04 (Feisty Fawn) on a ThinkPad T61</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_7.04_(Feisty_Fawn)_on_a_ThinkPad_T61&amp;diff=33864"/>
		<updated>2007-10-13T14:58:33Z</updated>

		<summary type="html">&lt;p&gt;Mozz: /* Suspend */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;On the T61, [[Installing_Ubuntu_7.10_(Gutsy_Gibbon)_Release_Candidate_on_a_ThinkPad_T61|Ubuntu 7.10 (Gutsy Gibbon)]] is recommended instead of 7.04 because video drivers and wifi, among other issues, work by default.&lt;br /&gt;
recomended&lt;br /&gt;
&lt;br /&gt;
===My DVD drive/CD burner/DVD burner doesn't work (Solved)===&lt;br /&gt;
&lt;br /&gt;
Follow these instructions to enable your [http://en.wikipedia.org/wiki/Optical_drive optical drive]:&amp;lt;br&amp;gt;&lt;br /&gt;
1) Reboot your T61. Press the ThinkVantage button quickly when you see the ThinkPad screen and then press F1 enter [http://en.wikipedia.org/wiki/BIOS BIOS].&amp;lt;br&amp;gt;&lt;br /&gt;
2) In BIOS, select Configure -&amp;gt; Serial ATA.&amp;lt;br&amp;gt;&lt;br /&gt;
3) Now, select Compatibility instead of AHCI.&amp;lt;br&amp;gt;&lt;br /&gt;
4) Exit BIOS and start your computer normally.&amp;lt;br&amp;gt;&lt;br /&gt;
5) Go to Places -&amp;gt; Computer, right-click your CD-ROM/DVD/etc. drive, and select Properties. Then, go to Drive -&amp;gt; Settings. Set the mount point to ''cdrom'' (regardless of whether it's a CD-ROM drive, DVD drive, etc.).&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
At first, the Ubuntu Live CD would not start at all, this seems to be a problem with the SATA AHCI driver.  I had to go into the BIOS and change the SATA driver from ACHI to compatibility (What is the difference? Am I loosing performance?).&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
After you've installed and booted, try the advice from [[Problems_with_SATA_and_Linux]]. Do this:&lt;br /&gt;
 '''# echo options libata atapi_enabled=1&amp;gt;/etc/modprobe.d/atapienable &amp;amp;&amp;amp; update-initramfs -u'''&lt;br /&gt;
Then try turning AHCI back on in the BIOS. On a custom-built 2.6.21.5 kernel, my DVD drive appears as /dev/hda and DMA works.&lt;br /&gt;
--[[User:Kc8tbe|Kc8tbe]] 12:45, 1 July 2007 (UTC)&lt;br /&gt;
&lt;br /&gt;
If your DVD drive does not appear, modprobe pata-jmicron and ide-generic.&lt;br /&gt;
--[[User:Antikristian|Antikristian]] 01:23, 30 July 2007 (UTC)&lt;br /&gt;
&lt;br /&gt;
===NVIDIA Quadro NVS 140M (Solved)===&lt;br /&gt;
After initial issues like those explained above in the SATA Issues, I received the xorg error 'fatal error: no screens found'.  I was able to boot into Safe Graphics Mode and run the installer, though I had to move both window manager bars to see enough of the install window to use it.&lt;br /&gt;
&lt;br /&gt;
Alternatively, you can download the drivers via wget in a console. Take care to follow the instructions in &lt;br /&gt;
[http://www.nvnews.net/vbulletin/showthread.php?t=72490 the NVidia Forum] and uninstall all the packages wit apt-get remove, as described.&lt;br /&gt;
Then run the nvidia installer.&lt;br /&gt;
&lt;br /&gt;
Remember that, after you upgrade the kernel, you also have to re-install the drivers.&lt;br /&gt;
&lt;br /&gt;
After installing the NVIDIA drivers, your laptop may not wake after suspend or hibernation.  I followed these instructions to fix it [https://help.ubuntu.com/community/NvidiaLaptopBinaryDriverSuspend Ubuntu Community Help].&lt;br /&gt;
&lt;br /&gt;
====Alternative NVIDIA driver installation====&lt;br /&gt;
Instead of installing the NVIDIA drivers manually as described above, you can try using [http://www.albertomilone.com/nvidia_scripts1.html Envy]. It automatically installs the latest NVIDIA drivers, and cleans up any previous installations.&lt;br /&gt;
&lt;br /&gt;
=== Intel Graphics Media Accelerator X3100 (Chipset GM965) (Solved)===&lt;br /&gt;
After that the CD seemed to boot but the screen was just garbage [http://shadowarts.nonlogic.org/projects/thinkpad/screen_garbage.jpg Picture].  In order to get around that issue I had to go back and download the Alternate CD, which allows you to install in text only mode. From here, the text-only install went okay. Changing the VGA settings on the regular CD worked for me. &lt;br /&gt;
&lt;br /&gt;
When I booted up after the installation, I was still getting the same garbage on the screen.  To resolve this I edited my [http://shadowarts.nonlogic.org/projects/thinkpad/xorg.conf xorg.conf] file as shown.  I also had to install the latest kernel for Feisty, as the one off of the install disk did have have /dev/agpgart.  And I could then use X11.  There were still some issues however.  The screen seemed somewhat fuzzy.  This was a little more challenging of a fix...  I found [http://www.spinics.net/lists/xorg/msg25099.html this] mailing list posting, according to it, there was a small glitch in the driver.  To fix it:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
apt-get source xserver-xorg-video-intel&lt;br /&gt;
cd xserver-xorg-video-intel-1.9.94/&lt;br /&gt;
vim src/i830_lvds.c&lt;br /&gt;
Goto line 230 and delete (PFIT_ENABLE | VERT_AUTSCALE ....);, replacing it with 0;  then quit vim&lt;br /&gt;
dpkg-buildpackage -rfakeroot -uc -b&lt;br /&gt;
cd ..&lt;br /&gt;
dpkg -i xserver-xorg-video-intel_1.9.94-lubuntu3_amd64.deb (wont be amd64 with a 32-bit install)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Now reboot your computer, and it should work.  **NOTE: For some reason just restarting X didn't fix it, seems like you must reboot.**  At this point you should have a nice, crisp display.&lt;br /&gt;
&lt;br /&gt;
I am still working on aiglx and compiz (switching desktops on a cube doesnt seem to work, though I have some ideas...).  There are some issues with OpenGL apps freezing Xorg as well, but the standard 2D desktop works flawlessly.&lt;br /&gt;
----&lt;br /&gt;
It doesn't seem to be necessary to modify the soruce of xserver-xorg-video-intel anymore, but 3D-acceleration doesn't seem to be stable yet and kdm occasionally needs to be restarted after a login attempt.--[[User:Kc8tbe|Kc8tbe]] 12:49, 1 July 2007 (UTC)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
I was able to use the normal feisty install disk by changing the SATA setting in BIOS, then change the resolution to 800x600 prior to install, then sudo apt-get update and upgrade, and then sudo apt-get install xserver-xorg-video-intel, then change xorg.conf to match link above and 2D graphics work fine.  Jul 18, 2008 - John E&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
It seems that everything works fine when using &amp;quot;apt pinning&amp;quot; and updating the xserver-xorg-video-intel, mesa and other packages to the versions provided by Gutsy. I did the following and the resolution and Compiz Fusion are working fine at the moment. The original source of the steps described below can be found here: [http://techreport.com/forums/viewtopic.php?p=714998#714998]&lt;br /&gt;
&lt;br /&gt;
'''Instructions:'''&lt;br /&gt;
* Make a new file /etc/apt/preferences&lt;br /&gt;
* In the preferences file, put: &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Package: *&lt;br /&gt;
Pin: release a=feisty&lt;br /&gt;
Pin-Priority: 700&lt;br /&gt;
&lt;br /&gt;
Package: *&lt;br /&gt;
Pin: release a=gutsy&lt;br /&gt;
Pin-Priority: 200&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Now, edit your sources.list and copy the main and restricted (and others if you want) repo lines replacing feisty with gutsy: &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# original&lt;br /&gt;
deb http://archive.ubuntu.com/ubuntu feisty main restricted universe multiverse&lt;br /&gt;
deb-src http://security.ubuntu.com/ubuntu feisty main restricted universe multiverse&lt;br /&gt;
&lt;br /&gt;
# your addition&lt;br /&gt;
deb http://archive.ubuntu.com/ubuntu gutsy main restricted universe multiverse&lt;br /&gt;
deb-src http://security.ubuntu.com/ubuntu gutsy main restricted universe multiverse&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Now run:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get update&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
{{HINT|If you get an error while trying to update, it may be because your apt cache is too small. To fix this add the following to your &amp;quot;/etc/apt/apt.conf.d/70debconf&amp;quot;:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
APT::Cache-Limit &amp;quot;118388608&amp;quot;;&lt;br /&gt;
&amp;lt;/pre&amp;gt;--[[User:Thefekete|Thefekete]] 04:14, 19 September 2007 (UTC)}}&lt;br /&gt;
*Then Run:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get -t gutsy install xserver-xorg-video-intel&lt;br /&gt;
sudo apt-get -t gutsy install linux&lt;br /&gt;
sudo apt-get -t gutsy install libgl1-mesa-dri&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Now reboot.&lt;br /&gt;
&lt;br /&gt;
Probably now you have the weird effect that your GUI is scaled wrong and doesn't fill the full width of the monitor. To fix that, open your xorg.conf and make the following changes:&lt;br /&gt;
* Add the following section to your xorg.conf&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Section &amp;quot;Monitor&amp;quot;&lt;br /&gt;
    Identifier &amp;quot;TVOutput&amp;quot;&lt;br /&gt;
    Option &amp;quot;Disable&amp;quot; &amp;quot;true&amp;quot;&lt;br /&gt;
EndSection&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Then in the &amp;quot;Device&amp;quot; section add the following line:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Option &amp;quot;monitor-TV&amp;quot; &amp;quot;TVOutput&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
That should fix the scaling problem and now everything should work fine.&lt;br /&gt;
--[[User:Shuk|Shuk]] 02:26, 10 July 2007 (UTC)&lt;br /&gt;
&lt;br /&gt;
{{HINT|If you experience problems with totem or other gstreamer apps crashing, try this:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ gstreamer-properties&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Then under the &amp;quot;Video&amp;quot; tab, change the Output Plugin to &amp;quot;X Window System (No Xv)&amp;quot;&lt;br /&gt;
This will run the video through you processor, but won't crash gstreamer. --[[User:Thefekete|Thefekete]] 04:14, 19 September 2007 (UTC)}}&lt;br /&gt;
&lt;br /&gt;
===ThinkFinger===&lt;br /&gt;
Ubuntu does not come with a package for thinkfinger.  Downloading the most recent source and building it was simple enough: Download most recent version (0.3 at time of writing)&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install libpam0g-dev libusb-dev&lt;br /&gt;
tar xvzf thinkfinger-0.3.tar.gz&lt;br /&gt;
cd thinkfinger-0.3/&lt;br /&gt;
./configure --with-securedir=/lib/security --with-birdir=/etc/pam_thinkfinger&lt;br /&gt;
make -j5             (hey its dual core!)&lt;br /&gt;
sudo make install&lt;br /&gt;
sudo ldconfig&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Configuring it is easy as well, open /etc/pam.d/common-auth:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
auth sufficient pam_thinkfinger.so&lt;br /&gt;
auth required pam_unix.so try_first_pass nullok_secure&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Create the data directory and set your fingerprint:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo mkdir /etc/pam_thinkfinger&lt;br /&gt;
sudo tf-tool --add-user &amp;lt;username&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To get be asked to swipe your finger when logging in or sudoing&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo modprobe uinput&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
To make sure it works after reboot add &amp;quot;uinput&amp;quot; to the list in /etc/modules.&lt;br /&gt;
&lt;br /&gt;
It will all be setup.  (I found this somewhere on the web, I wish I could give a source but I'm afraid I cant find it, thank you Anonymous!).&lt;br /&gt;
&lt;br /&gt;
===HDAPS===&lt;br /&gt;
This seems to be working fine now, I just follow the step on [[How_to_protect_the_harddisk_through_APS]].  Using hdaps-gl does the inverse of the accelerometer, though it's not really a big deal, the harddrive protection should still work.&lt;br /&gt;
&lt;br /&gt;
Assuming that the (improved) hdaps code bundled with tp_smapi is being used, editing the transform_axis function in tp_smapi-0.32/hdaps.c will allow for the proper operation of the accelerometer. Assuming that the accelerometer is rotated 90 degrees from its proper orientation (as it is with the X61), the following code will suffice:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
static void transform_axes(int *x, int *y)&lt;br /&gt;
{&lt;br /&gt;
	int temp = *x;&lt;br /&gt;
	*x = -*y;&lt;br /&gt;
	*y = temp;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For those paying attention in linear algebra, this corresponds to a linear transformation that rotates a 2D coordinate system 90 degrees.&lt;br /&gt;
--[[User:Mbsullivan|Mbsullivan]] 04:21, 27 August 2007 (UTC)&lt;br /&gt;
&lt;br /&gt;
Instead of editing the code, you can just pass the invert=1 parameter when loading the module; modprobe hdaps invert=1&lt;br /&gt;
--[[User:Vegar|Vegar]] 14:40, 17 September 2007 (UTC)&lt;br /&gt;
&lt;br /&gt;
===WiFi===&lt;br /&gt;
If you have Intel 4965AGN WiFi card, you have to use ndiswrapper OR use backported kernel from Ubuntu Gutsy (Anybody have howto?) and use following: &lt;br /&gt;
http://kuscsik.blogspot.com/2007/06/how-to-install-intel-4965-wireless.html&lt;br /&gt;
&lt;br /&gt;
'''Note:'''&lt;br /&gt;
Do not use the latest versions of iwlwifi and mac80211. For me with Gutsy mac80211-8.0.2 and iwlwifi-0.0.42 work with the latest firmware. No further modification needed.&lt;br /&gt;
&lt;br /&gt;
If you have the Atheros card, Ubuntu should automatically install madwifi, which works out of the box&lt;br /&gt;
----&lt;br /&gt;
Works for me with iwlwifi-4965-ucode-4.44.15, iwlwifi-0.0.34, and mac80211-8.0.1. The catch is, you need to patch your kernel with mac80211, which will fail at compile time with the stock Ubuntu sources. Worked for me with vanilla 2.6.21.5 sources patched for tp_smapi and hdaps protect. Make sure to disable CONFIG_NET_WIRELESS_RTNETLINK in your kernel config.&lt;br /&gt;
&lt;br /&gt;
You can download what you need for for iwlwifi and mac80211 from &lt;br /&gt;
http://intellinuxwireless.org .--[[User:Kc8tbe|Kc8tbe]] 13:00, 1 July 2007 (UTC)&lt;br /&gt;
&lt;br /&gt;
Works for me with vanilla kernel v2.6.22.1, ucode 4.44.17, iwlwifi 0.1.2 and mac80211 9.0.2. --[[User:Mbsullivan|Mbsullivan]] 13:40, 24 July 2007 (UTC)&lt;br /&gt;
&lt;br /&gt;
You can also use Kernel 2.6.22.9 and Ubuntu Modules 2.6.22.9 from Gutsy and you will not need to compile anything! Works very well.&lt;br /&gt;
&lt;br /&gt;
===Keyboard/Apostrophe issues (Solved)===&lt;br /&gt;
When installing with the alternate CD, Ubuntu asks you if your keyboard as a character that appears to be a quotation mark (this character: &amp;quot;). If you're using a US English keyboard, say no; the character is actually an umlaut. [[User:SteveSims|SteveSims]] 02:15, 19 August 2007 (UTC)&lt;br /&gt;
&lt;br /&gt;
My apostrophe key outputs ´ instead of '. I went to System -&amp;gt; Preferences -&amp;gt; Keyboard and could not figure out how to fix it. [[User:SteveSims|SteveSims]] 21:50, 11 August 2007 (UTC)&lt;br /&gt;
&lt;br /&gt;
:Try switching your keyboard layout to US-Classic, and putting it on the top of the list.  After you do that, it works perfectly. --[[User:Adamacious|Adamacious]] 04:29, 13 August 2007 (UTC)&lt;br /&gt;
&lt;br /&gt;
::There is no &amp;quot;US Classic&amp;quot; option. Here's what I have:&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:Keyboard_options.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[User:SteveSims|SteveSims]] 02:17, 15 August 2007 (UTC)&lt;br /&gt;
&lt;br /&gt;
:::It started working, even though I changed nothing. I'm running it as a Macintosh US English keyboard. [[User:SteveSims|SteveSims]] 17:20, 15 August 2007 (UTC)&lt;br /&gt;
&lt;br /&gt;
::::Sorry Steve, what you had to do (and what you did) is select US English, as in the header in the list.  It doesn't look selectable, but it is.--[[User:Adamacious|Adamacious]] 20:02, 22 August 2007 (UTC)&lt;br /&gt;
&lt;br /&gt;
===Audio===&lt;br /&gt;
====Fixed in Gutsy====&lt;br /&gt;
As of 29 August 2007 and [https://bugs.launchpad.net/bugs/122560 this issue], the 2.6.22-10 kernel in Gutsy Gibbon supports audio out-of-the-box (as well as WiFi and other things).  Installing the Gutsy kernel via apt and rebooting fixed audio for me, both speakers and headphones.  Remaining issues:&lt;br /&gt;
&lt;br /&gt;
* The mute button mutes audio, but doesn't unmute.  Pressing volume up or down does unmute it, but has no effect on volume.&lt;br /&gt;
* KMix's system tray volume control has no effect because it thinks it's setting the headphones while both outputs are using the speaker settings, but opening KMix and setting the PCM volume works.  --lgarfiel&lt;br /&gt;
&lt;br /&gt;
====Python script fix (slightly easier fix)====&lt;br /&gt;
First, you have to download the source for the [http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.22.5.tar.gz latest Linux kernel] (2.6.22-5 as of August 26th, 2007) and compile it, something most users cannot do. However, you won't have to compile ALSA and its modules from source if you do it this way.&lt;br /&gt;
&lt;br /&gt;
1) Download the [http://launchpadlibrarian.net/8899521/t61_audio_hack.py T61 audio hack] from [[Launchpad]]. Move it to a convenient folder (e.g., not your desktop).&amp;lt;br&amp;gt;&lt;br /&gt;
2) Go to System -&amp;gt; Preferences -&amp;gt; Sessions -&amp;gt; Startup Programs -&amp;gt; Add.&amp;lt;br&amp;gt;&lt;br /&gt;
3) Name it whatever you want. Choose something simple like &amp;quot;Python audio fix.&amp;quot;&amp;lt;br&amp;gt;&lt;br /&gt;
4) Go to Command, and enter the following (with quotation marks):&lt;br /&gt;
&amp;lt;pre&amp;gt;gksudo &amp;lt;nowiki&amp;gt;&amp;quot;[THE FOLDER THAT T61_AUDIO_HACK.PY IS IN]&amp;lt;/nowiki&amp;gt;/t61_audio_hack.py&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
For example, on my computer, I put t61_audio_hack.py into the /fixes folder in my home folder, so I entered:&lt;br /&gt;
&amp;lt;pre&amp;gt;sksudo &amp;quot;/home/sims/fixes/t61_audio_hack.py&amp;quot;&amp;lt;/pre&amp;gt; into the Command textbox.&amp;lt;br&amp;gt;&lt;br /&gt;
5) Log out, log back in, and type your password quickly when prompted the second time.&lt;br /&gt;
&lt;br /&gt;
References:&lt;br /&gt;
[https://bugs.launchpad.net/ubuntu/+source/linux-source-2.6.20/+bug/122560 Launchpad Bug #122560]&lt;br /&gt;
[https://bugs.launchpad.net/ubuntu/+source/linux-source-2.6.20/+bug/133105 Launchpad Bug #133105]&lt;br /&gt;
&lt;br /&gt;
====ALSA driver update (hard fix, recommended for advanced users)====&lt;br /&gt;
&lt;br /&gt;
:'''''Note: This section assumes a high level of technical proficiency. Please fix it.'''''&lt;br /&gt;
::*&amp;lt;s&amp;gt;At [http://www.alsa-project.org www.asla-project.org], did you download only alsa-driver-1.0.14? That and alsa-lib-1.0.14a?&amp;lt;/s&amp;gt;&lt;br /&gt;
:::Download alsa-driver, alsa-kernel, alsa-lib, and alsa-utils, according to [http://alsa.opensrc.org/index.php/AlsaCVS http://alsa.opensrc.org/index.php/AlsaCVS]. Other sources, however, say only the driver is necessary. Perhaps alsa-project.org simply recommends the other two?&lt;br /&gt;
::*''How'' did you compile it from source? ''How'' did you add the patch?&lt;br /&gt;
::*In short, please explain ''how'' you did these things in addition to just telling us ''what'' you did. I´m not trying to be rude but seriously, not all Linux users are programmers ;). Thanks. [[User:SteveSims|SteveSims]] 22:19, 11 August 2007 (UTC)&lt;br /&gt;
After upgrading to 1.0.14 I still had no sound, and this took about a week to solved (though it was so sadly obvious though).  Just upgrading to alsa 1.0.14 will not be enough, there were a few patches released right after the release that fix the Thinkpad's.  The reason I missed this was because it was the same day so the release of 1.0.14!&lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------------------&lt;br /&gt;
VERY SIMPLE METHOD OF MAKING SOUND WORK &lt;br /&gt;
http://forums.fedoraforum.org/showthread.php?t=159516&amp;amp;page=1&amp;amp;pp=15&lt;br /&gt;
Just follow the instructions step by step, except for two small things:&lt;br /&gt;
When doing &amp;quot;cp ../patch_analog.c alsa-driver-1.0.14/alsa-kernel/pci/hda/&amp;quot; use &amp;quot;cp ../patch_analog.c alsa-kernel/pci/hda/&amp;quot; instead&lt;br /&gt;
Also, when you get to the part about modifying the modprobe.conf file, it doesn't exist in ubuntu. Adding &amp;quot;options snd-hda-intel index=0 model=thinkpad&amp;quot; to any file (even one you make yourself) inside etc/modprobe.d should work. I personally added it to the options file, and it works fine. &lt;br /&gt;
&lt;br /&gt;
-credit for the guide goes to ciphermonk, and credit to the small changes needed to make this work on ubuntu go to my friend John. &lt;br /&gt;
&lt;br /&gt;
-hotkeys control mic volume, not speaker volume for some reason. I do not know how to fix this&lt;br /&gt;
&lt;br /&gt;
-this fix should provide sound for both headphones and speakers. &lt;br /&gt;
&lt;br /&gt;
-this edit by fatalchaos &lt;br /&gt;
---------------------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
First make sure these packages are installed (System -&amp;gt; Administration -&amp;gt; Synaptic Package Manager) : automake, autoconfig, cvs, libtool, python-dev, build-essential&lt;br /&gt;
&lt;br /&gt;
Then download the source code to the alsa-driver and apply these patches: (links to the revisions)&lt;br /&gt;
 &lt;br /&gt;
* [http://hg.alsa-project.org/alsa-kernel/rev/958b39f3e8dd Fix Oops with AD1984 thinkpad model]&lt;br /&gt;
* [http://hg.alsa-project.org/alsa-kernel/rev/47ca87407c84 Fix AD1984 basic model]&lt;br /&gt;
* [http://hg.alsa-project.org/alsa-kernel/rev/ca37aeeeb0ea Fix Thinkpad X61/T61 outputs]&lt;br /&gt;
&lt;br /&gt;
'''Please use CVS version of ALSA instead. All of these patches are committed'''. The link to the CVS version of ALSA is dead[http://alsa.opensrc.org/index.php/AlsaCVS].&lt;br /&gt;
&lt;br /&gt;
After doing a make and make install reboot your computer (or rrmmod snd-hda-intel &amp;amp;&amp;amp; modprobe snd-hda-intel).  And run alsamixer (for me it only works as root atm).  If you can´t find alsamixer, you can run it in the terminal (Applications -&amp;gt; Accessories -&amp;gt; Terminal) by entering ''alsamixer''. You will have to play with the settings a bit.  Make sure the speaker option is not muted and leave the Internal Mic Boost at 0, other wise you will have a really loud microphone feedback sort of sound constantly.&lt;br /&gt;
&lt;br /&gt;
I had to chmod -R 777 /dev/snd/ to get everything work for now. (THIS IS NOT THE CORRECT WAY TO DO IT, IT WILL NOT STAY BETWEEN REBOOTS!).&lt;br /&gt;
&lt;br /&gt;
Audio playback should then work, audio capture (microphone) doesn't seem to work, but I am probably not going to try and fix it, I don't use the capture so I am not concerned with that at the moment.&lt;br /&gt;
'''Update:''' With ALSA CVS, microphone seems to work&lt;br /&gt;
&lt;br /&gt;
If you can't hear the mic boost mic settings.  Here are my settings at KMix&lt;br /&gt;
Output&lt;br /&gt;
   Mic - low&lt;br /&gt;
   Mic Boost - full&lt;br /&gt;
Input &lt;br /&gt;
   Mic boost [enable] - medium&lt;br /&gt;
   capture [enable] - medium&lt;br /&gt;
&lt;br /&gt;
works great with Skype.  Also you can use the 'mic level meter' on KRecord to check the mic&lt;br /&gt;
&lt;br /&gt;
In Gnome, default channel mapped to thinkpad volume buttons is MIC, which is bad. Go to ''System-&amp;gt;Preferences-&amp;gt;Sound-&amp;gt;Default mixer tracks'' to change it&lt;br /&gt;
&lt;br /&gt;
'''Please note''' that internal speakers doesn't work with ALSA CVS. Use the headphone jack. Solution?&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
When starting alsamixer over the terminal I couldn't activate the speakers and only had sound over the headphone. However, I figured out how to easily activate the speakers:&lt;br /&gt;
* Right-click on your microphone icon in the top panel.&lt;br /&gt;
* (If &amp;quot;Mute&amp;quot; is activated, deactivate it. I had that at the beginning and was confused since in alsa you don't really realize it.)&lt;br /&gt;
* Click on &amp;quot;Open Volume Control&amp;quot;&lt;br /&gt;
* Change to the tab &amp;quot;Switches&amp;quot; and activate the option for speaker. &lt;br /&gt;
That should be enough to make it work.&lt;br /&gt;
--[[User:Shuk|Shuk]] 02:51, 11 July 2007 (UTC)&lt;br /&gt;
&lt;br /&gt;
I tried those patches, it didnt work for me. But this python script did: http://www.klabs.be/~fpiat/linux/debian/Etch_on_Thinkpad_T61.html#Sound  .. apparently if you make the PC speaker play constantly, you cant hear it but you can then hear sound. Hopefully gutsy will fix this :/ --[[User:Rubin|Rubin]] 07:18, 14 July 2007 (UTC)&lt;br /&gt;
&lt;br /&gt;
==Suspend==&lt;br /&gt;
Suspending doesn't work by default. It succesfully suspends, but after resuming, Kernel panic occurs. I didn't test hibernate.&lt;br /&gt;
I managed to get suspend to ram to work by using this script:&lt;br /&gt;
&lt;br /&gt;
 #!/bin/sh&lt;br /&gt;
 &lt;br /&gt;
 # if launched through a lid event and lid is open, do nothing&lt;br /&gt;
 echo &amp;quot;$1&amp;quot; | grep &amp;quot;button/lid&amp;quot; &amp;amp;&amp;amp; grep -q open /proc/acpi/button/lid/LID/state &amp;amp;&amp;amp; exit 0&lt;br /&gt;
 &lt;br /&gt;
 # remove USB 1.1 driver&lt;br /&gt;
 rmmod uhci_hcd&lt;br /&gt;
 rmmod ehci_hcd&lt;br /&gt;
 &lt;br /&gt;
 # sync filesystem and clock&lt;br /&gt;
 sync&lt;br /&gt;
 /sbin/hwclock --systohc&lt;br /&gt;
 &lt;br /&gt;
 # switch to console&lt;br /&gt;
 FGCONSOLE=`fgconsole`&lt;br /&gt;
 chvt 6&lt;br /&gt;
 &lt;br /&gt;
 # go to sleep&lt;br /&gt;
 sleep 5 &amp;amp;&amp;amp; echo -n &amp;quot;mem&amp;quot; &amp;gt; /sys/power/state&lt;br /&gt;
 &lt;br /&gt;
 # readjust the clock (it might be off a bit after suspend)&lt;br /&gt;
 /sbin/hwclock --adjust&lt;br /&gt;
 /sbin/hwclock --hctosys&lt;br /&gt;
 &lt;br /&gt;
 # reload USB 1.1 driver&lt;br /&gt;
 modprobe uhci_hcd&lt;br /&gt;
 modprobe ehci_hcd&lt;br /&gt;
 &lt;br /&gt;
 # turn on the backlight and switch back to X&lt;br /&gt;
 chvt $FGCONSOLE&lt;br /&gt;
&lt;br /&gt;
It's very similar to script posted on thinkwiki, but I had to add ehci_hcd to removed modules and remove some radeon stuff (when using Nvidia)&lt;br /&gt;
&lt;br /&gt;
{{HINT| &amp;quot;The problem with this suspend script is, that after resuming, the laptop is incredibly slow. Applications start about 20 seconds, Firefox is lagging.&amp;quot; Solution: Use latest nvidia drivers (.19)}}&lt;br /&gt;
&lt;br /&gt;
This X-slow-after-resume is still here (T61p, nVidia Quadro FX 570 M, bleeding edge Gutsy 2.6.22-10-generic kernel). However, I found an official OpenSuSE 10.3 for this problem:&lt;br /&gt;
[https://bugzilla.novell.com/show_bug.cgi?id=290385]&lt;br /&gt;
--[[User:Lech|Lech]] 21:20, 2 September 2007 (UTC)&lt;br /&gt;
&lt;br /&gt;
When using this script, my USB ports are 'dead' after resume (i.e.  nothing connected to it gets any power).  I have commented out 'rmmod ehci_hcd' and 'modprobe ehci_hcd' lines, to make the USB ports active after a suspend/resume cycle.  (this is using nvidia card)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
Suspend and hibernate work out-of-the-box for me with the 2.6.21.5 kernel, except that you need to put acpi_sleep=s3_bios in the kernel command line (i.e. at the end of each kernel line in /boot/grub/menu.lst).&lt;br /&gt;
--[[User:Kc8tbe|Kc8tbe]] 13:03, 1 July 2007 (UTC)&lt;br /&gt;
&lt;br /&gt;
Hmm, with 2.6.21.5 + acpi_sleep=s3_bios,  laptop suspends, but resume fails - machine locks up.  This is with nvidia 140.  Same result when doing it at console.  When I resume, I hear a beep and the machine hangs.  Have to hard-reset.  Suggestions?&lt;br /&gt;
&lt;br /&gt;
Some things seem to break after suspend for me, like network connections time out randomly, cdrom stops working etc. Running 'sudo /etc/init.d/dbus restart' seems to solve it for the most part.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
We are having similar discussions in Ubunutu's Launchpad, and we found kind of a solution which rules out any 2D/3D graphics acceleration but allows to suspend/resume, at least on my 3 weeks old T61p and some other recent T6x/R6x models:&lt;br /&gt;
&lt;br /&gt;
With thinkpad_acpi 0.16 (!) patches applied to 2.6.22 kernel, and with VESA driver only, it works perfectly so far for us.&lt;br /&gt;
&lt;br /&gt;
The discussion and some links can be found at:&lt;br /&gt;
https://bugs.launchpad.net/ubuntu/+bug/139089&lt;br /&gt;
https://bugs.launchpad.net/ubuntu/+source/linux-source-2.6.22/+bug/129125&lt;br /&gt;
&lt;br /&gt;
I know it's not eye candy not to have satisfying GLX etc., but I consider working suspend/resume much more important than say playing with GoogleEarth.&lt;br /&gt;
&lt;br /&gt;
--[[User:Lech|Lech]] 14:48, 16 September 2007 (UTC)&lt;br /&gt;
&lt;br /&gt;
==Brightness==&lt;br /&gt;
Changing brightness doesn't work at all. There are many issues. I tried Gutsy and still the same (even worse)&lt;br /&gt;
&lt;br /&gt;
Not a real solution, but if using the vesa driver, brightness control works. ''--Daniel06'' 11:58, 4 July 2007&lt;br /&gt;
&lt;br /&gt;
doesnt work for me with vesa or intel --[[User:Rubin|Rubin]] 06:19, 14 July 2007 (UTC)&lt;br /&gt;
&lt;br /&gt;
It works fine on mine and I have built-in graphics on my motherboard. [[User:SteveSims|SteveSims]] 02:19, 15 August 2007 (UTC)&lt;br /&gt;
&lt;br /&gt;
=== one idea ===&lt;br /&gt;
  echo &amp;quot;up&amp;quot; &amp;gt;/proc/acpi/ibm/brightness   &lt;br /&gt;
...works. as does 'down' and 'level x' where x is 1-7.  But how to tie that into the buttons? Seems they are currently using something else in /proc that doesnt exist for us.  --[[User:Rubin|Rubin]] 06:19, 14 July 2007 (UTC)&lt;br /&gt;
&lt;br /&gt;
=== yet another idea ===&lt;br /&gt;
&lt;br /&gt;
You can add the Gnome power manager brightness applet to the gnome panel, which gives you a GUI tool to do the job, rather than hardware buttons.  I don't know about KDE or other window managers.  --[[User:Atoponce|Atoponce]] 13:07 22, Aug 2007&lt;br /&gt;
&lt;br /&gt;
=== Another solution for Brightness, using xbacklight and laptop-mode ===&lt;br /&gt;
&lt;br /&gt;
While the hardware buttons still don't work, I have a solution that will automatically raise and lower the backlight when plugged in or on battery.  &lt;br /&gt;
&lt;br /&gt;
First, make sure Gnome isn't trying to set the brightness, by going to System &amp;gt; Preferences &amp;gt; Power Management.  In the On Battery Power tab, set &amp;quot;Dim display brightness by&amp;quot; to 0%.&lt;br /&gt;
&lt;br /&gt;
Next, install xbacklight.&lt;br /&gt;
&lt;br /&gt;
  sudo apt-get install xbacklight&lt;br /&gt;
&lt;br /&gt;
You can manually set the backlight by using &amp;quot;xbacklight -set &amp;lt;number from 1-100&amp;gt;&amp;quot;.  Note that by using xbacklight, you can make the backlight go brighter or dimmer than normally allowed by Windows or Ubuntu.&lt;br /&gt;
&lt;br /&gt;
To automate brightness changes, first enable laptop-mode&lt;br /&gt;
&lt;br /&gt;
  sudo nano /etc/default/acpi-support&lt;br /&gt;
&lt;br /&gt;
Scroll to the bottom and change ENABLE_LAPTOP_MODE to true&lt;br /&gt;
&lt;br /&gt;
  ENABLE_LAPTOP_MODE=true&lt;br /&gt;
&lt;br /&gt;
Set laptop mode to start automatically&lt;br /&gt;
&lt;br /&gt;
  sudo update-rc.d laptop-mode multiuser&lt;br /&gt;
&lt;br /&gt;
Edit laptop-mode.conf to automate brightness changes.  Scroll down to LCD brightness settings.  Modify the section to read as follows:&lt;br /&gt;
&lt;br /&gt;
  CONTROL_BRIGHTNESS=1&lt;br /&gt;
&lt;br /&gt;
  BATT_BRIGHTNESS_COMMAND=&amp;quot;xbacklight -set 20&amp;quot;&lt;br /&gt;
  LM_AC_BRIGHTNESS_COMMAND=&amp;quot;xbacklight -set 100&amp;quot;&lt;br /&gt;
  NOLM_AC_BRIGHTNESS_COMMAND=&amp;quot;xbacklight -set 100&amp;quot;&lt;br /&gt;
  BRIGHTNESS_OUTPUT=&amp;quot;/dev/null&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Note: You can use any value from 1 to 100 after -set, I used 20 and 100 as examples.  After this, start the laptop-mode daemon, and test if it works.  You may have to restart acpid as well.&lt;br /&gt;
&lt;br /&gt;
  sudo /etc/init.d/laptop-mode start&lt;br /&gt;
  sudo /etc/init.d/acpid restart&lt;br /&gt;
&lt;br /&gt;
==Webcam==&lt;br /&gt;
The webcam in T61 is some sort of UVC camera: Found UVC 1.00 device Integrated Camera (17ef:1004). The module loads out of the box. I tested the camera using:&lt;br /&gt;
Luvcview: http://mxhaard.free.fr/spca50x/Investigation/uvc/luvcview-20070512.tar.gz&lt;br /&gt;
Just compile and run using ./luvcview -f yuv (JPG format doesn't work)&lt;br /&gt;
&lt;br /&gt;
I also tried gqcam and webcam, but both doesn't work (first SEGFAULTs, second prints Invalid argument)&lt;br /&gt;
&lt;br /&gt;
luvcview has a button to take pictures. Place your mouse over the buttons at the bottom of the window, and their function is revealed in the title bar. Unfortunately, the button for avi capture does not seem to work (although it does tell you what the video framerate is, which is helpful).&lt;br /&gt;
&lt;br /&gt;
To capture a video stream, run ./luvcview -f yuv -S&lt;br /&gt;
To play back the video stream, run mplayer -demuxer rawvideo -rawvideo fps=7:w=320:h=240:yuy2 stream.raw&lt;br /&gt;
&lt;br /&gt;
==64 bit systems issues==&lt;br /&gt;
If you are running 64 bit Ubuntu, you will face some problems with 32 bit only proprietary applications. Most of them can be solved. &lt;br /&gt;
&lt;br /&gt;
===Firefox &amp;amp; Flash===&lt;br /&gt;
You can use 32bit version of Firefox (see google), or use http://gwenole.beauchesne.info/projects/nspluginwrapper/ nspluginwrapper] which i prefer:&lt;br /&gt;
 sudo apt-get install ia32-libs ia32-libs-gtk linux32 lib32asound2 alien&lt;br /&gt;
Now download both nspluginwrapper rpms (Plugin + Viewer) and convert them:&lt;br /&gt;
 sudo alien nspluginwrapper*.rpm&lt;br /&gt;
 sudo dpkg -i nspluginwrapper*.deb&lt;br /&gt;
&lt;br /&gt;
Download Adobe Flash Player: http://fpdownload.macromedia.com/get/flashplayer/current/install_flash_player_9_linux.tar.gz&lt;br /&gt;
 tar -xvzf install_flash_player_9_linux.tar.gz&lt;br /&gt;
 cd install_flash_player_9_linux&lt;br /&gt;
 sudo install libflashplayer.so flashplayer.xpt /usr/lib/firefox/plugins&lt;br /&gt;
 nspluginwrapper -i /usr/lib/firefox/plugins/libflashplayer.so&lt;br /&gt;
 cd ~/.mozilla/plugins/&lt;br /&gt;
 sudo install npwrapper.libflashplayer.so /usr/lib/mozilla-firefox/plugins/&lt;br /&gt;
This howto is taken from [http://webzine.smehlik.net/64bit-ubuntu-adobe-flash-plugin-pomoci-nspluginwrapper/ Smehlik Webzine (in Czech)]&lt;br /&gt;
&lt;br /&gt;
===Skype===&lt;br /&gt;
Download Skype for Ubuntu Feisty&lt;br /&gt;
Use this commandlibdbus, libqt4-core, libqt4-gui, libsigc++ to determine missing libraries:&lt;br /&gt;
 ldd /usr/bin/skype | grep not&lt;br /&gt;
It should be these:&lt;br /&gt;
 libdbus, libqt4-core, libqt4-gui, libsigc++ (2.0 version)&lt;br /&gt;
Download them from http://packages.ubuntu.com (32bit versions!)&lt;br /&gt;
 mkdir testlibs&lt;br /&gt;
 dpkg-deb --extract &amp;lt;deb file&amp;gt; testlibs&lt;br /&gt;
Now copy everything from testlibs to /usr/lib32&lt;br /&gt;
 cp -r testlibs/usr/lib/* /usr/lib32&lt;br /&gt;
Freedom lovers are advised to avoid proprietary systems like Skype, however.  Centralized directories and signalling architectures can't be good for your health.&lt;br /&gt;
&lt;br /&gt;
==Bluetooth==&lt;br /&gt;
works for me (TM)&lt;br /&gt;
&lt;br /&gt;
==USB==&lt;br /&gt;
A short time after the system has booted, I get a message on the console of every window indicating IRQ# 23 has fired but noone is expecting it. After this message, the USB ports on the right side fail to work anymore.  It was suggested on a forum that they will work, its just it takes it a long time to discover there is a new device.  I looked in /proc and determined that the bluetooth device is using IRQ23, so it may be involved, but there may be sharing so it could be something else.  Regardless, there are USB bus problems with the T61 and linux.&lt;br /&gt;
  &lt;br /&gt;
&lt;br /&gt;
==Overall==&lt;br /&gt;
I initially had some big problems getting this working, but now its working quite well.  The wifi card worked at startup (uses madwifi) and I am happy because I don't seem to need any proprietary software to run this system.&lt;br /&gt;
&lt;br /&gt;
==Discussion==&lt;br /&gt;
In case you missed it the discussion page (for questions/responses) is right here:  [[Talk: Installing Ubuntu 7.04 (Feisty Fawn) on a ThinkPad T61]]&lt;br /&gt;
&lt;br /&gt;
==References==&lt;br /&gt;
* This guide is listed at the [http://tuxmobil.org/ibm.html TuxMobil Linux laptop and notebook installation guides survey (IBM/Lenovo)].&lt;br /&gt;
* Many other suggestions and references can be found in the following ubuntu forum: http://ubuntuforums.org/showthread.php?t=471563&lt;br /&gt;
&lt;br /&gt;
[[Category:Ubuntu 7.04]]&lt;br /&gt;
[[Category:T61]]&lt;/div&gt;</summary>
		<author><name>Mozz</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_7.04_on_a_ThinkPad_T43&amp;diff=33569</id>
		<title>Installing Ubuntu 7.04 on a ThinkPad T43</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_7.04_on_a_ThinkPad_T43&amp;diff=33569"/>
		<updated>2007-09-30T07:55:00Z</updated>

		<summary type="html">&lt;p&gt;Mozz: /* Disk Protection */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
==Overview==&lt;br /&gt;
Worked right out of the box&lt;br /&gt;
* 1400*1050 resolution&lt;br /&gt;
* Battery Management&lt;br /&gt;
* Ultra Nav (Trackpoint and synaptic touchpad)&lt;br /&gt;
* WLAN (Atheros,  IBM 11a/b/g Wireless LAN Mini PCI Adapter II)&lt;br /&gt;
* Hibernate and Standby (some installs have problems with hibernate)&lt;br /&gt;
* Fn keys (switch between monitors untested)&lt;br /&gt;
* Audio Keys &lt;br /&gt;
* ThinkLight&lt;br /&gt;
* ATI 3D Acceleration (Mobility Radeon X300)&lt;br /&gt;
* AIGLX / Compiz&lt;br /&gt;
&lt;br /&gt;
Was easy &lt;br /&gt;
* Fingerprint reader&lt;br /&gt;
* AIGLX / Beryl&lt;br /&gt;
* middle key of Ultra Nav (Trackpoint) for scrolling&lt;br /&gt;
* Active Protection System (acceleration sensor)&lt;br /&gt;
* Forward/Backward keys, Access IBM Key&lt;br /&gt;
* Toggle Touchpad on/off&lt;br /&gt;
&lt;br /&gt;
Was very hard&lt;br /&gt;
* Active Protection System (hard disk parking needs kernel recompile)&lt;br /&gt;
&lt;br /&gt;
Untested&lt;br /&gt;
* Bluetooth (light indicates working)&lt;br /&gt;
* Modem &lt;br /&gt;
* IrDA&lt;br /&gt;
* TV out, VGA out&lt;br /&gt;
&lt;br /&gt;
==Installation==&lt;br /&gt;
&lt;br /&gt;
I just installed Feisty using the graphical installer. {{WARN|Installing grub to the MBR may hurt your Rescue 'n' Recovery Partition!}} If you want to keep you Rescue 'n' Recovery Partition, read [http://gawrysiak.org/corvus/?p=4 this blog entry].&lt;br /&gt;
Whatever you do, you should care about Backups etc. yourself. A starting point is given in [[Installing Ubuntu 6.10 on a ThinkPad T43#Installation]]&lt;br /&gt;
&lt;br /&gt;
The only non-free driver that was activated was atheros for wifi access.&lt;br /&gt;
For graphics the free ati/radeon driver was activated, the restricted ati alternative fglrx was installed but not enabled. I did not try it.&lt;br /&gt;
&lt;br /&gt;
==Configuration==&lt;br /&gt;
&lt;br /&gt;
===3D Acceleration===&lt;br /&gt;
&lt;br /&gt;
====Compiz====&lt;br /&gt;
&lt;br /&gt;
3D Acceleration and Compiz worked out of the box for me. Just activate it in the system menu under desktop effects. I had some minor issues, but I blame the beta status for that.&lt;br /&gt;
To test if 3D Acceleration it works, if you have problems, type&lt;br /&gt;
&lt;br /&gt;
 $ glxinfo | grep rendering&lt;br /&gt;
&lt;br /&gt;
The answer should be: &amp;quot;direct rendering: Yes&amp;quot;. If it says &amp;quot;No&amp;quot;, you don't have 3D acceleration.&lt;br /&gt;
&lt;br /&gt;
====Beryl====&lt;br /&gt;
&lt;br /&gt;
I just installed following packages and started beryl-manager. Everything just works out of the box. If you enable compiz effect in the gnome menu you can even swith between beryl, compiz and metacity (no effects) just using the beryl-manager applet.&lt;br /&gt;
 &lt;br /&gt;
 sudo  apt-get install beryl beryl-core beryl-manager beryl-plugins beryl-plugins-data beryl-settings beryl-settings-bindings&lt;br /&gt;
&lt;br /&gt;
====Problem====&lt;br /&gt;
&lt;br /&gt;
If you have problems watching videos when 3D acceleration is enabled, make sure to use the X11 output format. Follow the instructions in [https://bugs.launchpad.net/ubuntu/+source/compiz/+bug/102290 this bug] to do so.&lt;br /&gt;
&lt;br /&gt;
====Compiz-Fusion====&lt;br /&gt;
&lt;br /&gt;
To try out Compiz-Fusion, i.e. early versions of the merge between beryl and compiz, there are many installation guides available on the net, e.g. in the [http://ubuntuforums.org/showthread.php?t=481314h Ubuntu Forum].&lt;br /&gt;
&lt;br /&gt;
===Active Protection System (acceleration monitor)===&lt;br /&gt;
&lt;br /&gt;
====Acceleration Monitor)====&lt;br /&gt;
&lt;br /&gt;
The T43 has a great system to protect your hard disk, the Active Protection System APS. [[HDAPS]] and [[How to protect the harddisk through APS]] describe how you can use it.&lt;br /&gt;
&lt;br /&gt;
Feisty comes with with the accelerometer installed but not activated. To test it activate the kernel module and use a neat program you find in hdaps-utils&lt;br /&gt;
&lt;br /&gt;
To activate it, type:&lt;br /&gt;
&lt;br /&gt;
 {{cmduser|sudo su}}&lt;br /&gt;
 {{cmdroot|echo &amp;quot;hdaps&amp;quot; &amp;gt;&amp;gt; /etc/modules}}&lt;br /&gt;
 {{cmdroot|exit}}&lt;br /&gt;
 {{cmduser|sudo modprobe hdaps}}&lt;br /&gt;
&lt;br /&gt;
For a nice 3D show type:&lt;br /&gt;
&lt;br /&gt;
 {{cmduser|sudo apt-get install hdaps-utils}}&lt;br /&gt;
 {{cmduser|hdaps-gl}}&lt;br /&gt;
&lt;br /&gt;
Now you can evaluate acceleration of your Laptop. Your hard disk unfortunately still is not protected. To achive this, try the next chapter. &lt;br /&gt;
&lt;br /&gt;
====Disk Protection====&lt;br /&gt;
&lt;br /&gt;
{{HINT|This one is a little harder to do and can easily fail. If you want to try it anyway, remember, it might not work. In that case you can always reselect your old kernel in grub when booting. So you'd better not delete the old kernel...}}&lt;br /&gt;
&lt;br /&gt;
You'll probably need the following packages:&lt;br /&gt;
{{cmduser|sudo apt-get install build-essential fakeroot kernel-package libncurses5-dev wget bzip2}}&lt;br /&gt;
&lt;br /&gt;
Test your kernel version with {{cmduser|uname -r}}&lt;br /&gt;
&lt;br /&gt;
If you see 2.6.20-15-generic, you can just follow the provided instructions. If you have a different version, adapt this howto to your personal needs. Download the right patch for your kernel version, in my case it was &lt;br /&gt;
[http://article.gmane.org/gmane.linux.drivers.hdaps.devel/993 2.6.30 rc], but now (may 2007) there is a newer available:&lt;br /&gt;
[http://www.nabble.com/attachment/9047418/0/hdaps_protect-2.6.20.patch.bz2 2.6.20]&lt;br /&gt;
You'll find more patches in [[HDAPS#Disk_head_parking]]&lt;br /&gt;
&lt;br /&gt;
Get the kernel sources and patch them:&lt;br /&gt;
&lt;br /&gt;
 {{cmduser|sudo su}}&lt;br /&gt;
 {{cmdroot|cd /linux/src}}&lt;br /&gt;
 {{cmdroot|apt-get install linux-source}}&lt;br /&gt;
 {{cmdroot|cd linux-source-2.6.20}}&lt;br /&gt;
 {{cmdroot|patch -p1 -l &amp;lt; /home/silvan/993-001.bin }}&lt;br /&gt;
&lt;br /&gt;
If you only saw some lines saying &amp;quot;patching line...&amp;quot; and &amp;quot;succeeded...&amp;quot;, then everything is fine.&lt;br /&gt;
{{HINT|If you do not use restricted drivers you can leave that out. I need them for making my atheros wifi working using madwifi.}}&lt;br /&gt;
{{cmdroot|sudo apt-get install linux-restricted-modules-generic linux-restricted-modules-common}}&lt;br /&gt;
&lt;br /&gt;
Take necessary steps for whatever restricted kernel module you want to use, e.g. &lt;br /&gt;
&lt;br /&gt;
For atheros wifi get madwifi-source, I used the one from debian testing, as ubuntu does not povide them: [http://packages.debian.org/testing/net/madwifi-source debian testing madwifi-source]. Install them and unpack the madwifi package in {{path|/usr/src}}.&lt;br /&gt;
&lt;br /&gt;
{{HINT|Go on here if you don't want restricted drivers}}&lt;br /&gt;
Now let's build the kernel; if you need help on this look at [http://howtoforge.org/roll_a_kernel_debian_ubuntu_way this] or [http://www.howtoforge.com/kernel_compilation_ubuntu that] howto from howtoforge.&lt;br /&gt;
&lt;br /&gt;
 {{cmdroot|make clean}}&lt;br /&gt;
 {{cmdroot|make oldconfig}}&lt;br /&gt;
 {{cmdroot|fakeroot make-kpkg clean}}&lt;br /&gt;
 # fakeroot make-kpkg --append-to-version=.hdapscustom kernel_image --initrd binary &lt;br /&gt;
&lt;br /&gt;
This will probably take a very long time, it took me roughly 1:45 hours on my T43. You have to be patient. If it didn't finish with errors, let's now install the newly built kernel. First check the name of our kernel package, and then install at least the image and the header packages. I just installed all like this:&lt;br /&gt;
&lt;br /&gt;
 {{cmdroot|cd /usr/src}}&lt;br /&gt;
 {{cmdroot|ls -l}}&lt;br /&gt;
 {{cmdroot|dpkg -i}}&lt;br /&gt;
 {{cmdroot|dpkg -i linux-headers-2.6.20.3-ubuntu1.hdapscustom_2.6.20.3-ubuntu1.hdapscustom-10.00.Custom_i386.deb}}&lt;br /&gt;
 {{cmdroot|dpkg -i linux-doc-2.6.20.3-ubuntu1.hdapscustom_2.6.20.3-ubuntu1.hdapscustom-10.00.Custom_all.deb }}&lt;br /&gt;
 {{cmdroot|dpkg -i linux-image-2.6.20.3-ubuntu1.hdapscustom_2.6.20.3-ubuntu1.hdapscustom-10.00.Custom_i386.deb}}&lt;br /&gt;
 {{cmdroot|dpkg -i linux-manual-2.6.20.3-ubuntu1.hdapscustom_2.6.20.3-ubuntu1.hdapscustom-10.00.Custom_all.deb }}&lt;br /&gt;
 {{cmdroot|dpkg -i linux-source-2.6.20.3-ubuntu1.hdapscustom_2.6.20.3-ubuntu1.hdapscustom-10.00.Custom_all.deb}}&lt;br /&gt;
&lt;br /&gt;
Do the same for all packages that were created for restricted modules. Maybe you have to create them first with something like:&lt;br /&gt;
&lt;br /&gt;
 # cmdroot|fakeroot make-kpkg --append-to-version=.hdapscustom --added-modules madwifi modules_image&lt;br /&gt;
&lt;br /&gt;
And let's not forget to leave the super user shell&lt;br /&gt;
&lt;br /&gt;
{{cmdroot|exit}}&lt;br /&gt;
&lt;br /&gt;
Now is the time to reboot and to test if everything went fine ;-) Verify with {{cmduser|uname -a}} if you booted the right kernel. If you want you can decide which kernel should be booted by default in /boot/grub/menu.lst selecting the number of the boot entry in the line after 'default'.&lt;br /&gt;
&lt;br /&gt;
Check the output of&lt;br /&gt;
&lt;br /&gt;
$ dmesg | grep hdaps&lt;br /&gt;
&lt;br /&gt;
In my case the new kernel printed nothing, the old kernel printed:&lt;br /&gt;
&lt;br /&gt;
 {{cmdresult|hdaps: IBM ThinkPad T43 detected.}}&lt;br /&gt;
 {{cmdresult|hdaps: initial latch check good (0x01).}}&lt;br /&gt;
 {{cmdresult|hdaps: device successfully initialized.}}&lt;br /&gt;
 {{cmdresult|input: hdaps as /class/input/input4}}&lt;br /&gt;
 {{cmdresult|hdaps: driver successfully loaded.}}&lt;br /&gt;
&lt;br /&gt;
Next step is to install hdapsd, the daemon, that actually stops the hard disk. Get the latest user space daemon [http://www.zen24593.zen.co.uk/hdaps/ hdapsd]. Compile and install it using&lt;br /&gt;
&lt;br /&gt;
 {{cmduser|gcc -o hdapsd hdapsd-*.c}}&lt;br /&gt;
 {{cmduser|sudo cp hdapsd /usr/local/sbin/}}&lt;br /&gt;
 &lt;br /&gt;
Start hdapsd using {{cmduser|hdapsd -d sda -s 15}}&lt;br /&gt;
&lt;br /&gt;
{{HINT|What is the best way to start the userspace daemon automatically at boot time? -- There is an init script available in the hdapsd package from the debian (lenny) repos. Just install the package and replace the /usr/bin/hdapsd with the one you compiled --[[User:Mozz|Mozz]] 07:55, 30 September 2007 (UTC)}}&lt;br /&gt;
&lt;br /&gt;
If you move your Laptop you should now see the console printing messages if the disk is parked or not.&lt;br /&gt;
{{HELP|It didn't work for me: hdapsd only starts with sudo. Without it says &amp;quot;open(protect_file): Permission denied&amp;quot;. The output of sudo hdapsd is saying parking/un-parking, but with a lot of &amp;quot;open: No such file or directory&amp;quot; in between. Any help is appreciated! Use gcc-3.4 to compile, then it should work.}}&lt;br /&gt;
&lt;br /&gt;
$ dmesg | grep protect&lt;br /&gt;
&lt;br /&gt;
should confirm this. If the output  says something like {{cmdresult|unload support NOT reported..}} and {{cmdresult|head park not requested, used standby!..}}, have a look at http://thinkwiki.org/wiki/Problem_with_APS_harddisk_parking and examine if your drive might have problems with the disk protection.&lt;br /&gt;
&lt;br /&gt;
A useful gimmick is the gnome-hdaps-applet showing the current disk protection state in the panel. KDE users look at [http://www.kde-apps.org/content/show.php?content=34134 khdapsmonitor] for an alternative. To install gnome-hdaps-applet, do the following: &lt;br /&gt;
&lt;br /&gt;
 {{cmduser|mkdir gnome-hdaps-applet}}&lt;br /&gt;
 {{cmduser|cd gnome-hdaps-applet}}&lt;br /&gt;
 {{cmduser|wget http://www.zen24593.zen.co.uk/hdaps/gnome-hdaps-applet-20060120.tar.gz}}&lt;br /&gt;
 {{cmduser|tar -xzf gnome-hdaps-applet-20060120.tar.gz}}&lt;br /&gt;
 {{cmduser|sudo apt-get install libpanel-applet2-dev}}&lt;br /&gt;
 {{cmduser|gcc $(pkg-config --cflags --libs libpanelapplet-2.0) -o gnome-hdaps-applet gnome-hdaps-applet.c}}&lt;br /&gt;
 {{cmduser|sudo install gnome-hdaps-applet /usr/bin/}}&lt;br /&gt;
 {{cmduser|sudo mkdir /usr/share/pixmaps/gnome-hdaps-applet/}}&lt;br /&gt;
 {{cmduser|sudo cp *.png /usr/share/pixmaps/gnome-hdaps-applet/}}&lt;br /&gt;
 {{cmduser|sudo cp GNOME_HDAPS_StatusApplet.server /usr/lib/bonobo}}&lt;br /&gt;
{{HELP|Everything seems to work fine with the patched kernel - unless wifi. Ubuntu doesn't find my wireless device anymore. Probably this is because my Atheros card needs restricted modules. Find more infos on http://madwifi.org/wiki/ on compiling Atheros wifi modules. Maybe the kernel compile goal modules or modules_image could help. Could please someone detail the preferred way to handle this?}}o/servers/}}&lt;br /&gt;
&lt;br /&gt;
Afterwards add the applet to your panel manually. Be sure to see the play/pause sign switching when moving your laptop :-)&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
{{HELP|The applet always shows the play sign, never the pause sign. I think this the same problem like the hdapsd-sudo problem -- Make sure, it doesn't due to the sensitivity value of ''15'' you specified when starting the daemon (it has to be a value between 0 and 1)}}&lt;br /&gt;
&lt;br /&gt;
More information can be found on [[How to protect the harddisk through APS]] or [[Installing_Ubuntu_6.06_on_a_ThinkPad_T43#Active_Protection_System]] or [http://ubuntuforums.org/showthread.php?t=122863 Howto for edgy].&lt;br /&gt;
If you speak italian (unfortuately my level is really, really poor), [http://www.ismprofessional.net/pascucci/documenti/z60t/ar01s05.html Fedora on z60t] might be of use to you. Maybe even somebody would find the time to translate and adopt this fedora howto to english and ubuntu?&lt;br /&gt;
&lt;br /&gt;
===Track Point Middle Key Scrolling===&lt;br /&gt;
&lt;br /&gt;
In my case the track point worked out of the box, but the middle mouse button for scrolling did not. [[How to configure the TrackPoint]] explains how to solve this. The steps you need to follow are in section &amp;quot;Using the X server (kernel 2.6.11+)&amp;quot;.&lt;br /&gt;
However you don't need to follow the steps in &amp;quot;EmulateWheelTimeout temporarily broken (-&amp;gt; fix for Ubuntu Dapper)&amp;quot; as this is fixed already if you have all your packages up-to-date.&lt;br /&gt;
&lt;br /&gt;
Follow the instructions in the sections &amp;quot;Configure firefox for using trackpoint horizontal scrolling&amp;quot; and &amp;quot;Configure Opera for using trackpoint horizontal scrolling&amp;quot; as well, if you are using one of the two browsers.&lt;br /&gt;
&lt;br /&gt;
If Firefox is scrolling into wrong directions, look at [[Talk:How_to_configure_the_TrackPoint#TrackPoint_scrolling_inverted_in_Firefox]].&lt;br /&gt;
&lt;br /&gt;
===Fingerprint Reader===&lt;br /&gt;
&lt;br /&gt;
[[How to enable the fingerprint reader]] has a good explanation for a very complicated way of activating your fingerprint reader using a restricted driver.&lt;br /&gt;
&lt;br /&gt;
A free alternative to this is available at [http://thinkfinger.sourceforge.net]:&lt;br /&gt;
[[How to enable the fingerprint reader with ThinkFinger]] provides more details, also the [https://wiki.ubuntu.com/ThinkFinger Ubuntu wiki] does.&lt;br /&gt;
&lt;br /&gt;
===Special keys ===&lt;br /&gt;
&lt;br /&gt;
If the following standard settings are not enough for you, you'll find more info here: [[How to get special keys to work]]&lt;br /&gt;
&lt;br /&gt;
===={{ibmkey|Access IBM|#495988}} to start application====&lt;br /&gt;
The {{ibmkey|Access IBM|#495988}} works out of the box. Just go to your shortcut configuration dialog and choose what action you want to connect with pressing this button, e.g. opening your home folder or the terminal, switching to fullscreen, opening help...&lt;br /&gt;
&lt;br /&gt;
===={{key|CAPS}} to substitute {{key|Win}}/{{key|Super}}====&lt;br /&gt;
For using your {{key|CAPS}} key as a replacement for the lacking {{key|Win}}/{{key|Super}} key, add following to your {{path|~/.Xmodmap}}&lt;br /&gt;
&lt;br /&gt;
 ! No Caps Lock&lt;br /&gt;
 clear lock&lt;br /&gt;
 ! Caps Lock as Win key&lt;br /&gt;
 add mod4 = Caps_Lock&lt;br /&gt;
&lt;br /&gt;
To avoid restarting X type {{cmduser|xmodmap ~/.Xmodmap}}&lt;br /&gt;
&lt;br /&gt;
===={{ibmkey|Forward|#494949}}/{{ibmkey|Backward|#494949}} in browsers====&lt;br /&gt;
&lt;br /&gt;
=====Firefox=====&lt;br /&gt;
For using the {{ibmkey|Forward|#494949}}/{{ibmkey|Backward|#494949}} Keys in your browser add also these lines to your {{path|~/.Xmodmap}} as at least Firefox gets confused with their original setting as XF86Back/XF86Forward.&lt;br /&gt;
&lt;br /&gt;
 ! back and forward browser keys&lt;br /&gt;
 keycode 234 = F19&lt;br /&gt;
 keycode 233 = F20&lt;br /&gt;
&lt;br /&gt;
For Firefox add these lines to your {{path|/usr/share/firefox/chrome/browser/content/browser/browser.xul}}&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;key id=&amp;quot;goBackKb3&amp;quot; keycode=&amp;quot;VK_F19&amp;quot; command=&amp;quot;Browser:Back&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;key id=&amp;quot;goForwardKb3&amp;quot; keycode=&amp;quot;VK_F20&amp;quot; command=&amp;quot;Browser:Forward&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
directly after these lines:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;key id=&amp;quot;goBackKb&amp;quot;  keycode=&amp;quot;VK_LEFT&amp;quot; command=&amp;quot;Browser:Back&amp;quot; modifiers=&amp;quot;alt&amp;quot;/&amp;gt;&lt;br /&gt;
 &amp;lt;key id=&amp;quot;goForwardKb&amp;quot;  keycode=&amp;quot;VK_RIGHT&amp;quot; command=&amp;quot;Browser:Forward&amp;quot; modifiers=&amp;quot;alt&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Opera=====&lt;br /&gt;
For Opera add these pairs in Tool-&amp;gt;Preferences-&amp;gt;Advanced-&amp;gt;Shortcuts-&amp;gt;Keyboard setup-&amp;gt;Edit-&amp;gt;Browser Window-&amp;gt;New&lt;br /&gt;
* If you did the Firefox Xmodmap entry: F20-Forward, F19-Back&lt;br /&gt;
* If you didn't add the lines: XF86Forward-Forward, XF86Back-Back&lt;br /&gt;
&lt;br /&gt;
=====Konqueror=====&lt;br /&gt;
In Konqueror it's working out of the box. But if you did the Xmodmap settings you have to adjust Konqueror, too. Just go to Settings-&amp;gt;Configure Shortcuts, look for Back and Forward and set the alternative shortcut in the custom dialog by pressing the respective key. If you are using KDE you'll be probable prefering to do that in the Configuration Center to make these changes visible to all KDE Apps.&lt;br /&gt;
&lt;br /&gt;
===Toggle Touchpad on/off===&lt;br /&gt;
&lt;br /&gt;
Some people like to be able to switch their Touchpad on and off on the fly to avoid touching it during typing or pressing buttons when having the laptop  lying on the lap. The following settings make this easily possible.&lt;br /&gt;
Add the option &amp;quot;SHMconfig&amp;quot; to your synaptics section in the xorg.conf by typing {{cmduser|sudo gedit /etc/X11/xorg.conf}} and set it to &amp;quot;on&amp;quot;:&lt;br /&gt;
 ...&lt;br /&gt;
 Section &amp;quot;InputDevice&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
        Driver      &amp;quot;synaptics&amp;quot;&lt;br /&gt;
        ...&lt;br /&gt;
        Option      &amp;quot;SHMconfig&amp;quot;   &amp;quot;on&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
 EndSection&lt;br /&gt;
 ...&lt;br /&gt;
This makes the synaptics touchpad toggable during runtime. If you prefer the touchpad to be switched off always add following line instead:&lt;br /&gt;
        Option      &amp;quot;TouchpadOff&amp;quot; &amp;quot;1&amp;quot;   &lt;br /&gt;
To make this setting working we need to restart X. The best choice is to log off your window manager (don't forget to close programs where you might loose data) and press {{key|Ctrl}} + {{key|Alt}} + {{key|Backspace}}.&lt;br /&gt;
&lt;br /&gt;
To switch the touchpad on and off you can use synclient. But if you prefer a program with a nice GUI, try gsynaptics (or ksynaptics if you use KDE):&lt;br /&gt;
{{cmduser|sudo apt-get install gsynaptics}}&lt;br /&gt;
gsynaptics integrates into your gnome settings menu, ksynaptics in the KDE Control Center. They preety much look the same, ksynaptics seems to just offer one additional setting: to switch your touchpad off automatically when typing. For easier reachability I just added a shortcut to my panel.&lt;br /&gt;
To make gnome remember your last settings after a system restart go to your session configuration and add the program gsynaptics-init to the startup programs. I did not try this with KDE, sorry.&lt;br /&gt;
&lt;br /&gt;
Find more information on [[Synaptics TouchPad driver for X]]&lt;br /&gt;
&lt;br /&gt;
===IrDA===&lt;br /&gt;
&lt;br /&gt;
Find information here: [[How to make use of IrDA]]&lt;br /&gt;
&lt;br /&gt;
===VGA out ===&lt;br /&gt;
&lt;br /&gt;
I didn't try it, but it looks easy: [http://help.nceas.ucsb.edu/index.php/Enable_vga_out_on_ATI_Thinkpads How to enable VGA out]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Swap and Hibernation problem ===&lt;br /&gt;
&lt;br /&gt;
Ubunutu uses unique IDs (UUIDs) to identify partitions. The advantage of this is you do not have to differentiate between sda and hda devices. So if upgrading to modern libata drivers will work without having to rewrite hda devices to sda ones.&lt;br /&gt;
&lt;br /&gt;
However feisty seems to have a problem with this naming method and swap partitions on some installations. Do&lt;br /&gt;
{{cmduser|sudo free}} to check if your swap partition is used. If the line with swap it it just returns three times &amp;quot;0&amp;quot;, your swap partition is not being used and you are most probably affected by [https://launchpad.net/ubuntu/+bug/66637/ bug 66637]. The problem is that your system generates a new UUID for your swap partition on every reboot. Your old settings in the fstab then cannot be used anymore and your system does not use any swap. Without swap hibernate (suspend to disk) does not work either (standby/suspend to RAM still does).&lt;br /&gt;
&lt;br /&gt;
Follow these instructions to fix this&lt;br /&gt;
&lt;br /&gt;
# determine your swap with {{cmduser|sudo fdisk -l}}. In my case it was /dev/sda2&lt;br /&gt;
# do mkswap on your swap partition and record the uuid which this command outputs, e.g. {{cmduser|sudo mkswap /dev/sda2}}&lt;br /&gt;
# now use this UUID to put into fstab: Look for the line with the swap partition and replace the old UUID with the new one: {{cmduser|sudo gedit /etc/fstab}}&lt;br /&gt;
# add the same UUID intu your resume file: {{cmduser|sudo gedit /etc/initramfs-tools/conf.d/resume}}; the file should only look like this: &amp;quot;RESUME=UUID=&amp;lt;the-swap-partition-uuid&amp;gt;&amp;quot;&lt;br /&gt;
# do {{cmduser|update-initramfs -u}}&lt;br /&gt;
# update your grub configuration; edit it with {{cmduser|sudo gedit /boot/grub/menu.lst}} and look for the line that says &amp;quot;# defoptions=quiet splash&amp;quot; and change it to &amp;quot;# defoptions=quiet splash resume=&amp;lt;the-swap-partition-uuid&amp;gt;&amp;quot;&lt;br /&gt;
# reboot normally. After this test with {{cmduser|sudo free}} or with {{cmduser|swapon -s}} if your swap is now activated&lt;br /&gt;
# Now you can test hibernate, too.&lt;br /&gt;
&lt;br /&gt;
Thanks to various people on the bug thread.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Bluetooth===&lt;br /&gt;
I do not need it, so I just switched it off using&lt;br /&gt;
:{{cmdroot|echo disable &amp;gt; /proc/acpi/ibm/bluetooth}}&lt;br /&gt;
&lt;br /&gt;
More info on how to use Bluetooth can be found in [[How to setup Bluetooth]],&lt;br /&gt;
nice HowTos are available in the [https://help.ubuntu.com/community/BluetoothSetup Ubuntu wiki].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Bluetooth Mouse and Keyboards===&lt;br /&gt;
First identify your wireless mouse or keyboard. Start putting them in pairing mode, and run &lt;br /&gt;
&lt;br /&gt;
:{{cmdroot|sudo hidd --search}}&lt;br /&gt;
&lt;br /&gt;
It should show your device address and hopefully connect it. If does not get connected, or you can't see the address, type:&lt;br /&gt;
&lt;br /&gt;
:{{cmdroot|hcitool scan}}&lt;br /&gt;
&lt;br /&gt;
Then manually connect with:&lt;br /&gt;
:{{cmdroot|sudo hidd --connect XX:XX:XX:XX:XX:XX}}&lt;br /&gt;
Replacing the XX with your device's address.&lt;br /&gt;
&lt;br /&gt;
If you want the device to be enabled each time you boot, edit your /etc/default/bluetooth (bluez-utils in some distros) with the following:&lt;br /&gt;
&lt;br /&gt;
BLUETOOTH_ENABLED=1&lt;br /&gt;
&lt;br /&gt;
HIDD_ENABLED=1&lt;br /&gt;
HIDD_OPTIONS=&amp;quot;--master --server&amp;quot;&lt;br /&gt;
HIDD_OPTIONS=&amp;quot;--connect XX:XX:XX:XX:XX:X --server&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Repeat the --connect line for each device.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
More info on how to use Bluetooth can be found in [[How to setup Bluetooth]],&lt;br /&gt;
nice HowTos are available in the [https://help.ubuntu.com/community/BluetoothSetup Ubuntu wiki].&lt;br /&gt;
&lt;br /&gt;
==References==&lt;br /&gt;
* [[Installing Ubuntu 6.10 on a ThinkPad T43]]&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
* [[Ubuntu 7.10 on a Thinkpad T43]]&lt;br /&gt;
&lt;br /&gt;
== External links ==&lt;br /&gt;
* This guide is listed at the [http://tuxmobil.org/ibm.html TuxMobil Linux laptop and notebook installation guides survey (IBM/Lenovo)].&lt;br /&gt;
&lt;br /&gt;
Hope this helped :-)&lt;br /&gt;
tec&lt;br /&gt;
&lt;br /&gt;
[[Category: T43]] [[Category: Ubuntu 7.04]]&lt;/div&gt;</summary>
		<author><name>Mozz</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=How_to_protect_the_harddisk_through_APS&amp;diff=33567</id>
		<title>How to protect the harddisk through APS</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=How_to_protect_the_harddisk_through_APS&amp;diff=33567"/>
		<updated>2007-09-30T07:23:36Z</updated>

		<summary type="html">&lt;p&gt;Mozz: /* Installing hdapsd */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|style=&amp;quot;vertical-align:top;padding-right:20px;width:10px;white-space:nowrap;&amp;quot; | __TOC__&lt;br /&gt;
|style=&amp;quot;vertical-align:top&amp;quot; |&lt;br /&gt;
This page tells you how to make the [[Active Protection System]] work under Linux to protect your harddrive from damage in case of a notebook drop or other kind of impact while it is running.&lt;br /&gt;
&lt;br /&gt;
Specific instructions for {{Fedora}} can be found [[Installing_Fedora_Core_5_on_a_ThinkPad_X41_Tablet#Harddrive_Active_Protection_System_.28HDAPS.29|here]].&lt;br /&gt;
&lt;br /&gt;
For {{Debian}} (Etch) have a look at [[Installing_Debian_Etch_on_a_ThinkPad_Z60m#Active_Protection_System|this]].&lt;br /&gt;
&lt;br /&gt;
== How APS works in Linux ==&lt;br /&gt;
APS in Linux consists of four components on the software side:&lt;br /&gt;
* The [[HDAPS]] driver (included in recent kernels). It exports a sysfs interface providing the acceleration values.&lt;br /&gt;
* The [http://www.dresco.co.uk/hdaps/ &amp;lt;tt&amp;gt;hdaps_protect&amp;lt;/tt&amp;gt;] disk protection kernel patch, which exports a sysfs interface that enables an ide or sata disk to be protected by a userspace process.&lt;br /&gt;
* The [http://www.dresco.co.uk/hdaps/ &amp;lt;tt&amp;gt;hdapsd&amp;lt;/tt&amp;gt;] disk protection userspace daemon. It monitors the acceleration values through the HDAPS interface and automatically initiates disk protection through the hdaps_protect interface - given that the movement exceeds a user specified threshold.&lt;br /&gt;
* Optional: the [http://roy.marples.name/node/269 &amp;lt;tt&amp;gt;khdapsmonitor KDE System Tray applet&amp;lt;/tt&amp;gt;] or the [http://www.dresco.co.uk/hdaps/ &amp;lt;tt&amp;gt;gnome-hdaps-applet&amp;lt;/tt&amp;gt;]. These applets provide a visual indication of the disk protection status and also a graphical interface for adjusting configuration options for &amp;lt;tt&amp;gt;hdapsd&amp;lt;/tt&amp;gt;.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Installation==&lt;br /&gt;
As mentioned above, the hdaps kernel driver found in recent kernels is only responsible for reading the accelerometer data and exporting it through the sysfs interface. &lt;br /&gt;
&lt;br /&gt;
In order to use this information to protect the disk, some additional steps are required.&lt;br /&gt;
&lt;br /&gt;
* Download and build the latest hdaps_protect disk protection kernel patches.&lt;br /&gt;
* Enable the drivers in the kernel (requires kernel rebuild).&lt;br /&gt;
* Download, build and configure the hdapsd userspace daemon.&lt;br /&gt;
* Download and build one of the applets to get a real-time representation of the disk protection status.&lt;br /&gt;
&lt;br /&gt;
===Getting the files===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
! Latest Sources&lt;br /&gt;
|&lt;br /&gt;
See [[HDAPS#Disk_head_parking|HDAPS - Disk head parking]]&lt;br /&gt;
|-&lt;br /&gt;
! {{Debian}}&lt;br /&gt;
|&lt;br /&gt;
*&amp;lt;tt&amp;gt;hdapsd&amp;lt;/tt&amp;gt; package: http://packages.debian.org/unstable/misc/hdapsd&lt;br /&gt;
|-&lt;br /&gt;
! {{Fedora}}&lt;br /&gt;
| see instructions [[Installing_Fedora_Core_5_on_a_ThinkPad_X41_Tablet#Harddrive_Active_Protection_System_.28HDAPS.29|here]]&lt;br /&gt;
*kernel RPM packages including &amp;lt;tt&amp;gt;hdaps_protect&amp;lt;/tt&amp;gt;: http://www.dresco.co.uk/hdaps/ &lt;br /&gt;
*kernel RPM packages including &amp;lt;tt&amp;gt;hdaps_protect&amp;lt;/tt&amp;gt; and [[Software Suspend 2]]: http://mhensler.de/swsusp/download/yum/development/fc5/ (build 2084_2 and up)&lt;br /&gt;
|-&lt;br /&gt;
! {{Gentoo}}&lt;br /&gt;
|&lt;br /&gt;
*&amp;lt;tt&amp;gt;hdapsd&amp;lt;/tt&amp;gt;: [http://sources.gentoo.org/viewcvs.py/gentoo-x86/app-laptop/hdapsd available]&lt;br /&gt;
*&amp;lt;tt&amp;gt;khdapsmonitor&amp;lt;/tt&amp;gt;: [http://sources.gentoo.org/viewcvs.py/gentoo-x86/app-laptop/khdapsmonitor available]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Adding kernel support ===&lt;br /&gt;
A kernel patch is required for disk head parking and queue freezing.&lt;br /&gt;
&lt;br /&gt;
==== Manually patching and compiling a kernel ====&lt;br /&gt;
As root, do:&lt;br /&gt;
:{{cmdroot|cd /usr/src/linux}}&lt;br /&gt;
:{{cmdroot|patch -p1 &amp;lt; ~/hdaps_protect.20060409.patch}}&lt;br /&gt;
:{{cmdroot|make clean}}&lt;br /&gt;
:{{cmdroot|make}}&lt;br /&gt;
:{{cmdroot|make modules_install}}&lt;br /&gt;
&lt;br /&gt;
=== Installing hdapsd ===&lt;br /&gt;
==== Manual compilation from source ====&lt;br /&gt;
{{NOTE|1=There has been a new release of hdapsd which doesn't use sysfs anymore and therefore reduces timer interrupts. You need tp_smapi 0.32 for this. See also: http://article.gmane.org/gmane.linux.drivers.hdaps.devel/1040 .}}&lt;br /&gt;
* Download the &amp;lt;tt&amp;gt;hdapsd&amp;lt;/tt&amp;gt; sources (see above)&lt;br /&gt;
* Compile using {{cmdroot|gcc -o hdapsd hdapsd-*.c}}&lt;br /&gt;
* Run {{cmdroot|./hdapsd -d sda -s 12 -a}} (replace &amp;lt;tt&amp;gt;sda&amp;lt;/tt&amp;gt; with your hard disk device; run {{cmdroot|./hdapsd}} without arguments for help)&lt;br /&gt;
&lt;br /&gt;
==== Gentoo ====&lt;br /&gt;
{{NOTE|1=hdapsd was added to the official portage tree on the 26th June 2006.}}&lt;br /&gt;
{{Gentoo}} users can try the ebuild attached to [http://bugs.gentoo.org/show_bug.cgi?id=119845 gentoo bug 119845].&lt;br /&gt;
*Add hdapsd support in your kernel: device drivers -&amp;gt; hardware monitoring -&amp;gt; ... (you need it as a module if you want to use tp_smapi and hdaps, see [[Tp_smapi]])&lt;br /&gt;
*Download the ebuild, use same ebuild date as the kernel-patch.&lt;br /&gt;
*Make known the portage an extern ebuild path and add the following line to {{path|/etc/make.conf}}:&lt;br /&gt;
 PORTDIR_OVERLAY=&amp;quot;/usr/local/portage/&amp;quot; (or any other location)&lt;br /&gt;
*Create directory {{path|/usr/local/portage}} and {{path|/usr/local/portage/app-laptop/}}&lt;br /&gt;
*Copy the downloaded ebuild to {{path|/usr/local/portage/app-laptop}} ({{path|/usr/local/portage/app-laptop/hdapsd}} should now exists)&lt;br /&gt;
*Make portage known the new ebuild and creat digist with:&lt;br /&gt;
:{{cmdroot|ebuild /usr/local/portage/app-laptop/hdapsd/hdapsd-20060326.ebuild digest}}&lt;br /&gt;
*Optional: Copy source file to portage distfiles (if no internet connection is available): &lt;br /&gt;
:{{cmdroot|cp hdapsd-20060326.c /usr/portage/distfiles}}&lt;br /&gt;
*Accept the x86 keyword for this package: {{cmdroot|echo &amp;quot;app-laptop/hdapsd ~x86&amp;quot; &amp;gt;&amp;gt; /etc/portage/package.keywords}}&lt;br /&gt;
*Install hdapsd with: {{cmdroot|emerge hdapsd}}.&lt;br /&gt;
*Edit {{path|/etc/conf.d/hdapsd}} (change your harddrive if neccessary: mine is sda, and change the value from 5, 5 is to sensitive, 12 is a good value in my opinion).&lt;br /&gt;
*start deamon with: {{cmdroot|/etc/init.d/hdapsd start}}&lt;br /&gt;
*Optional: add to default runlevel: {{cmdroot|rc-update add hdapsd default, rc-update add hdapsd battery}}&lt;br /&gt;
Write an eMail to abartel[Ã¤d]htwm.de, if you want to get my hdapsd-20060326.ebuild and please upload it.&lt;br /&gt;
&lt;br /&gt;
=== Building an applet ===&lt;br /&gt;
====hdaps-gl====&lt;br /&gt;
*Make sure you have installed hdaps [and loaded] and ?opengl?&lt;br /&gt;
*Download &amp;lt;tt&amp;gt;hdaps-gl-0.0.5&amp;lt;/tt&amp;gt; from the web.&lt;br /&gt;
*Extract files to {{path|/opt/hdaps-gl}}.&lt;br /&gt;
*{{cmdroot|make}}&lt;br /&gt;
*Start the applet: {{cmdroot|./hdaps-gl}}&lt;br /&gt;
&lt;br /&gt;
==Troubleshooting==&lt;br /&gt;
See the [[Problem with APS harddisk parking]] page for troubleshooting APS issues.&lt;br /&gt;
{{NOTE|1=If you use [[tp_smapi]], remember to include the option &amp;lt;tt&amp;gt;HDAPS=1&amp;lt;/tt&amp;gt; when [[Tp_smapi#Installation|installing tp_smapi]]. Also, you might need to build the hdaps driver as module.}}&lt;br /&gt;
&lt;br /&gt;
==Further Information==&lt;br /&gt;
*Additonal information and support is available through the [[Mailinglists#HDAPS Developers Mailinglist|hdaps-devel]] mailinglist and its archive.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:R50]] [[Category:R50p]] [[Category:R51]] [[Category:R52]] [[Category:T41]] [[Category:T41p]] [[Category:T42]] [[Category:T42p]] [[Category:T43]] [[Category:T43p]] [[Category:T60]] [[Category:T60p]] [[Category:T61]] [[Category:X40]] [[Category:X41]] [[Category:X41 Tablet]] [[Category:X60]] [[Category:X60s]] [[Category:Z60m]] [[Category:Z60t]] [[Category:Z61m]] [[Category:Z61e]] [[Category:Z61m]]&lt;/div&gt;</summary>
		<author><name>Mozz</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Problem_with_video_output_switching&amp;diff=32898</id>
		<title>Problem with video output switching</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Problem_with_video_output_switching&amp;diff=32898"/>
		<updated>2007-09-03T17:56:15Z</updated>

		<summary type="html">&lt;p&gt;Mozz: /* Affected Models */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Affected Models==&lt;br /&gt;
*ThinkPad {{T40}}, {{T40p}}, {{T41}}, {{T41p}}, {{T42}}, {{T42p}}, {{T43}}, {{T43p}}, {{T60}}, {{T61}}&lt;br /&gt;
*ThinkPad {{X22}}, {{X23}}, {{X31}}, {{X41}}, {{X60s}}&lt;br /&gt;
&lt;br /&gt;
==Problem Description==&lt;br /&gt;
External video output is not working, or it is not possible, using the  FN-F7 key, to switch between the LCD and the external monitor in the following way:&lt;br /&gt;
 LCD --&amp;gt; external Monitor--&amp;gt; both --&amp;gt;LCD&lt;br /&gt;
However ''cloning'' is possible for the Intel chipsets, see below.&lt;br /&gt;
&lt;br /&gt;
===Problems with Intel chipsets===&lt;br /&gt;
Disabling the internal LCD (e.g. when using an external Monitor) doesn't seem to work reliably.&lt;br /&gt;
&lt;br /&gt;
* For Xorg 7.022 one can clone the LCD display to an external monitor, adding the following lines to the Device section in the xorg.conf file:&lt;br /&gt;
 Section &amp;quot;Device&amp;quot;&lt;br /&gt;
  Identifier	&amp;quot;Generic Video Card&amp;quot;&lt;br /&gt;
  Driver		&amp;quot;i810&amp;quot;&lt;br /&gt;
  Option          &amp;quot;Clone&amp;quot; &amp;quot;true&amp;quot;&lt;br /&gt;
  Option          &amp;quot;MonitorLayout&amp;quot; &amp;quot;CRT,LFP&amp;quot;&lt;br /&gt;
however you can not switch between these screens as described above, once you use FN-F7 the cloned display is lost.&lt;br /&gt;
&lt;br /&gt;
* i810switch doesn't have any effect. After disabling the LCD it is still on (but the status display of i810switch claims that is is switched off). &lt;br /&gt;
&lt;br /&gt;
* The following works with Fedora Core 6 on an {{X60s}} and CentOS 5 on {{X60}}: i810switch 0.6.5 with the patch found on http://thpinfo.com/2006/patches/i810switch_macbook_support.patch  can switch between LCD and CRT (and initially CRT is off) (NOTE: The first hunk of this patch does not apply to the source, just remove it, it is unnecessary). This patch makes i810switch recognize the i915 chipset. It should thus be doable to use this with an ACPI event/action to do {{key|Fn}}{{key|F7}} switching. After installing i810switch and its i810rotate script and the missing [[ibm-acpi]] kernel module I did the following to achieve just that:&lt;br /&gt;
&lt;br /&gt;
In /etc/rc.local:&lt;br /&gt;
 modprobe ibm_acpi&lt;br /&gt;
 echo enable,0x084c &amp;gt; /proc/acpi/ibm/hotkey&lt;br /&gt;
&lt;br /&gt;
in /etc/acpi/events/videoswitch.conf:&lt;br /&gt;
 event=ibm/hotkey HKEY 00000080 00001007&lt;br /&gt;
 action=/etc/acpi/actions/video-rotate.sh&lt;br /&gt;
&lt;br /&gt;
Make sure the event code is correct. If acpid doesn't seem to recognise the event, try to recopy it from acpi log.&lt;br /&gt;
&lt;br /&gt;
in /etc/acpi/actions/video-rotate.sh&lt;br /&gt;
 #!/bin/bash&lt;br /&gt;
 exec /usr/sbin/i810rotate&lt;br /&gt;
&lt;br /&gt;
* i855crt works see: http://stefan.desire.ch/howto/x41debian/#graphics for details.&lt;br /&gt;
&lt;br /&gt;
* With [[ibm-acpi]], {{cmdroot|echo lcd_disable &amp;gt;/proc/acpi/ibm/video}} works, but {{cmdroot|echo lcd_enable &amp;gt;/proc/acpi/ibm/video}} doesn't work - so one can't enable it anymore after disabling it. (the strange thing is that when switching to a console with {{key|ctrl}}{{key|alt}}{{key|F1}} the LCD display is used for it, so there must be some way to enable it but I can't find out how to control this in X). I've tried this with version 0.8 and version 0.11 of [[ibm-acpi]].&lt;br /&gt;
** {{key|Fn}}{{key|F7}} lets me enable the internal LCD after I disabled it with {{cmdroot|echo lcd_disable &amp;gt;/proc/acpi/ibm/video}} on my X41 but it corrupts the crt out&lt;br /&gt;
&lt;br /&gt;
===Problems with ATI chipsets===&lt;br /&gt;
*It is a [http://bugs.freedesktop.org/show_bug.cgi?id=2000 known issue] of xorgs radeon driver that {{key|Fn}}{{key|F7}} doesn't work.&lt;br /&gt;
&lt;br /&gt;
You can force the &amp;lt;tt&amp;gt;radeon&amp;lt;/tt&amp;gt; driver to enable both CRT and LCD using &amp;lt;tt&amp;gt;Option &amp;quot;MonitorLayout&amp;quot; &amp;quot;LVDS,CRT&amp;quot;&amp;lt;/tt&amp;gt; in the &amp;lt;tt&amp;gt;&amp;quot;Device&amp;quot;&amp;lt;/tt&amp;gt; section of {{path|/etc/X11/xorg.conf}}. The analogous option for [[fglrx]] is &amp;lt;tt&amp;gt;Option &amp;quot;ForceMonitors&amp;quot; &amp;quot;lvds,crt1&amp;quot;&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The {{cmdroot|radeontool light off}} and {{cmdroot|radeontool dac off}} commands will disable the LCD and CRT if they're been enabled before in the X server, but the corresponding {{cmdroot|radeontool light on}} and {{cmdroot|radeontool dac on}} will not work if the displays have were not enabled when the X server started. Also note that turing off the CRT using this command will not reduce power consumption, nor allow [[fglrx]] to enable power saving modes.&lt;br /&gt;
&lt;br /&gt;
You might try the following: Hit Ctrl+Alt+F1 to switch to a console, hit Fn+F7 to switch video, hit Alt+F7 to switch back to X.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Similar problems exist with XFree86 4.3 and its radeon driver&lt;br /&gt;
&lt;br /&gt;
You '''can''' switch the display off after switching to tty1 (STRG+ALT+F1) by &lt;br /&gt;
  * pressing FN+F7 or&lt;br /&gt;
  * executing ''echo crt_disable &amp;gt; /proc/acpi/ibm/video'' as root&lt;br /&gt;
&lt;br /&gt;
You '''cannot''' do this under X11. The display is always on under X11. I tried &lt;br /&gt;
  * ''echo auto_disable &amp;gt; /proc/acpi/ibm/video''&lt;br /&gt;
  * ''echo crt_disable &amp;gt; /proc/acpi/ibm/video''&lt;br /&gt;
  * ''echo lcd_disable &amp;gt; /proc/acpi/ibm/video''&lt;br /&gt;
  * pressing FN+F7&lt;br /&gt;
&lt;br /&gt;
but none of the above had any effect. If you switch the display off, then start X or switch to it, the display&lt;br /&gt;
will be activated automatically.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====fglrx-Driver====&lt;br /&gt;
Output switching with the Closed-Source ati-driver works: Just use {{cmdroot|aticonfig --query-monitor}} and e.g. {{cmdroot |aticonfig  --enable-monitor...&amp;quot;}}. You can use those two commands in a script, and bind them to {{key|Fn}}{{key|F7}}&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Alternative solution: {{path|fglrx}} 8.28.8 will recognize {{key|Fn}}{{key|F7}} directly, if the key is enabled. This obviates the need for scripts which call aticonfig. To enable the hotkey, issue the command {{cmdroot|echo enable,0xffff &amp;gt;/proc/acpi/ibm/hotkey}}. You'll want to have this run both at boot time, and after resume (on my T43, the hotkey mask is reset on resume). For Ubuntu, I've put a script with the command in both the {{path|/etc/acpi/resume.d}}, and {{path|/etc/acpi/start.d}} directories.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Using kubuntu 7.04 with xorg-driver-fglrx 7.1.0-8.34.8+2.6.20.5-16.29, fglrx failed to recognise {{key|Fn}}{{key|F7}}.  However the following scripts can be used with acpi.  Tested on a T42p.&lt;br /&gt;
&lt;br /&gt;
* /etc/acpi/events/ibmvideobtn&lt;br /&gt;
  # /etc/acpi/events/ibmvideobtn&lt;br /&gt;
  # This is called when the user presses the video button.&lt;br /&gt;
  event=ibm/hotkey HKEY 00000080 00001007&lt;br /&gt;
  action=/etc/acpi/ibm-video.sh&lt;br /&gt;
&lt;br /&gt;
* /etc/acpi/ibm-video.sh&lt;br /&gt;
  #!/bin/sh&lt;br /&gt;
 &lt;br /&gt;
  # ACPI Scripts run as root, but the display will not allow access&lt;br /&gt;
  # from other users.&lt;br /&gt;
  # Lookup the X process for :0, find the -auth command line option,&lt;br /&gt;
  # extract the name of the authority file and use this file&lt;br /&gt;
  # to gain access to the DISPLAY&lt;br /&gt;
  export XAUTHORITY=`ps -ef | grep /usr/bin/X | grep :0 | grep -v grep | \&lt;br /&gt;
    awk -F' -' '{for (i=1; i&amp;lt;=NF; i++) if (substr($i, 0, 4)==&amp;quot;auth&amp;quot;) print $i}' \&lt;br /&gt;
    | awk '{print $2}'`&lt;br /&gt;
 &lt;br /&gt;
  export DISPLAY=:0&lt;br /&gt;
 &lt;br /&gt;
  # Query current monitor setup&lt;br /&gt;
  # Expect output from aticonfig such as:&lt;br /&gt;
  #   Connected monitors: crt1, lvds&lt;br /&gt;
  #   Enabled monitors: crt1&lt;br /&gt;
  #&lt;br /&gt;
  current=`aticonfig --query-monitor | tail -1 | awk -F: '{print $2}' | cut -c2-`&lt;br /&gt;
 &lt;br /&gt;
  # Cycle round to next monitor setup.&lt;br /&gt;
  # We loop through these settings&lt;br /&gt;
  # 1. CRT&lt;br /&gt;
  # 2. LCD&lt;br /&gt;
  # 3. CRT and LCD&lt;br /&gt;
  echo Current video: $current&lt;br /&gt;
  &lt;br /&gt;
  case $current in&lt;br /&gt;
    crt1)&lt;br /&gt;
      echo Switching to LCD&lt;br /&gt;
      aticonfig --enable-monitor=lvds&lt;br /&gt;
      ;;&lt;br /&gt;
    lvds)&lt;br /&gt;
      echo Switching to both LCD and CRT&lt;br /&gt;
      aticonfig --enable-monitor=crt1,lvds&lt;br /&gt;
      ;;&lt;br /&gt;
    &amp;quot;crt1, lvds&amp;quot;)&lt;br /&gt;
      echo Switching to CRT&lt;br /&gt;
      aticonfig --enable-monitor=crt1&lt;br /&gt;
      ;;&lt;br /&gt;
    *)&lt;br /&gt;
      # Unexpected current monitor, change to internal LCD&lt;br /&gt;
      echo Unknown current mode, switching to LCD&lt;br /&gt;
      aticonfig --enable-monitor=lvds&lt;br /&gt;
  esac&lt;br /&gt;
&lt;br /&gt;
====VESA driver====&lt;br /&gt;
&lt;br /&gt;
I have fixed the problem on my T42 by switching to the generic VESA driver in xorg.conf, and rebooting, as mentioned on the xorg bug page above. None of the other solutions worked.&lt;br /&gt;
&lt;br /&gt;
==Related Links==&lt;br /&gt;
*https://bugs.freedesktop.org/show_bug.cgi?id=2000&lt;br /&gt;
&lt;br /&gt;
==Solutions==&lt;br /&gt;
&lt;br /&gt;
====BIOSHotKeys====&lt;br /&gt;
&lt;br /&gt;
Try adding&lt;br /&gt;
 Option &amp;quot;BiosHotKeys&amp;quot; &amp;quot;on&amp;quot;&lt;br /&gt;
to &amp;quot;Device&amp;quot; selection in /etc/xorg.conf. For some reason, this is not the default, and will cause xorg to ignore the BIOS's request to switch modes!&lt;br /&gt;
This fixes the problem for an X22, with xorg 6.9.0.&lt;br /&gt;
&lt;br /&gt;
It fixed this problem for a X31 with xorg 7.1.1 too, but as the CRT is the primary display in some Thinkpads (like in the X31), you can not switch back to the LCD (or both) if xorg has started with the CRT only or both mode, because it sets the resolution and or refresrate to high for the LCD.&lt;/div&gt;</summary>
		<author><name>Mozz</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=AD1984&amp;diff=31800</id>
		<title>AD1984</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=AD1984&amp;diff=31800"/>
		<updated>2007-08-07T17:13:58Z</updated>

		<summary type="html">&lt;p&gt;Mozz: /* Linux ALSA driver */&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;
=== AD1984 ===&lt;br /&gt;
This is a ''Analog Devices'' High-Definition Audio controller&lt;br /&gt;
&lt;br /&gt;
=== Features ===&lt;br /&gt;
* Chipset: AD1984&lt;br /&gt;
* Interface: HD Audio &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 ALSA driver ===&lt;br /&gt;
This device isn't supported by current Alsa Driver [http://www.alsa-project.org/alsa-doc/index.php?vendor=vendor-Analog_Devices#matrix] (as of May 25, 2007).&lt;br /&gt;
&lt;br /&gt;
However, Takashi Iwai has added support to this device in Alsa development version [http://hg.alsa-project.org/alsa-kernel/log?rev=AD1984]... Still have to wait to get it included in the Linux Kernel...  Note: It is rather trivial too get this working in a standard kernel right now, It is only 3 patches on top of the stock 1.0.14 code:&lt;br /&gt;
&lt;br /&gt;
* [http://hg.alsa-project.org/alsa-kernel/rev/958b39f3e8dd Fix Oops with AD1984 thinkpad model]&lt;br /&gt;
* [http://hg.alsa-project.org/alsa-kernel/rev/47ca87407c84 Fix AD1984 basic model]&lt;br /&gt;
* [http://hg.alsa-project.org/alsa-kernel/rev/ca37aeeeb0ea Fix Thinkpad X61/T61 outputs]&lt;br /&gt;
&lt;br /&gt;
Alsa-Driver 1.0.14 added some support for this chip, but did not work on my T61; however, using the latest HG/Mercurial makes everything work.  I created a Debian package for unstable/sid with the HG alsa that works for me, available at [http://people.debian.org/~jello/alsa-modules-2.6.21-2-686_1.0.15~hg2007070601-1+2.6.21-5_i386.deb]. --[[User:Jello|Jello]] 15:31, 6 July 2007 (UTC)&lt;br /&gt;
&lt;br /&gt;
Works with Kernel 2.6.22 and Alsa 1.0.14a&lt;br /&gt;
--[[User:Schlodty|Schlodty]] 12:01, 21 July 2007 (UTC)&lt;br /&gt;
&lt;br /&gt;
Did not get it to work on X61s with either of the above packages. Newer HG packages do support this chip, so alsa 1.0.15 should have full support for this chip. --[[User:hjh|hjh]] 9:09, 27 July 2007 (UTC)&lt;br /&gt;
&lt;br /&gt;
Debian users (both Stable/Etch and Testing) can use the small script [http://www.klabs.be/~fpiat/linux/debian/Lenny_on_Thinkpad_T61/#Sound 1] i wrote to patch and build an alsa module package (with module-assistant). --[[User:Fpiat|Fpiat]] 11:45,04 August 2007 (UTC)&lt;br /&gt;
&lt;br /&gt;
Works with a patched 2.6.22.1 kernel using the 2007/07/20 patch from ftp://ftp.alsa-project.org/pub/kernel-patches/ . Just make sure that you have the PCM channel unmuted and the speaker switch checked. --[[User:Mozz|Mozz]] 17:13, 7 August 2007 (UTC)&lt;br /&gt;
&lt;br /&gt;
=== Trouble shooting ===&lt;br /&gt;
{{WARN|It's really necessary to leave the modem enabled in the BIOS or the intel_hda-driver will reutrn azx_get_response timeouts which will lead to a non-working soundchip.&lt;br /&gt;
Got that information from a comment from: [http://crypto.riken.go.jp/archives/linux/kernel.org/kernel/people/akpm/patches/2.6/2.6.22-rc6/2.6.22-rc6-mm1/broken-out/git-alsa.patch here] --[[User:Gladiac|Gladiac]] 06:12, 24 July 2007 (UTC)}}&lt;br /&gt;
&lt;br /&gt;
=== This chip may be found in ===&lt;br /&gt;
* {{R61}}&lt;br /&gt;
* {{T61}}&lt;br /&gt;
* [[:Category:X61|X61]], [[:Category:X61s|X61s]]&lt;br /&gt;
&lt;br /&gt;
=== Datasheets ===&lt;br /&gt;
* [http://www.analog.com/en/prod/0,2877,AD1984,00.html Analog Devices page for the AD1984]&lt;br /&gt;
&lt;br /&gt;
[[Category:Components]]&lt;/div&gt;</summary>
		<author><name>Mozz</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=AD1984&amp;diff=31799</id>
		<title>AD1984</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=AD1984&amp;diff=31799"/>
		<updated>2007-08-07T17:11:42Z</updated>

		<summary type="html">&lt;p&gt;Mozz: /* Linux ALSA driver */&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;
=== AD1984 ===&lt;br /&gt;
This is a ''Analog Devices'' High-Definition Audio controller&lt;br /&gt;
&lt;br /&gt;
=== Features ===&lt;br /&gt;
* Chipset: AD1984&lt;br /&gt;
* Interface: HD Audio &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 ALSA driver ===&lt;br /&gt;
This device isn't supported by current Alsa Driver [http://www.alsa-project.org/alsa-doc/index.php?vendor=vendor-Analog_Devices#matrix] (as of May 25, 2007).&lt;br /&gt;
&lt;br /&gt;
However, Takashi Iwai has added support to this device in Alsa development version [http://hg.alsa-project.org/alsa-kernel/log?rev=AD1984]... Still have to wait to get it included in the Linux Kernel...  Note: It is rather trivial too get this working in a standard kernel right now, It is only 3 patches on top of the stock 1.0.14 code:&lt;br /&gt;
&lt;br /&gt;
* [http://hg.alsa-project.org/alsa-kernel/rev/958b39f3e8dd Fix Oops with AD1984 thinkpad model]&lt;br /&gt;
* [http://hg.alsa-project.org/alsa-kernel/rev/47ca87407c84 Fix AD1984 basic model]&lt;br /&gt;
* [http://hg.alsa-project.org/alsa-kernel/rev/ca37aeeeb0ea Fix Thinkpad X61/T61 outputs]&lt;br /&gt;
&lt;br /&gt;
Alsa-Driver 1.0.14 added some support for this chip, but did not work on my T61; however, using the latest HG/Mercurial makes everything work.  I created a Debian package for unstable/sid with the HG alsa that works for me, available at [http://people.debian.org/~jello/alsa-modules-2.6.21-2-686_1.0.15~hg2007070601-1+2.6.21-5_i386.deb]. --[[User:Jello|Jello]] 15:31, 6 July 2007 (UTC)&lt;br /&gt;
&lt;br /&gt;
Works with Kernel 2.6.22 and Alsa 1.0.14a&lt;br /&gt;
--[[User:Schlodty|Schlodty]] 12:01, 21 July 2007 (UTC)&lt;br /&gt;
&lt;br /&gt;
Did not get it to work on X61s with either of the above packages. Newer HG packages do support this chip, so alsa 1.0.15 should have full support for this chip. --[[User:hjh|hjh]] 9:09, 27 July 2007 (UTC)&lt;br /&gt;
&lt;br /&gt;
Debian users (both Stable/Etch and Testing) can use the small script [http://www.klabs.be/~fpiat/linux/debian/Lenny_on_Thinkpad_T61/#Sound 1] i wrote to patch and build an alsa module package (with module-assistant). --[[User:Fpiat|Fpiat]] 11:45,04 August 2007 (UTC)&lt;br /&gt;
&lt;br /&gt;
Works with a patched 2.6.22.1 kernel using the 2007/07/20 patch from ftp://ftp.alsa-project.org/pub/kernel-patches/ . Just make sure that you have the PCM channel unmuted and the speaker switch checked.&lt;br /&gt;
&lt;br /&gt;
=== Trouble shooting ===&lt;br /&gt;
{{WARN|It's really necessary to leave the modem enabled in the BIOS or the intel_hda-driver will reutrn azx_get_response timeouts which will lead to a non-working soundchip.&lt;br /&gt;
Got that information from a comment from: [http://crypto.riken.go.jp/archives/linux/kernel.org/kernel/people/akpm/patches/2.6/2.6.22-rc6/2.6.22-rc6-mm1/broken-out/git-alsa.patch here] --[[User:Gladiac|Gladiac]] 06:12, 24 July 2007 (UTC)}}&lt;br /&gt;
&lt;br /&gt;
=== This chip may be found in ===&lt;br /&gt;
* {{R61}}&lt;br /&gt;
* {{T61}}&lt;br /&gt;
* [[:Category:X61|X61]], [[:Category:X61s|X61s]]&lt;br /&gt;
&lt;br /&gt;
=== Datasheets ===&lt;br /&gt;
* [http://www.analog.com/en/prod/0,2877,AD1984,00.html Analog Devices page for the AD1984]&lt;br /&gt;
&lt;br /&gt;
[[Category:Components]]&lt;/div&gt;</summary>
		<author><name>Mozz</name></author>
		
	</entry>
</feed>