Lenovo ThinkPad X220

From ArchWiki
Revision as of 22:14, 18 September 2015 by Elvis (talk | contribs) (Update instructions to fix the middle-button scroll)
Jump to: navigation, search



Battery functions like charging thresholds can be controlled using the script tpacpi-batAUR together with the kernel module acpi_call-gitAUR[broken link: archived in aur-mirror]. The TLP power saving tool supports using acpi_call as backend for setting the thresholds as well.

Fingerprint reader

The Upek fingerprint reader is supported by Fingerprint-gui.


The graphics driver is provided by the xf86-video-intel package from the Official repositories.

Trackpoint and Clickpad

Though this model does have physical Trackpoint buttons, the middle-button-scroll does not work by default. In order to make it work, you need to install the xf86-input-libinput package from the Official repositories.

As the Clickpad is buttonless, middle- and right-click support can be enabled by following the instructions on the Synaptics page.

Merge-arrows-2.pngThis article or section is a candidate for merging with TrackPoint.Merge-arrows-2.png

Notes: please use the second argument of the template to provide more detailed indications. (Discuss in Talk:Lenovo ThinkPad X220#)

Trackpoint properties like speed and sensitivity can be configured using either the sysfs or udev rules.

To set the speed and sensitivity temporarily, run as root:

# echo 120 > /sys/devices/platform/i8042/serio1/speed
# echo 200 > /sys/devices/platform/i8042/serio1/sensitivity

The following udev rule makes these changes permanent:

# Set the trackpoint speed and sensitivity
SUBSYSTEM=="serio", DRIVERS=="psmouse", ATTR{sensitivity}="200", ATTR{speed}="120"

Alternatively an udev add-rule can be used, if the changes are not applied correctly. This can happen if the trackpoint device was not instantiated yet. This solution was posted here: thinkpad-forum.de

# Set the trackpoint speed and sensitivity
ACTION=="add",SUBSYSTEM=="input",ATTR{name}=="TPPS/2 IBM TrackPoint",ATTR{device/sensitivity}="240",ATTR{device/speed}="200"


Boot fails

The laptop can not boot from a GPT disk in legacy BIOS mode, it is necessary to either switch to UEFI booting or create a MBR Partition Table.

Reboot loop after resume from suspend

This can be caused by the EFI storage getting too full. Run the following commands as root to free up some space.

 # First clear the pstore
 mkdir -p /dev/pstore
 mount -t pstore pstore /dev/pstore
 ls /dev/pstore # <- Nothing important should be here, but check first anyway
 rm /dev/pstore/*
 # Next some EFI variables. These are used/created by pstore, but I've had them even though 
 #I deleted the pstore data using the above commands. YMMV.
 rm /sys/firmware/efi/efivars/dump-type0-*

This information was taken from the Lenovo forums


The x220 internal microphone has been the source of many complaints across platforms. Specifically, it can generate a lot of static or hissing on top of any recorded audio. The workaround is to mute the right mic input channel (in audio control programs that allow independent channel setting) or to drag the balance slider in a GUI for the internal mic level fully to the left.

Note also that the audio jack is a combination headset/mic jack and will work with modern smartphone headsets with inline microphones, as an alternative.


Since linux 3.16, some backlight-related kernel parameter defaults have been changed, causing the hardware brightness up/down keys to no longer function automatically. This can be worked around by setting acpi_osi, e.g.

 acpi_osi="!Windows 2012"

in the kernel boot options. More details can be found on the Backlight page.

See also