Lenovo ThinkPad T420

From ArchWiki
Revision as of 21:43, 5 May 2012 by Thim0aer (talk | contribs) (style fixes)
Jump to: navigation, search

This template has only maintenance purposes. For linking to local translations please use interlanguage links, see Help:i18n#Interlanguage links.

Local languages: Català – Dansk – English – Español – Esperanto – Hrvatski – Indonesia – Italiano – Lietuviškai – Magyar – Nederlands – Norsk Bokmål – Polski – Português – Slovenský – Česky – Ελληνικά – Български – Русский – Српски – Українська – עברית – العربية – ไทย – 日本語 – 正體中文 – 简体中文 – 한국어

External languages (all articles in these languages should be moved to the external wiki): Deutsch – Français – Română – Suomi – Svenska – Tiếng Việt – Türkçe – فارسی

This article covers the installation and configuration of Arch Linux on a Lenovo T420 laptop.


This laptop supports UEFI as well as the traditional BIOS.

There are no issues with installing Arch Linux with the latest Archiso.

The rest of the installation process can be followed with the official install guide.


All hardware not listed below works out-of-the-box.


The integrated webcam uses the uvcvideo module which should load automatically. If not, add it to the MODULES array in /etc/rc.conf.

Fingerprint reader

Fingerprint reader works great with fprint and PAM (installation of fingerprint-gui recommended).

See Fprint#Setup_fingerprint-gui for more information.


  • eSATA
  • Firewire

Laptop Settings


ACPI is well supported here. No obvious troubleshoots.


Unfortunately, tp_smapi is only partially supported on the Thinkpad T420. A number of features work since version 0.41. For example, the hard drive protection mechanism HDAPS now works well. See the linked wiki entry.

Some features like setting the starting threshold for charging the battery do not yet work. To control the battery charging thresholds, install the Perl script tpacpi-batAUR from the AUR.

Insert the acpi_call kernel module by running

modprobe acpi_call

or by adding it to the MODULES array in /etc/rc.conf.

Manually set the thresholds by calling

perl /usr/lib/perl5/vendor_perl/tpacpi-bat -v startChargeThreshold 0 40
perl /usr/lib/perl5/vendor_perl/tpacpi-bat -v stopChargeThreshold 0 80

The example values 40 and 80 given here are in percent of the full battery capacity. Adjust them to your own needs. You may also want to add these lines to /etc/rc.local to set them at startup. While these values should be permanent, they will be reset any time the battery is removed.

Also, if you are dual booting with Windows, you can still control the battery charging thresholds with Lenovo's Power Manager which communicates directly to the battery controller.

CPU Frequency Scaling

CPU frequency scaling is fully supported with all of the available processor models with this laptop.


The thinkpad_acpi kernel module needs to be configured so user space programs can control the fan speed.

options thinkpad_acpi fan_control=1

The thinkfan configuration file also needs to know how to set the fan speed. Replace the default sensor settings with the following.

sensor /sys/devices/virtual/thermal/thermal_zone0/temp

You can add or remove services by editing the DAEMONS array in your /etc/rc.conf file. It will initially look something like this:


Laptop Mode Tools

No significant issues were found using Laptop Mode Tools.

Posible bug with Lenovo_ThinkPad_T420#Shutdown on Battery


Suspending and hibernating with pm-utils works as intended.


TouchPad and TrackPoint do work out of the box, but the TouchPad is way too sensitive (i.e. fast) to be usable, since it is recognized as a mouse. To fix this, install the xf86-input-synaptics package and add the following two files to your /etc/X11/xorg.conf.d/ directory:

 Section "InputClass"
        Identifier      "ThinkPad TrackPoint"
        MatchProduct    "TPPS/2 IBM TrackPoint"
        MatchDevicePath "/dev/input/event*"
        Option          "EmulateWheel"          "true"
        Option          "EmulateWheelButton"    "2"
        Option          "XAxisMapping"          "6 7"
        Option          "YAxisMapping"          "4 5"
 Section "InputClass"
        Identifier      "two finger scrolling"
        Driver          "synaptics"
        MatchProduct    "SynPS/2 Synaptics TouchPad"
        MatchDevicePath "/dev/input/event*"
        Option          "VertTwoFingerScroll"   "on"
        Option          "HorizTwoFingerScroll"  "on"
        Option          "EmulateTwoFingerMinW"  "8"
        Option          "EmulateTwoFingerMinZ"  "40"
        Option          "TapButton1"            "1"

Adjust to your own needs. Read Touchpad_Synaptics for more information.

To adjust the speed/sensitivity of the TrackPoint add these lines in your /etc/rc.local script:

echo -n 180 > $TPDEV/speed
echo -n 200 > $TPDEV/sensitivity

Possible range of values are 1-255.

NVIDIA Optimus

Bumblebee works as intended on models with NVIDIA Optimus

Optional kernel boot arguments

Using the following kernel boot parameters [drastically reduces battery drain]:



Media Keys

Media keys that work out of the box:

  • Wireless On/Off
  • Backlight Brightness settings
  • Thinklight
  • Mute

You must find a workaround and bind the keys yourself for the rest of them.

Rebind Forward and Back keys

Keys forward and back (next to cursor keys) can be easily remapped to PageDown/PageUp.

Install xmodmap with the package xorg-server-utils

Create a ~/.Xmodmap file with content:

keysym XF86Back = Page_Up
keysym XF86Forward = Page_Down

Add this line to your ~/.xinitrc to make it work:

xmodmap ~/.Xmodmap

You can also re-map AudioPrev (Template:Keypress) and AudioNext (Template:Keypress) to Home/End:

keysym XF86AudioNext = End
keysym XF86AudioPrev = Home
Note: You have to log out for the changes to take effect.
Note: The keys should work out of the box, at least on KDE.

Shutdown on Battery

One user has reported that his T420 was rebooting on shutdown on battery power. This was fixed by disabling the module ehci_hcd. See Kernel_modules#Blacklisting for more information.

Or try disable Laptop-mode. Add !laptop-mode to the DAEMONS array in /etc/rc.conf:


Hang on Reboot

This is a problem on many laptops and can be fixed by blacklisting the e1000e kernel module.

No Backlight Controls

One user has reported that the brightness controls (fn+home, fn+end) did not work in some desktop environments. This could be fixed by adding the following kernel options:

acpi_backlight=vendor acpi_osi=Linux

See also