<?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=Youam</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=Youam"/>
	<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/wiki/Special:Contributions/Youam"/>
	<updated>2026-04-04T09:09:37Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.31.12</generator>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=How_to_configure_the_TrackPoint&amp;diff=48483</id>
		<title>How to configure the TrackPoint</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=How_to_configure_the_TrackPoint&amp;diff=48483"/>
		<updated>2010-05-06T15:32:44Z</updated>

		<summary type="html">&lt;p&gt;Youam: gpointing-device-settings is in squeeze/sid, too&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; |Below are several ways of configuring the kernel psmouse driver for controlling extended TrackPoint features.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Configuration using xinput=&lt;br /&gt;
If you want to modify changes on the fly, you can do so with {{cmd|xinput|}} (part of the optional xorg-x11-apps rpm on Fedora).&lt;br /&gt;
Note that these changes are not saved when the xserver is restarted. However, you can add the lines e.g. in your  {{cmd|.xsessionrc|}} (depends on your distribution) so they are executed every time X starts.&lt;br /&gt;
&lt;br /&gt;
To query the available options&lt;br /&gt;
 xinput list-props &amp;quot;TPPS/2 IBM TrackPoint&amp;quot;&lt;br /&gt;
&lt;br /&gt;
More information can be found in the man-pages for evdev&lt;br /&gt;
 man evdev&lt;br /&gt;
&lt;br /&gt;
To enable vertical scrolling&lt;br /&gt;
 xinput set-int-prop &amp;quot;TPPS/2 IBM TrackPoint&amp;quot; &amp;quot;Evdev Wheel Emulation&amp;quot; 8 1&lt;br /&gt;
 xinput set-int-prop &amp;quot;TPPS/2 IBM TrackPoint&amp;quot; &amp;quot;Evdev Wheel Emulation Button&amp;quot; 8 2&lt;br /&gt;
 xinput set-int-prop &amp;quot;TPPS/2 IBM TrackPoint&amp;quot; &amp;quot;Evdev Wheel Emulation Timeout&amp;quot; 8 200&lt;br /&gt;
&lt;br /&gt;
To enable horizontal scrolling in addition to vertical scrolling&lt;br /&gt;
&lt;br /&gt;
 xinput set-int-prop &amp;quot;TPPS/2 IBM TrackPoint&amp;quot; &amp;quot;Evdev Wheel Emulation Axes&amp;quot; 8 6 7 4 5&lt;br /&gt;
&lt;br /&gt;
To enable middle button emulation (using left- and right-click simultaneously)&lt;br /&gt;
 xinput set-int-prop &amp;quot;TPPS/2 IBM TrackPoint&amp;quot; &amp;quot;Evdev Middle Button Emulation&amp;quot; 8 1&lt;br /&gt;
 xinput set-int-prop &amp;quot;TPPS/2 IBM TrackPoint&amp;quot; &amp;quot;Evdev Middle Button Timeout&amp;quot; 8 50&lt;br /&gt;
&lt;br /&gt;
==Example: openSUSE 11.2 and ThinkPad USB Keyboard with TrackPoint ==&lt;br /&gt;
&lt;br /&gt;
 xinput list &lt;br /&gt;
will show two &amp;quot;Lite-On Technology Corp. ThinkPad USB Keyboard with TrackPoint.&amp;quot; with two different ids. Use the id with Axis 0 and Axis 1 items.&lt;br /&gt;
&lt;br /&gt;
Suppose the id was 12. The following will enable the trackpoint scrolling:&lt;br /&gt;
&lt;br /&gt;
 xinput set-int-prop 12 &amp;quot;Evdev Wheel Emulation&amp;quot; 8 1&lt;br /&gt;
 xinput set-int-prop 12 &amp;quot;Evdev Wheel Emulation Button&amp;quot; 8 2&lt;br /&gt;
 xinput set-int-prop 12 &amp;quot;Evdev Wheel Emulation Timeout&amp;quot; 8 200&lt;br /&gt;
&lt;br /&gt;
The following will enable the horizontal scrolling&lt;br /&gt;
 xinput set-int-prop 12 &amp;quot;Evdev Wheel Emulation Axes&amp;quot; 8 6 7 4 5&lt;br /&gt;
&lt;br /&gt;
To disable middle button click paste functionality, remap the middle button to something else:&lt;br /&gt;
 xmodmap -e &amp;quot;pointer = 1 9 3 4 5 6 7 8 2&amp;quot;&lt;br /&gt;
&lt;br /&gt;
To do these automatically without worrying about id number, generate a bash script file:&lt;br /&gt;
 #!/bin/sh&lt;br /&gt;
 xinput list | sed -ne 's/^[^ ][^V].*id=\([0-9]*\).*/\1/p' | while read id&lt;br /&gt;
 do&lt;br /&gt;
         case `xinput list-props $id` in&lt;br /&gt;
         *&amp;quot;Middle Button Emulation&amp;quot;*)&lt;br /&gt;
                 xinput set-int-prop $id &amp;quot;Evdev Wheel Emulation&amp;quot; 8 1&lt;br /&gt;
                 xinput set-int-prop $id &amp;quot;Evdev Wheel Emulation Button&amp;quot; 8 2&lt;br /&gt;
                 xinput set-int-prop $id &amp;quot;Evdev Wheel Emulation Timeout&amp;quot; 8 200&lt;br /&gt;
                 xinput set-int-prop $id &amp;quot;Evdev Wheel Emulation Axes&amp;quot; 8 6 7 4 5&lt;br /&gt;
                 xinput set-int-prop $id &amp;quot;Evdev Middle Button Emulation&amp;quot; 8 0&lt;br /&gt;
                 ;;&lt;br /&gt;
         esac&lt;br /&gt;
 done&lt;br /&gt;
 &lt;br /&gt;
 # disable middle button &lt;br /&gt;
 xmodmap -e &amp;quot;pointer = 1 9 3 4 5 6 7 8 2&amp;quot;&lt;br /&gt;
&lt;br /&gt;
and save it with any name such as trackPointScrolling.sh, and make it executable:&lt;br /&gt;
 chmod +x trackPointScrolling.sh&lt;br /&gt;
&lt;br /&gt;
Next time you run it with $ ./trackPointScrolling.sh, it will enable the trackpoint scrolling and disable middle button paste.&lt;br /&gt;
{{Todo|some other examples}}&lt;br /&gt;
&lt;br /&gt;
= Configuration using Gnome=&lt;br /&gt;
If you are using GNOME, you might want to use [http://live.gnome.org/GPointingDeviceSettings GPointing Device Settings] as a graphical frontend.&lt;br /&gt;
&lt;br /&gt;
It is available for Fedora 12, Ubuntu 9.10 and Debian Squeeze in the standard package repositories&lt;br /&gt;
&lt;br /&gt;
[[image:Screenshot-GPointing Device Settings-TrackPoint.png]]&lt;br /&gt;
&lt;br /&gt;
= Configuration using DevKit =&lt;br /&gt;
Most recent distributions like Ubuntu 9.10 switch from HAL (being deprecated) to DevKit. Hence, the HAL configurations explained underneath, fail to work. &lt;br /&gt;
&lt;br /&gt;
The easiest way to configure your touchpad and trackpoint with DevKit is by using the [http://live.gnome.org/GPointingDeviceSettings GPointingDeviceSettings] panel that fully supports the hardware. You can easily download the panel by installing {{cmd| gpointing-device-settings|}}. On Ubuntu open a terminal and execute the command {{cmduser| sudo apt-get install gpointing-device-settings}}&lt;br /&gt;
&lt;br /&gt;
Launch the UI through the {{cmduser| gpointing-device-settings}} command, but you can also add a menu entry to your System / Preferences menu for easier access to the UI panel.&lt;br /&gt;
&lt;br /&gt;
= Configuration using udev and HAL =&lt;br /&gt;
Modern distributions like Ubuntu 8.10 and Fedora 10 use udev and HAL to configure the input devices. You should no longer make changes to xorg.conf as by default Xorg (through the evdev driver) will let the kernel now handle input devices.&lt;br /&gt;
&lt;br /&gt;
But before you get started on this you should make sure you have all the updates applied from your distro vendor as both Ubuntu 8.10 and Fedora 10 require some additional fixes that you will need.&lt;br /&gt;
&lt;br /&gt;
=== Scrolling ===&lt;br /&gt;
By default the middle mouse button is that, a middle mouse button, which in Linux is used for the Paste operation.&lt;br /&gt;
&lt;br /&gt;
But you can configure it to act in the same way as in Windows, such that you can use it for vertical scrolling (keep the button pressed and move the TrackPoint up and down to scroll). &lt;br /&gt;
&lt;br /&gt;
==== xorg.conf.d ====&lt;br /&gt;
&lt;br /&gt;
Some distributions now support the new Xorg hotplug configuration method via xorg.conf.d directories (in Ubuntu 10.04 Lucid Lynx) instead of hal. In contrast to the udev method below, it should be around for some time, so it might be the best way to “statically” configure scrolling.&lt;br /&gt;
&lt;br /&gt;
Create the file {{path|/usr/lib/X11/xorg.conf.d/20-thinkpad.conf}} as root with the following content:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Section &amp;quot;InputClass&amp;quot;&lt;br /&gt;
	Identifier	&amp;quot;Trackpoint Wheel Emulation&amp;quot;&lt;br /&gt;
	MatchProduct	&amp;quot;TPPS/2 IBM TrackPoint|DualPoint Stick|Synaptics Inc. Composite TouchPad / TrackPoint|ThinkPad USB Keyboard with TrackPoint&amp;quot;&lt;br /&gt;
	MatchDevicePath	&amp;quot;/dev/input/event*&amp;quot;&lt;br /&gt;
	Option		&amp;quot;EmulateWheel&amp;quot;		&amp;quot;true&amp;quot;&lt;br /&gt;
	Option		&amp;quot;EmulateWheelButton&amp;quot;	&amp;quot;2&amp;quot;&lt;br /&gt;
	Option		&amp;quot;Emulate3Buttons&amp;quot;	&amp;quot;false&amp;quot;&lt;br /&gt;
	Option		&amp;quot;XAxisMapping&amp;quot;		&amp;quot;6 7&amp;quot;&lt;br /&gt;
	Option		&amp;quot;YAxisMapping&amp;quot;		&amp;quot;4 5&amp;quot;&lt;br /&gt;
EndSection&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Save and restart Xorg (or it'll be enabled at next reboot).&lt;br /&gt;
&lt;br /&gt;
{{NOTE|If the above directory doesn't exist by default in your distribution, it probably doesn't support this method. In this case, please refer to the udev or xinput method below.}}&lt;br /&gt;
&lt;br /&gt;
==== udev ====&lt;br /&gt;
&lt;br /&gt;
Now that Xorg doesn't use the configuration from hal (in Debian unstable starting january 2010), the only way to “statically” configure scrolling in trackpoint is udev. (for other people, xinput method, works fine). This method will be gone (_again_) in not too long so it might be a better idea to use xinput way. YMMV.&lt;br /&gt;
&lt;br /&gt;
Create the file {{path|/etc/udev/rules.d/99_trackpoint.rules}} as root with the following content:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ACTION!=&amp;quot;add|change&amp;quot;, GOTO=&amp;quot;xorg_trackpoint_end&amp;quot;&lt;br /&gt;
KERNEL!=&amp;quot;event*&amp;quot;, GOTO=&amp;quot;xorg_trackpoint_end&amp;quot;&lt;br /&gt;
&lt;br /&gt;
ENV{ID_PATH}!=&amp;quot;platform-i8042-serio-1&amp;quot;, GOTO=&amp;quot;xorg_trackpoint_end&amp;quot;&lt;br /&gt;
&lt;br /&gt;
ENV{x11_options.EmulateWheel}=&amp;quot;1&amp;quot;&lt;br /&gt;
ENV{x11_options.EmulateWheelButton}=&amp;quot;2&amp;quot;&lt;br /&gt;
ENV{x11_options.XAxisMapping}=&amp;quot;6 7&amp;quot;&lt;br /&gt;
ENV{x11_options.Emulate3Buttons}=&amp;quot;0&amp;quot;&lt;br /&gt;
&lt;br /&gt;
LABEL=&amp;quot;xorg_trackpoint_end&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Save and restart udev then Xorg (or it'll be enabled at next reboot).&lt;br /&gt;
&lt;br /&gt;
{{NOTE|The ID_PATH used in the example above is a typical value.  To determine the ID_PATH appropriate to the TrackPoint on a specific model see [[#Determining TrackPoint Path ID|Determining TrackPoint Path ID]]}}&lt;br /&gt;
&lt;br /&gt;
==== Hal (soon to be deprecated) ====&lt;br /&gt;
&lt;br /&gt;
To accomplish this create the file {{path|/etc/hal/fdi/policy/mouse-wheel.fdi}} as root with the following content:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;match key=&amp;quot;info.product&amp;quot; string=&amp;quot;TPPS/2 IBM TrackPoint&amp;quot;&amp;gt;&lt;br /&gt;
 &amp;lt;merge key=&amp;quot;input.x11_options.EmulateWheel&amp;quot; type=&amp;quot;string&amp;quot;&amp;gt;true&amp;lt;/merge&amp;gt;&lt;br /&gt;
 &amp;lt;merge key=&amp;quot;input.x11_options.EmulateWheelButton&amp;quot; type=&amp;quot;string&amp;quot;&amp;gt;2&amp;lt;/merge&amp;gt;&lt;br /&gt;
 &amp;lt;merge key=&amp;quot;input.x11_options.YAxisMapping&amp;quot; type=&amp;quot;string&amp;quot;&amp;gt;4 5&amp;lt;/merge&amp;gt;&lt;br /&gt;
 &amp;lt;merge key=&amp;quot;input.x11_options.Emulate3Buttons&amp;quot; type=&amp;quot;string&amp;quot;&amp;gt;true&amp;lt;/merge&amp;gt;&lt;br /&gt;
 &amp;lt;merge key=&amp;quot;input.x11_options.EmulateWheelTimeout&amp;quot; type=&amp;quot;string&amp;quot;&amp;gt;200&amp;lt;/merge&amp;gt;&lt;br /&gt;
&amp;lt;/match&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you also want to have horizontal scrolling, simply add the following XAxisMapping option to the above&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 &amp;lt;merge key=&amp;quot;input.x11_options.XAxisMapping&amp;quot; type=&amp;quot;string&amp;quot;&amp;gt;6 7&amp;lt;/merge&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
After this reboot, or restart the hal service and Xorg. You can validate the settings with {{cmd|lshal|}}.&lt;br /&gt;
&lt;br /&gt;
In some models (eg: X301 and X200 since Jan 10 2010 on debian sid) you may have to use &amp;quot;PS/2 Generic Mouse&amp;quot; instead of &amp;quot;TPPS/2 IBM TrackPoint&amp;quot;. Have a look to your input devices typing &amp;lt;code&amp;gt;lshal|grep input.product&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Alternatively it is also possible to use the &amp;quot;old&amp;quot; Xorg configuration by adding the following lines to the {{path|/etc/X11/xorg.conf}}:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Section &amp;quot;ServerFlags&amp;quot;&lt;br /&gt;
	Option 	&amp;quot;AutoAddDevices&amp;quot; &amp;quot;false&amp;quot;&lt;br /&gt;
EndSection&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Using this entry HAL will not be used for the input devices.&lt;br /&gt;
&lt;br /&gt;
====Reactivate Scrolling after suspend/resume====&lt;br /&gt;
Scrolling may be disabled after a resume from suspend. &lt;br /&gt;
&lt;br /&gt;
You can manually reactivate the trackpoint by reloading the {{path|psmouse}} module as root:&lt;br /&gt;
:{{cmdroot|rmmod psmouse &amp;amp;&amp;amp; modprobe psmouse}}&lt;br /&gt;
&lt;br /&gt;
You can automatically force the pm-utils to reload this module.&lt;br /&gt;
Create a file {{path|/etc/pm/config.d/01reload_mouse}} as root with the following content:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# reload psmouse to reactivate trackpoint scrolling&lt;br /&gt;
SUSPEND_MODULES=&amp;quot;${SUSPEND_MODULES:+$SUSPEND_MODULES }psmouse&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Configuring other options (e.g. Press to select, Sensitivity and Speed)===&lt;br /&gt;
&amp;lt;!--HAL wasn't made to configure sysfs settings, so we'll use udev instead --&amp;gt;&lt;br /&gt;
Create a file {{path|/etc/udev/rules.d/10-trackpoint.rules}} and add a line to suit your needs&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
SUBSYSTEM==&amp;quot;serio&amp;quot;, DRIVERS==&amp;quot;psmouse&amp;quot;, ATTR{press_to_select}=&amp;quot;1&amp;quot;, ATTR{sensitivity}=&amp;quot;122&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Testing udev  with {{cmdroot|udevadm test /sys/devices/platform/i8042/serio1}} should apply the new changes.  All of the settings listed [[How to configure the TrackPoint#Sysfs_Options_Reference|below]] can be specified here as part of a comma separated list.&lt;br /&gt;
&lt;br /&gt;
=Configuration using sysfs=&lt;br /&gt;
Another way to modify changes on the fly, is echoing values directly into special files in sysfs.&lt;br /&gt;
&lt;br /&gt;
{{NOTE|&lt;br /&gt;
The examples shown below are valid for ThinkPads with both TrackPoint and Touchpad, in which case the sysfs path is {{path|/sys/devices/platform/i8042/serio1/serio2}}.&lt;br /&gt;
&lt;br /&gt;
If however you have a ThinkPad without Touchpad, or with the Touchpad disabled in the BIOS, the sysfs path needs to be changed to {{path|/sys/devices/platform/i8042/serio1}} instead (notice the missing serio2 at the end).}}&lt;br /&gt;
&lt;br /&gt;
If you want to set the sysfs parameters at boot, you can use the [http://linux-diag.sourceforge.net/Sysfsutils.html sysfsutils] and put the preferred value in /etc/sysfs.conf.&lt;br /&gt;
&lt;br /&gt;
===Press to Select===&lt;br /&gt;
Press to Select allows you to tap the control stick which will simulate a left click. You can enable this feature by typing the following in to a terminal (you may need to be root):&lt;br /&gt;
&lt;br /&gt;
:{{cmdroot|echo -n 1 &amp;gt; /sys/devices/platform/i8042/serio1/serio2/press_to_select}}&lt;br /&gt;
&lt;br /&gt;
Press to Select should now be enabled. You can disable it in a similar manner:&lt;br /&gt;
&lt;br /&gt;
:{{cmdroot|echo -n 0 &amp;gt; /sys/devices/platform/i8042/serio1/serio2/press_to_select}}&lt;br /&gt;
&lt;br /&gt;
You can use this script to automate the operation&lt;br /&gt;
&lt;br /&gt;
        #!/bin/bash&lt;br /&gt;
        if [ &amp;quot;$1&amp;quot; = &amp;quot;1&amp;quot; ]; then&lt;br /&gt;
                echo &amp;quot;Turning on tap on TrackPoint&amp;quot;&lt;br /&gt;
                echo -n 1 &amp;gt; /sys/devices/platform/i8042/serio1/serio2/press_to_select&lt;br /&gt;
                exit 0&lt;br /&gt;
        fi&lt;br /&gt;
        if [ &amp;quot;$1&amp;quot; = &amp;quot;0&amp;quot; ]; then&lt;br /&gt;
                echo &amp;quot;Turning off tap on TrackPoint&amp;quot;&lt;br /&gt;
                echo -n 0 &amp;gt; /sys/devices/platform/i8042/serio1/serio2/press_to_select&lt;br /&gt;
                exit 0&lt;br /&gt;
        fi&lt;br /&gt;
        echo -n &amp;quot;Tap status: &amp;quot;&lt;br /&gt;
        cat /sys/devices/platform/i8042/serio1/serio2/press_to_select&lt;br /&gt;
&lt;br /&gt;
In Ubuntu 8.10 to make Press to Select a permanent change:&lt;br /&gt;
&lt;br /&gt;
echo -n 1 | tee /sys/devices/platform/i8042/serio1/serio2/press_to_select&lt;br /&gt;
&lt;br /&gt;
As root, append the above command above &amp;quot;exit 0&amp;quot; in /etc/gdm/Init/Default&lt;br /&gt;
&lt;br /&gt;
===Sensitivity &amp;amp; Speed===&lt;br /&gt;
Adjusting the speed and sensitivity of the TrackPoint requires echoing a value between 0 and 255 into the appropriate file. For example, for a speed of 120 and a sensitivity of 250, type the following into a terminal:&lt;br /&gt;
&lt;br /&gt;
:{{cmdroot|echo -n 120 &amp;gt; /sys/devices/platform/i8042/serio1/serio2/speed}}&lt;br /&gt;
:{{cmdroot|echo -n 250 &amp;gt; /sys/devices/platform/i8042/serio1/serio2/sensitivity}}&lt;br /&gt;
&lt;br /&gt;
Feel free to experiment with your settings until you find a combination that is comfortable.&lt;br /&gt;
&lt;br /&gt;
When you satisfy your setting, add the two lines into /etc/rc.d/rc.local in order to avoid restoring the default setting every time the system reboots.  In Ubuntu 9.10, add the lines to /etc/rc.local to avoid this.&lt;br /&gt;
&lt;br /&gt;
===Vertical Scrolling===&lt;br /&gt;
No sysfs entry exists for vertical scrolling in kernels after 2.6.11.&lt;br /&gt;
&lt;br /&gt;
The feature was removed as it was not a hardware feature, but rather emulating a scroll action in software and as such did not belong in the kernel.&lt;br /&gt;
Instead the scroll feature of the Xserver should be used, which can be activated with HAL or xinput as described above.&lt;br /&gt;
&lt;br /&gt;
=Configuration using the X server (xorg.conf)=&lt;br /&gt;
==Using the &amp;quot;evdev&amp;quot; driver (preferred, especially for recent Xorg versions)==&lt;br /&gt;
Extract from /etc/X11/xorg.conf on an X31:&lt;br /&gt;
&lt;br /&gt;
    Section &amp;quot;InputDevice&amp;quot;&lt;br /&gt;
        Identifier &amp;quot;TPPS/2 IBM TrackPoint&amp;quot;&lt;br /&gt;
        Driver     &amp;quot;evdev&amp;quot;&lt;br /&gt;
        Option     &amp;quot;Device&amp;quot; &amp;quot;/dev/input/by-path/platform-i8042-serio-1-event-mouse&amp;quot;&lt;br /&gt;
        Option     &amp;quot;GrabDevice&amp;quot; &amp;quot;False&amp;quot;&lt;br /&gt;
        Option     &amp;quot;EmulateWheel&amp;quot; &amp;quot;true&amp;quot; #Enable wheel emulation for the Trackpoint&lt;br /&gt;
        Option     &amp;quot;EmulateWheelButton&amp;quot; &amp;quot;2&amp;quot; #Use the middle button for the emulation&lt;br /&gt;
        Option     &amp;quot;XAxisMapping&amp;quot; &amp;quot;6 7&amp;quot; #Map trackpoint X axis to X axis of emulated wheel&lt;br /&gt;
        Option     &amp;quot;YAxisMapping&amp;quot; &amp;quot;4 5&amp;quot; #Map trackpoint Y axis to Y axis of emulated wheel&lt;br /&gt;
    EndSection&lt;br /&gt;
&lt;br /&gt;
{{NOTE|The device path used in the example above is a typical value.  To determine the device path appropriate to the TrackPoint on a specific model see [[#Determining TrackPoint Path ID|Determining TrackPoint Path ID]]}}&lt;br /&gt;
&lt;br /&gt;
==Using the &amp;quot;mouse&amp;quot; driver (deprecated, only for old Xorg versions)==&lt;br /&gt;
{{NOTE|This only applies to old distributions with Xorg versions that did not yet use evdev. For modern distributions use one of the other methods}}&lt;br /&gt;
The scroll setting has been removed from the trackpoint driver in kernel versions 2.6.11 and above. Scroll emulation should now be handled in the X server.&lt;br /&gt;
&lt;br /&gt;
A nice side effect of that is, that middle button scrolling applies to any mouse and not just the TrackPoint interface, which can be a quite handy feature for desktop computers or people who prefer to use an external mouse, especially when scrolling through long lists or needing to use horizontal scrolling with a mouse which has only a vertical scroll wheel.&lt;br /&gt;
&lt;br /&gt;
The necessary functionality, known  as &amp;quot;EmulateWheelTimeout&amp;quot; allowing to use button 2 for a middle click, wasn't implemented in Xorg prior to 6.9/7.0. However, there was a patch included in most distributions packages of Xorg, which was announced [http://www.mail-archive.com/devel@xfree86.org/msg03333.html here]. You can find an updated version of the package in the experimental branch of {{Debian}} or try to build the mouse driver yourself with the information in the announcement. This has successfully been tried with FC3's 6.8.2 packages.&lt;br /&gt;
&lt;br /&gt;
Once this functionality is in the X.org, add these lines to your TrackPoint configuration section in {{path|/etc/X11/xorg.conf}}:&lt;br /&gt;
&lt;br /&gt;
        Option          &amp;quot;EmulateWheel&amp;quot;          &amp;quot;on&amp;quot;&lt;br /&gt;
        Option          &amp;quot;EmulateWheelButton&amp;quot;    &amp;quot;2&amp;quot;&lt;br /&gt;
&lt;br /&gt;
It may also be necessary to add these lines:&lt;br /&gt;
&lt;br /&gt;
        Option &amp;quot;YAxisMapping&amp;quot; &amp;quot;4 5&amp;quot;&lt;br /&gt;
        Option &amp;quot;XAxisMapping&amp;quot; &amp;quot;6 7&amp;quot;&lt;br /&gt;
&lt;br /&gt;
which specify which buttons are mapped to motion in the vertical (Y) and horizontal (X) directions, respectively, in wheel emulation mode (see http://www.xfree86.org/current/mouse.4.html).&lt;br /&gt;
&lt;br /&gt;
{{HINT| Use the program &amp;quot;xev&amp;quot; to see, what mouse button identifiers are sent by your mouse/touchpad/trackpoint.&amp;lt;br /&amp;gt;You might want to try: &amp;quot;xev &amp;amp;#124; grep button&amp;quot;}}&lt;br /&gt;
{{HINT| If it does not work see if evdev is installed and remove it. On gentoo do the following:&amp;lt;br /&amp;gt;&lt;br /&gt;
eix xf86-input-evdev&amp;lt;br /&amp;gt;&lt;br /&gt;
emerge -C xf86-input-evdev&amp;lt;br /&amp;gt;&lt;br /&gt;
and then remove the evdev flag in make.conf INPUT_DEVICES}}&lt;br /&gt;
&lt;br /&gt;
So, a complete mouse section, that implements this nicely and works very well on my R51, even with a simultaneously connected USB mouse, looks like that (tried out today, 20th of September, 2006 on Dapper):&lt;br /&gt;
&lt;br /&gt;
  Section &amp;quot;InputDevice&amp;quot;&lt;br /&gt;
        Identifier  &amp;quot;Configured Mouse&amp;quot;&lt;br /&gt;
        Driver      &amp;quot;mouse&amp;quot;&lt;br /&gt;
        Option      &amp;quot;CorePointer&amp;quot;&lt;br /&gt;
        Option      &amp;quot;Device&amp;quot;              &amp;quot;/dev/input/mice&amp;quot;&lt;br /&gt;
        Option      &amp;quot;Protocol&amp;quot;            &amp;quot;ExplorerPS/2&amp;quot;&lt;br /&gt;
        Option      &amp;quot;Emulate3Buttons&amp;quot;     &amp;quot;on&amp;quot;&lt;br /&gt;
        Option      &amp;quot;Emulate3TimeOut&amp;quot;     &amp;quot;50&amp;quot;&lt;br /&gt;
        Option      &amp;quot;EmulateWheel&amp;quot;        &amp;quot;on&amp;quot;&lt;br /&gt;
        Option      &amp;quot;EmulateWheelTimeOut&amp;quot; &amp;quot;200&amp;quot;&lt;br /&gt;
        Option      &amp;quot;EmulateWheelButton&amp;quot;  &amp;quot;2&amp;quot;&lt;br /&gt;
        Option      &amp;quot;YAxisMapping&amp;quot;        &amp;quot;4 5&amp;quot;&lt;br /&gt;
        Option      &amp;quot;XAxisMapping&amp;quot;        &amp;quot;6 7&amp;quot;&lt;br /&gt;
        Option      &amp;quot;ZAxisMapping&amp;quot;        &amp;quot;4 5&amp;quot;&lt;br /&gt;
  EndSection&lt;br /&gt;
&lt;br /&gt;
The mappings for Y and Z are the same, since the &amp;quot;Z-Axis&amp;quot; refers to actual hardware scrolling wheels which usually scroll the screen along the Y-Axis. If there is no hardware scrolling wheel present, horizontal and vertical scrolling using the TrackPoint work fine without the Z-Axis line.&lt;br /&gt;
&lt;br /&gt;
Now restart X and hold down button 2 and move the mouse to scroll, or just press and release button 2 for a middle click.&lt;br /&gt;
&lt;br /&gt;
To make this work with the synaptics driver for the touchpad, you can add&lt;br /&gt;
        Option      &amp;quot;GuestMouseOff&amp;quot; &amp;quot;1&amp;quot;&lt;br /&gt;
to the synaptics device section. This will make the synaptics driver ignore the Trackpoint, so it will be handled by the mouse driver. This allowed me to disable the touchpad while making the TrackPoint work like it should.&lt;br /&gt;
&lt;br /&gt;
{{NOTE| With the above mouse section in my xorg.conf all this works like a charm: &lt;br /&gt;
*I can press the wheel on my external USB mouse and move the mouse up and down for scrolling&lt;br /&gt;
*or I can just use the wheel on the external mouse for scrolling&lt;br /&gt;
*or pressing the MMB button of the trackpoint and use the trackpoint for scrolling.&lt;br /&gt;
*Even horizontal scrolling works automagically in Konqueror, for Firefox/Opera see below.&lt;br /&gt;
&lt;br /&gt;
Simultaneously I can use &lt;br /&gt;
*a press on the external mouse's wheel &lt;br /&gt;
*or the MMB of the trackpoint&lt;br /&gt;
&lt;br /&gt;
for pasting the buffer. Lovely! :) }}&lt;br /&gt;
&lt;br /&gt;
{{HINT| If you don't use the middle-mouse-button for pasting and sometimes pasting things by mistake while scrolling (witch is really odd) simply set the &amp;quot;EmulateWheelTimeOut&amp;quot; to &amp;quot;1&amp;quot; as a (bloody) workaround. Middle click will only possible with pressing left and right button simultaneously!}}&lt;br /&gt;
&lt;br /&gt;
=Application specific tweaks=&lt;br /&gt;
===Configure Opera for using trackpoint horizontal scrolling===&lt;br /&gt;
To fix horizontal scrolling in Opera, you need to edit the configfile &amp;lt;tt&amp;gt;standard_mouse.ini&amp;lt;/tt&amp;gt; in e.g. /usr/share/opera/ui/ (Debian) or /opt/opera/share/opera/ini/ (Gentoo) and comment out the following lines&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Button6                                                        = Back&lt;br /&gt;
Button7                                                        = Forward&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
so they look like that&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
;Button6                                                        = Back&lt;br /&gt;
;Button7                                                        = Forward&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Remember, Button6 and Button7 do not so coincidental correspond with our X configuration we know from above:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Option &amp;quot;YAxisMapping&amp;quot; &amp;quot;6 7&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
After this change you will be able to scroll vertically and horizontally with your middle button.&lt;br /&gt;
&lt;br /&gt;
===Firefox 3 tweaks===&lt;br /&gt;
These settings make Firefox on Linux behave more like the Windows version. They were tested on an out of the box Fedora 10 system on a Thinkpad T61.  Go into about:config, and set the following:&lt;br /&gt;
&lt;br /&gt;
 middlemouse.paste = false&lt;br /&gt;
 middlemouse.contentLoadURL = false&lt;br /&gt;
 general.autoScroll = true&lt;br /&gt;
&lt;br /&gt;
=Sysfs Options Reference=&lt;br /&gt;
{{NOTE|These options are current as of kernel version 2.6.29, 3 May 2009}}&lt;br /&gt;
{| &lt;br /&gt;
|-&lt;br /&gt;
! Name&lt;br /&gt;
! Type&lt;br /&gt;
! Default&lt;br /&gt;
! Notes&lt;br /&gt;
|-&lt;br /&gt;
| sensitivity&lt;br /&gt;
| Integer&lt;br /&gt;
| 128&lt;br /&gt;
| Sensitivity&lt;br /&gt;
|-&lt;br /&gt;
| speed&lt;br /&gt;
| Integer&lt;br /&gt;
| 97&lt;br /&gt;
| Cursor speed&lt;br /&gt;
|-&lt;br /&gt;
| inertia&lt;br /&gt;
| Integer&lt;br /&gt;
| 6&lt;br /&gt;
| Described as &amp;quot;negative inertia.&amp;quot;  It acts more like friction.  High values cause the cursor to snap backward when the Trackpoint is released&lt;br /&gt;
|-&lt;br /&gt;
| reach&lt;br /&gt;
| Integer&lt;br /&gt;
| 10&lt;br /&gt;
| Backup for Z-axis press&lt;br /&gt;
|-&lt;br /&gt;
| draghys&lt;br /&gt;
| Integer&lt;br /&gt;
| 255&lt;br /&gt;
| Drag hysteresis (how hard it is to drag with Z-axis pressed)&lt;br /&gt;
|-&lt;br /&gt;
| mindrag&lt;br /&gt;
| Integer&lt;br /&gt;
| 20&lt;br /&gt;
| Minimum amount of force needed to trigger dragging&lt;br /&gt;
|-&lt;br /&gt;
| thresh&lt;br /&gt;
| Integer&lt;br /&gt;
| 8&lt;br /&gt;
| Minimum value for a Z-axis press&lt;br /&gt;
|-&lt;br /&gt;
| upthresh&lt;br /&gt;
| Integer&lt;br /&gt;
| 255&lt;br /&gt;
| Used to generate a 'click' on Z-axis&lt;br /&gt;
|-&lt;br /&gt;
| ztime&lt;br /&gt;
| Integer&lt;br /&gt;
| 38&lt;br /&gt;
| How sharp of a press&lt;br /&gt;
|-&lt;br /&gt;
| jenks&lt;br /&gt;
| Integer&lt;br /&gt;
| 135&lt;br /&gt;
| Minimum curvature for double click&lt;br /&gt;
|-&lt;br /&gt;
| press_to_select&lt;br /&gt;
| Boolean&lt;br /&gt;
| 0&lt;br /&gt;
| Press to select&lt;br /&gt;
|-&lt;br /&gt;
| skipback&lt;br /&gt;
| Boolean&lt;br /&gt;
| 0&lt;br /&gt;
| Supress movement after drag release &lt;br /&gt;
|-&lt;br /&gt;
| ext_dev&lt;br /&gt;
| Boolean&lt;br /&gt;
| 0&lt;br /&gt;
| Disable external device&lt;br /&gt;
|}&lt;br /&gt;
Table info taken from [http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob;f=drivers/input/mouse/trackpoint.h;hb=HEAD here].  The given link will always point to the current version of the driver.  If the notes seem sparse, that's because the code is sparse.  On the other hand, the [http://wwwcssrv.almaden.ibm.com/trackpoint/files/ykt3eext.pdf Trackpoint Engineering Specification Version 4.0] &amp;lt;!--if this link breaks, I recommend a quick Google search for &amp;quot;trackpoint version 4 engineering specifications&amp;quot; --&amp;gt; contains more documentation information than anyone ever desired.&lt;br /&gt;
&lt;br /&gt;
=Determining TrackPoint Path ID=&lt;br /&gt;
Both the [[#udev|udev]] and [[#Configuration using the X server (xorg.conf)|xorg.conf]] configuration methods require knowledge of the Path ID of the TrackPoint.  In the [[#udev|udev]] configuration method, the Path ID is used to match the ID_PATH environmental variable, in the [[#Configuration using the X server (xorg.conf)|xorg.conf]] configuration method it is the prefix for the device file name inside the {{path|/dev/input/by-id}} directory.  The path ID can vary between ThinkPad models, distributions (with varying kernel patches), and between kernel versions.  One way to find the path ID for the TrackPoint is to use udev's path_id utility on the sysfs device path for the TrackPoint.  This device path can be found using the {{path|name}} file which describes the TrackPoint.  The process can be automated using the following shell command:&lt;br /&gt;
 /lib/udev/path_id $(find /sys/devices/platform/i8042 -name name | xargs grep -Fl TrackPoint | sed 's/\/sys\(.*\)\/name/\1/')&lt;/div&gt;</summary>
		<author><name>Youam</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Installing_Debian_4.0_(Etch)_on_a_ThinkPad_X300&amp;diff=40938</id>
		<title>Installing Debian 4.0 (Etch) on a ThinkPad X300</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Installing_Debian_4.0_(Etch)_on_a_ThinkPad_X300&amp;diff=40938"/>
		<updated>2009-01-31T22:30:26Z</updated>

		<summary type="html">&lt;p&gt;Youam: add article to category X300&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;===Installation (Network-Install)===&lt;br /&gt;
&lt;br /&gt;
Installing from the Debian Netinstall-CDROM worked without any problems.&lt;br /&gt;
The SSD is recognized as an S-ATA drive using the ahci-driver.&lt;br /&gt;
The Gigabit-Ethernet-Port works out-of-the-box.&lt;br /&gt;
&lt;br /&gt;
===Kernel Update===&lt;br /&gt;
&lt;br /&gt;
The Kernel shipped with Debian stable (2.6.18 at the time of writing this) doesn't support many&lt;br /&gt;
of the features. I manually upgraded it to 2.6.25. The .config can be found&lt;br /&gt;
[http://scriptkiller.de/pub/thinkpad_x300_2.6.25.config here]. Alternatively you can use&lt;br /&gt;
more recent snapshots as described here http://wiki.debian.org/DebianKernel .&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===WLAN (Intel 4965AGN)===&lt;br /&gt;
&lt;br /&gt;
The driver for the wireless lan interface (iwl4965) is included in the Kernel sources.&lt;br /&gt;
You only need to install the binary firmware from here:&lt;br /&gt;
[http://packages.debian.org/lenny/firmware-iwlwifi] (you can install it in stable without problems).&lt;br /&gt;
&lt;br /&gt;
I had problems with WPA-EAP/TTLS using the 2.6.25 drivers, these could be fixed with a fresh driver snapshot from http://wireless.kernel.org/en/users/Download (I used compat-wireless-2008-04-25).&lt;br /&gt;
&lt;br /&gt;
===Graphics (Intel GMA965 / X3100)===&lt;br /&gt;
&lt;br /&gt;
For graphics you'll need the intel_agp module from a recent kernel as well as xserver-xorg-video-intel (not in stable at the time of writing,&lt;br /&gt;
get it from testing).&lt;br /&gt;
&lt;br /&gt;
Nothing special in xorg.conf:&lt;br /&gt;
&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;intel&amp;quot;&lt;br /&gt;
   EndSection&lt;br /&gt;
&lt;br /&gt;
If you want 3D-acceleration and DRI I suggest to use testing instead of stable, because many of the xserver and mesa-packages in stable are not ready, yet.&lt;br /&gt;
&lt;br /&gt;
If you want to activate CRT output use `xrandr --output VGA --mode 1440x900`. If your data projector is not able to display wide screen try `xrandr --output VGA --mode 1280x1024`. For more detailed info see: [[Installing Ubuntu on a ThinkPad R60e]].&lt;br /&gt;
&lt;br /&gt;
===ACPI===&lt;br /&gt;
&lt;br /&gt;
You'll need the thinkpad_acpi module. I had to tweak some settings to make the backlight work:&lt;br /&gt;
&lt;br /&gt;
  modprobe thinkpad_acpi brightness_enable=1 brightness_mode=0 fan_control=1&lt;br /&gt;
&lt;br /&gt;
To make this change permanent execute&lt;br /&gt;
  echo &amp;quot;options thinkpad_acpi fan_control=1 brightness_enable=1 brightness_mode=0&amp;quot; \&lt;br /&gt;
     &amp;gt; /etc/modprobe.d/thinkpad&lt;br /&gt;
&lt;br /&gt;
After inserting the module that way, backlight can be controlled using&lt;br /&gt;
&lt;br /&gt;
  echo XX &amp;gt; /sys/class/backlight/thinkpad_screen/brightness &lt;br /&gt;
&lt;br /&gt;
Where XX is a number between 0 and 15.&lt;br /&gt;
&lt;br /&gt;
===Fingerprint Reader===&lt;br /&gt;
&lt;br /&gt;
A short test with [[How_to_enable_the_fingerprint_reader_with_ThinkFinger|Thinkfinger]] showed no problems.&lt;br /&gt;
&lt;br /&gt;
===Synaptics Touchpad===&lt;br /&gt;
&lt;br /&gt;
Seems to work only with Protocol auto-dev and /dev/psaux:&lt;br /&gt;
&lt;br /&gt;
 Section &amp;quot;InputDevice&amp;quot;&lt;br /&gt;
        Identifier      &amp;quot;Synaptics Touchpad&amp;quot;&lt;br /&gt;
        Driver          &amp;quot;synaptics&amp;quot;&lt;br /&gt;
        Option          &amp;quot;SendCoreEvents&amp;quot;        &amp;quot;true&amp;quot;&lt;br /&gt;
        Option          &amp;quot;Device&amp;quot;                &amp;quot;/dev/psaux&amp;quot;&lt;br /&gt;
        Option          &amp;quot;Protocol&amp;quot;              &amp;quot;auto-dev&amp;quot;&lt;br /&gt;
        Option          &amp;quot;HorizScrollDelta&amp;quot;      &amp;quot;20&amp;quot;&lt;br /&gt;
 EndSection&lt;br /&gt;
&lt;br /&gt;
===Fan===&lt;br /&gt;
&lt;br /&gt;
Unfortunately the fan is spinning almost all the time, haven't found a way around this, yet.&lt;br /&gt;
&lt;br /&gt;
[2008-4-27] The fan's controller turns off or at a low enough speed to be silent (~1800 rpm) when the CPU temp gets below 108 F. It goes back to full speed at around 111 F. At least my system sits around 108-115 F under normal usage. I don't think there's any problem with the fan staying on all the time. It's a tiny fan and air duct and is bound to make noise trying to push any reasonable amount of air. --fritz&lt;br /&gt;
&lt;br /&gt;
[2008-5-13] First off, the fan shouldn't be on at all unless the CPU is being used. When I run Windows the fan is almost never on. I've worked a bit on this and have had no success. I shutdown all processes including X and the fan still runs. Therefore, this seems to be an issue with the kernel and possibly Linux not leveraging speedstep or something else on the chip correctly. I'll do a bit more digging, but this is pretty annoying and would be nice to fix because it would also mean longer battery life (heat = power). --bpontarelli&lt;br /&gt;
&lt;br /&gt;
[2008-6-11] If fan_control=1 is added to thinkpad_acpi then fan speed can be controlled by `echo level 0-7 &amp;gt; /proc/acpi/ibm/fan`. 1 gives speed about 2000, the fan is really silent but its cooling ability is low. When I set 2, then speed is 5100 - same speed as if it's left on auto. :( For more info see: [[How to control fan speed]]. --semik&lt;br /&gt;
&lt;br /&gt;
[2008-7-07] You can use the fancontrol daemon which comes with the lm-sensors package to regulate the fan from userspace. With 1800 rpm the temperature stays around 50 C when idle and the fan is barely noticable.&lt;br /&gt;
&lt;br /&gt;
===HDAPS-Fun (Motion sensor)===&lt;br /&gt;
&lt;br /&gt;
The X300 has a motion sensor, but it is not yet recognized by the standard hdaps-module, but if you install [[Tp smapi]] (which i suggest, because it provides a lot of information about your battery) it works fine.&lt;br /&gt;
&lt;br /&gt;
===Bluetooth===&lt;br /&gt;
&lt;br /&gt;
You need to do:&lt;br /&gt;
&lt;br /&gt;
 echo enable &amp;gt; /proc/acpi/ibm/bluetooth&lt;br /&gt;
&lt;br /&gt;
or (as the proc interface to acpi gets deprecated)&lt;br /&gt;
&lt;br /&gt;
 echo -n 1 &amp;gt; /sys/devices/platform/thinkpad_acpi/bluetooth_enable&lt;br /&gt;
&lt;br /&gt;
And magically, the Bluetooth-Daughterboard appears as an USB device:&lt;br /&gt;
&lt;br /&gt;
 Bus 003 Device 003: ID 0a5c:2110 Broadcom Corp.&lt;br /&gt;
&lt;br /&gt;
If you like to use the ThinkPad [[Bluetooth Laser Mouse]] see the article on how to set it up.&lt;br /&gt;
&lt;br /&gt;
===Sound===&lt;br /&gt;
&lt;br /&gt;
Sound works if you build alsa modules yourself:&lt;br /&gt;
* Download latest alsa snapshot from [ftp://ftp.suse.com/pub/projects/alsa/snapshot/driver/ here].&lt;br /&gt;
* Unpack and run:&lt;br /&gt;
 ./configure --with-debug=detect&lt;br /&gt;
 make&lt;br /&gt;
 make install&lt;br /&gt;
 /etc/init.d/alsasound stop&lt;br /&gt;
 /etc/init.d/alsasound start&lt;br /&gt;
&lt;br /&gt;
*[2008-12-01] With hardy-heron 2.6.24-22-generic and alsa-driver-1.0.18a, a straight make ran into header problems. But by limiting the cards that were actually being compiled (in particular removing the '''hrtimer''' card) by reconfiguring before making, the compile worked and the sound worked.  I used the following command&lt;br /&gt;
 &lt;br /&gt;
 ./configure --with-debug=basic --with-sequencer=yes --with-cards=ens1371,es1938,es1968,fm801,hda-intel,hdsp,hdspm,hifier,ice1712,ice1724,intel8x0,intel8x0m,korg1212 --with-card-options=all&lt;br /&gt;
&lt;br /&gt;
but the following simplification should work also&lt;br /&gt;
&lt;br /&gt;
 ./configure --with-debug=basic --with-sequencer=yes --with-cards=hda-intel --with-card-options=all&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* You may need to modify the last two lines for your distro (or just restart if you're lazy...)&lt;br /&gt;
* If you're using ubuntu hardy, you probably need to create a softlink: &lt;br /&gt;
 ln -s /lib/modules/&amp;lt;your kernel&amp;gt;/kernel/sound/ /lib/modules/&amp;lt;your kernel&amp;gt;/ubuntu/sound/alsa-driver&lt;br /&gt;
The alsa-driver directory may already exist, and you should either remove or rename it.&lt;br /&gt;
&lt;br /&gt;
This patch is in the git kernel and won't be committed until 2.6.26, so this is your only option for a good while.&lt;br /&gt;
&lt;br /&gt;
The sound works out of the box using kernel 2.6.26-rc9.&lt;br /&gt;
&lt;br /&gt;
[2008-07-10] Sound works nearly out of the box with the last FC9 2.6.25.9-76 kernel (the audio codec has to be recognized exactly as &amp;quot;Analog Devices AD1984A&amp;quot;, one can check it in /proc/asound/card0/codec#0) : give the module snd-hda-intel the option &amp;quot;model=thinkpad&amp;quot; -- Ptyx&lt;br /&gt;
&lt;br /&gt;
===Camera===&lt;br /&gt;
&lt;br /&gt;
If you build the Linux UVC drivers from SVN, the cam gets recognized:&lt;br /&gt;
&lt;br /&gt;
 Linux video capture interface: v2.00&lt;br /&gt;
 uvcvideo: Found UVC 1.00 device &amp;lt;unnamed&amp;gt; (17ef:4807)&lt;br /&gt;
 input: UVC Camera (17ef:4807) as /class/input/input9&lt;br /&gt;
 usbcore: registered new interface driver uvcvideo&lt;br /&gt;
 USB Video Class driver (SVN r205)&lt;br /&gt;
&lt;br /&gt;
In order to build latest uvc driver:&lt;br /&gt;
 svn checkout svn://svn.berlios.de/linux-uvc/linux-uvc/trunk&lt;br /&gt;
 cd trunk&lt;br /&gt;
 make&lt;br /&gt;
 make install&lt;br /&gt;
 rmmod uvcvideo&lt;br /&gt;
 modprobe uvcvideo&lt;br /&gt;
&lt;br /&gt;
You can display the video-stream using mplayer:&lt;br /&gt;
&lt;br /&gt;
 mplayer -fps 25 tv://&lt;br /&gt;
&lt;br /&gt;
You'll want to use a newer version of gstreamer as well ( &amp;gt; 0.10.15).&lt;br /&gt;
&lt;br /&gt;
The camera works out of the box starting from kernel 2.6.26-rc9.&lt;br /&gt;
&lt;br /&gt;
[2008-07-10] Camera works out of the box with the last FC9 2.6.25.9-76 kernel. -- Ptyx&lt;br /&gt;
&lt;br /&gt;
===Suspend &amp;amp; Hibernate===&lt;br /&gt;
Hibernation works on Lenny out of box with uswsusp package. It's pretty fast comparing to my old DELL D410, I guess thanks to SSD drive.&lt;br /&gt;
&lt;br /&gt;
Suspending fails because of the e1000 driver. I must remove eth0 driver to keep notebook sleeping. If the driver is present then notebook resumes 1-2 seconds after suspending. Newer kernels (at least 2.6.26-rc9 upwards) use the e1000e driver to control the network interface, but suspending still fails. Just add&lt;br /&gt;
a file in /etc/pm/config.d/ and add one line&lt;br /&gt;
&lt;br /&gt;
 SUSPEND_MODULES=&amp;quot;e1000e&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Now suspend works.&lt;br /&gt;
&lt;br /&gt;
[2008-07-23] To fix an issue with rebooting instead of powering off after suspending to disk, set this option in /etc/uswsusp.conf --Timo&lt;br /&gt;
&lt;br /&gt;
 shutdown method = shutdown&lt;br /&gt;
&lt;br /&gt;
===Some interesting facts===&lt;br /&gt;
&lt;br /&gt;
 # lspci &lt;br /&gt;
 00:00.0 Host bridge: Intel Corporation Mobile Memory Controller Hub (rev 0c)&lt;br /&gt;
 00:02.0 VGA compatible controller: Intel Corporation Mobile Integrated Graphics Controller (rev 0c)&lt;br /&gt;
 00:02.1 Display controller: Intel Corporation Mobile Integrated Graphics Controller (rev 0c)&lt;br /&gt;
 00:19.0 Ethernet controller: Intel Corporation Unknown device 1049 (rev 03)&lt;br /&gt;
 00:1a.0 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI #4 (rev 03)&lt;br /&gt;
 00:1a.1 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI #5 (rev 03)&lt;br /&gt;
 00:1a.7 USB Controller: Intel Corporation 82801H (ICH8 Family) USB2 EHCI #2 (rev 03)&lt;br /&gt;
 00:1b.0 Audio device: Intel Corporation 82801H (ICH8 Family) HD Audio Controller (rev 03)&lt;br /&gt;
 00:1c.0 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 1 (rev 03)&lt;br /&gt;
 00:1c.1 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 2 (rev 03)&lt;br /&gt;
 00:1c.2 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 3 (rev 03)&lt;br /&gt;
 00:1d.0 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI #1 (rev 03)&lt;br /&gt;
 00:1d.1 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI #2 (rev 03)&lt;br /&gt;
 00:1d.2 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI #3 (rev 03)&lt;br /&gt;
 00:1d.7 USB Controller: Intel Corporation 82801H (ICH8 Family) USB2 EHCI #1 (rev 03)&lt;br /&gt;
 00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev f3)&lt;br /&gt;
 00:1f.0 ISA bridge: Intel Corporation Mobile LPC Interface Controller (rev 03)&lt;br /&gt;
 00:1f.1 IDE interface: Intel Corporation Mobile IDE Controller (rev 03)&lt;br /&gt;
 00:1f.2 SATA controller: Intel Corporation Mobile SATA AHCI Controller (rev 03)&lt;br /&gt;
 00:1f.3 SMBus: Intel Corporation 82801H (ICH8 Family) SMBus Controller (rev 03)&lt;br /&gt;
 03:00.0 Network controller: Intel Corporation Unknown device 4230 (rev 61)&lt;br /&gt;
&lt;br /&gt;
 # lsusb &lt;br /&gt;
 Bus 007 Device 001: ID 1d6b:0001  &lt;br /&gt;
 Bus 006 Device 001: ID 1d6b:0001  &lt;br /&gt;
 Bus 005 Device 001: ID 1d6b:0001  &lt;br /&gt;
 Bus 004 Device 001: ID 1d6b:0001  &lt;br /&gt;
 Bus 003 Device 002: ID 0483:2016 SGS Thomson Microelectronics Fingerprint Reader&lt;br /&gt;
 Bus 003 Device 001: ID 1d6b:0001  &lt;br /&gt;
 Bus 002 Device 002: ID 17ef:4807  &lt;br /&gt;
 Bus 002 Device 001: ID 1d6b:0002  &lt;br /&gt;
 Bus 001 Device 001: ID 1d6b:0002 &lt;br /&gt;
&lt;br /&gt;
 # cat /proc/cpuinfo (at 800 Mhz)&lt;br /&gt;
 processor       : 0&lt;br /&gt;
 vendor_id       : GenuineIntel&lt;br /&gt;
 cpu family      : 6&lt;br /&gt;
 model           : 15&lt;br /&gt;
 model name      : Intel(R) Core(TM)2 Duo CPU     L7100  @ 1.20GHz&lt;br /&gt;
 stepping        : 11&lt;br /&gt;
 cpu MHz         : 800.000&lt;br /&gt;
 cache size      : 4096 KB&lt;br /&gt;
 physical id     : 0&lt;br /&gt;
 siblings        : 2&lt;br /&gt;
 core id         : 0&lt;br /&gt;
 cpu cores       : 2&lt;br /&gt;
 fdiv_bug        : no&lt;br /&gt;
 hlt_bug         : no&lt;br /&gt;
 f00f_bug        : no&lt;br /&gt;
 coma_bug        : no&lt;br /&gt;
 fpu             : yes&lt;br /&gt;
 fpu_exception   : yes&lt;br /&gt;
 cpuid level     : 10&lt;br /&gt;
 wp              : yes&lt;br /&gt;
 flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx lm constant_tsc arch_perfmon pebs  bts pni monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr lahf_lm ida&lt;br /&gt;
 bogomips        : 2421.98&lt;br /&gt;
 clflush size    : 64&lt;br /&gt;
&lt;br /&gt;
 processor       : 1&lt;br /&gt;
 vendor_id       : GenuineIntel&lt;br /&gt;
 cpu family      : 6&lt;br /&gt;
 model           : 15&lt;br /&gt;
 model name      : Intel(R) Core(TM)2 Duo CPU     L7100  @ 1.20GHz&lt;br /&gt;
 stepping        : 11&lt;br /&gt;
 cpu MHz         : 800.000&lt;br /&gt;
 cache size      : 4096 KB&lt;br /&gt;
 physical id     : 0&lt;br /&gt;
 siblings        : 2&lt;br /&gt;
 core id         : 1&lt;br /&gt;
 cpu cores       : 2&lt;br /&gt;
 fdiv_bug        : no&lt;br /&gt;
 hlt_bug         : no&lt;br /&gt;
 f00f_bug        : no&lt;br /&gt;
 coma_bug        : no&lt;br /&gt;
 fpu             : yes&lt;br /&gt;
 fpu_exception   : yes&lt;br /&gt;
 cpuid level     : 10&lt;br /&gt;
 wp              : yes&lt;br /&gt;
 flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx lm constant_tsc arch_perfmon pebs bts pni monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr lahf_lm ida&lt;br /&gt;
 bogomips        : 2394.01&lt;br /&gt;
 clflush size    : 64&lt;br /&gt;
&lt;br /&gt;
 # cat /proc/scsi/scsi &lt;br /&gt;
 Attached devices:&lt;br /&gt;
 Host: scsi0 Channel: 00 Id: 00 Lun: 00&lt;br /&gt;
   Vendor: ATA      Model: SAMSUNG MCCOE64G Rev: PS10&lt;br /&gt;
   Type:   Direct-Access                    ANSI  SCSI revision: 05&lt;br /&gt;
 Host: scsi3 Channel: 00 Id: 00 Lun: 00&lt;br /&gt;
   Vendor: MATSHITA Model: DVD-RAM UJ-844   Rev: RC02&lt;br /&gt;
   Type:   CD-ROM                           ANSI  SCSI revision: 05&lt;br /&gt;
&lt;br /&gt;
 # hdparm -t /dev/sda&lt;br /&gt;
 /dev/sda:&lt;br /&gt;
  Timing buffered disk reads:  270 MB in  3.01 seconds =  89.74 MB/sec&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;
&lt;br /&gt;
[[Category:X300]]&lt;/div&gt;</summary>
		<author><name>Youam</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=How_to_make_use_of_Graphics_Chips_Power_Management_features&amp;diff=27829</id>
		<title>How to make use of Graphics Chips Power Management features</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=How_to_make_use_of_Graphics_Chips_Power_Management_features&amp;diff=27829"/>
		<updated>2007-01-21T04:42:56Z</updated>

		<summary type="html">&lt;p&gt;Youam: nobse does not provide debian sarge xorg backports, use backports.org&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=ATI Radeon Mobility chips=&lt;br /&gt;
&lt;br /&gt;
==Power saving with a framebuffer console==&lt;br /&gt;
In order to use the dynamic GPU clock-scaling similar to what X.org has, you need to use the radeonfb kernel module. You'll need to enable the '''CONFIG_FB_RADEON''' in your kernel configuration. If setup correctly you should see something like the following in your kernel log:&lt;br /&gt;
 radeonfb: Dynamic Clock Power Management enabled&lt;br /&gt;
&lt;br /&gt;
==Using the X.org Radeon driver==&lt;br /&gt;
===Activation===&lt;br /&gt;
The xorg X server has support for a power saving feature from ATI called PowerPlay. Xorg calls this feature DynamicClocks. It can be enabled in the server by adding '''Option  &amp;quot;DynamicClocks&amp;quot; &amp;quot;on&amp;quot;''' in the '''Device''' section in {{path|/etc/X11/xorg.conf}}&lt;br /&gt;
&lt;br /&gt;
 Section &amp;quot;Device&amp;quot;&lt;br /&gt;
        Identifier  &amp;quot;Videocard0&amp;quot;&lt;br /&gt;
        Driver      &amp;quot;radeon&amp;quot;&lt;br /&gt;
        VendorName  &amp;quot;IBM ThinkPad&amp;quot;&lt;br /&gt;
        BoardName   &amp;quot;ATI Radeon Mobility M9&amp;quot;&lt;br /&gt;
        '''Option      &amp;quot;DynamicClocks&amp;quot; &amp;quot;on&amp;quot;'''&lt;br /&gt;
 EndSection&lt;br /&gt;
&lt;br /&gt;
With this option enabled, the X11 server should print ({{path|/var/log/Xorg.0.log}}):&lt;br /&gt;
&lt;br /&gt;
 (**) RADEON(0): Option &amp;quot;DynamicClocks&amp;quot; &amp;quot;on&amp;quot;&lt;br /&gt;
 (II) RADEON(0): Dynamic Clock Scaling Enabled&lt;br /&gt;
&lt;br /&gt;
You do not need to do anything else, it dynamically manages the power consumption itself.&lt;br /&gt;
&lt;br /&gt;
{{NOTE|Enabling DynamicClocks crashes some models. If the CPU is entering one of the lower power states (C3 or lower) during Xorg startup the display may stay black. As a workaround disable DynamicClocks in Xorg and use [[Rovclock]] instead. But it does not scale the clocks to match the workload. Update 5/2/2006: Seems fixed in Xorg6.9}}&lt;br /&gt;
&lt;br /&gt;
===Problem with &amp;lt;tt&amp;gt;vbetool&amp;lt;/tt&amp;gt;===&lt;br /&gt;
&lt;br /&gt;
When &amp;lt;tt&amp;gt;vbetool&amp;lt;/tt&amp;gt; is used to restore the display state (as done by some suspend/resume scripts), the setting of &amp;lt;tt&amp;gt;DynamicClocks&amp;lt;/tt&amp;gt; is forgotten and the GPU will consume more power until the next X server startup. You can manually enable DynamicTools again by starting a blank second X server (e.g., by running {{cmdroot|X :1}}) and then exiting it via {{key|Ctrl}}{{key|Alt}}{{key|Backspace}}.&lt;br /&gt;
&lt;br /&gt;
===Problem with suspend-to-disk===&lt;br /&gt;
&lt;br /&gt;
Upon resume from suspend-to-disk, the setting of &amp;lt;tt&amp;gt;DynamicClocks&amp;lt;/tt&amp;gt; is forgotten and the GPU will consume more power until the next X server startup. You can manually enable DynamicClocks again by starting a blank second X server (e.g., by running {{cmdroot|X :1}}) and then exiting it via {{key|Ctrl}}{{key|Alt}}{{key|Backspace}}.&lt;br /&gt;
&lt;br /&gt;
If you're using the hibernate script that's part of [[Software Suspend 2]], setting UseDummyXServer to yes in {{path|hibernate.conf}} automatically starts a second X server, hence enabling DynamicClocks again. (Remember to disable UseDummyXServer if you switch to the [[fglrx]] driver, otherwise your computer will hang upon resume.)&lt;br /&gt;
&lt;br /&gt;
Note: When using the [[Synaptics TouchPad driver for X]] with the SHMConfig-Option set to true in {{path|xorg.conf}}, starting a second X server breaks the Shared Memory and the touchpad can't be configured with {{cmd|synclient|}} any longer. Starting the dummy X server with a different xorg.conf file is a solution to this, a patch can be found in the [http://bugzilla.suspend2.net/show_bug.cgi?id=138 suspend2 bugzilla].&lt;br /&gt;
&lt;br /&gt;
===Debian Notes===&lt;br /&gt;
If your {{Debian}} doesn't have Xorg, yet, see [http://incubator.vislab.usyd.edu.au/roller/page/Steve/20040909 Installing a non-intrusive X.org server on Debian].&lt;br /&gt;
&lt;br /&gt;
Sarge backports are available from [http://www.backports.org/ here].&lt;br /&gt;
&lt;br /&gt;
==Using the ATI proprietary driver==&lt;br /&gt;
&lt;br /&gt;
Versions 8.19.10 and higher of the ATI [[fglrx]] driver support &amp;quot;PowerPlay&amp;quot;, which &amp;quot;allows for the user to switch between power consumption modes&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
To list available modes do:&lt;br /&gt;
:{{cmdroot|aticonfig  --list-powerstates}}&lt;br /&gt;
:{{cmdresult|&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;core/mem&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;[flags]}}&lt;br /&gt;
:{{cmdresult|---------------}}&lt;br /&gt;
:{{cmdresult|1: 105/122 MHz&amp;amp;nbsp;&amp;amp;nbsp;[low voltage]}}&lt;br /&gt;
:{{cmdresult|2: 209/182 MHz&amp;amp;nbsp;&amp;amp;nbsp;[low voltage]}}&lt;br /&gt;
:{{cmdresult|3: 297/230 MHz&amp;amp;nbsp;&amp;amp;nbsp;[default state]}}&lt;br /&gt;
&lt;br /&gt;
(Strangely, the same ThinkPad {{T43}} with [[ATI Mobility Radeon X300]] running [[fglrx]] 8.19.10 sometimes gives other, non-sensical results, perhaps due to interaction with [[rovclock]].)&lt;br /&gt;
&lt;br /&gt;
To changing the power mode on the fly:&lt;br /&gt;
:{{cmdroot|1=aticonfig --set-powerstate=2 --effective=now}}&lt;br /&gt;
&lt;br /&gt;
With newer driver versions (8.26 and later), &amp;lt;tt&amp;gt;atieventsd&amp;lt;/tt&amp;gt; should dynamically change the power state and clock, depending on thermal conditions and AC plug.&lt;br /&gt;
&lt;br /&gt;
Limitations (as of [[fglrx]] 8.19.10):&lt;br /&gt;
* You can't set the power state in {{path|/etc/X11/xorg.conf}} .&lt;br /&gt;
* You can't activate power saving when using dual-head mode (e.g., LCD+CRT).&lt;br /&gt;
&lt;br /&gt;
{{NOTE|[[fglrx]] power saving is not compatible with the [[Rovclock]] utility. Setting power saving mode using both [[fglrx]] and [[Rovclock]] results in an unusably slow desktop.}}&lt;br /&gt;
&lt;br /&gt;
==External sources==&lt;br /&gt;
*[http://www.ati.com/products/pdf/powerplaywp2.pdf Marketing information from ATI]&lt;br /&gt;
&lt;br /&gt;
=Other graphics chips=&lt;br /&gt;
No instructions are presently known for other chips.&lt;br /&gt;
&lt;br /&gt;
But see [[Problem with display remaining black after resume]].&lt;br /&gt;
&lt;br /&gt;
[[Category:G40]] [[Category:G41]] [[Category:R32]] [[Category:R40]] [[Category:R40e]] [[Category:R50]] [[Category:R50e]] [[Category:R50p]] [[Category:R51]] [[Category:R52]] [[Category:T30]] [[Category:T40]] [[Category:T40p]] [[Category:T41]] [[Category:T41p]] [[Category:T42]] [[Category:T42p]] [[Category:T43]] [[Category:T43p]]&lt;/div&gt;</summary>
		<author><name>Youam</name></author>
		
	</entry>
</feed>