Lenovo ThinkPad T25
Hardware | PCI/USB ID | Working? |
---|---|---|
GPU (Intel) | Yes | |
GPU (Nvidia) | Yes | |
Wireless | Yes | |
Bluetooth | Yes | |
Mobile broadband | Yes | |
Webcam | Yes | |
Microsoft Hello | No | |
TrackPoint | Yes | |
Touchpad | Yes | |
Touchscreen | Yes | |
Fingerprint Reader | No |
This article covers the installation and configuration of Arch Linux on a Lenovo T25 Anniversary Edition laptop. It is based on the Lenovo T470 laptop so most of the hardware is identical and therefore should work like the T470.
For a general overview of laptop-related articles and recommendations, see Laptop.
Firmware (e.g. bios and peripherals)
As of writing, the current BIOS version is 1.54. By visiting the downloads section (T25) an ISO can be downloaded and burned to disk which will perform the update from Lenovo. Or extracted and copied on a USB Stick.
Kernel and hardware support
Hardware video acceleration with Kaby Lake seems to work fine via va-api.
As noted in Intel graphics, the xf86-video-intel driver seems to cause more issue than the builtin modesetting
Xorg driver.
Works fine without the intel driver (on a Skylake configuration).
138a:0097 will hopefully be supported as part of Validity90. Since the hardware is the same as in the T470 model, the fingerprint reader guide probably will work.
Screen backlight
With the intel
driver (xf86-video-intel the xbacklight
brightness control is not working.
It is possible that, with the good acpi_*
kernel parameters, the backlight related keys do their job.
Other workaround exists, such as described on this post or in the wiki acpid#Enabling backlight control.
Using the acpilight package as a xbacklight
replacement works well.
You can also check this repository] as a base to add the ACPI rules to call xbacklight
when backlight keys are pressed.
Thunderbolt 3
With the latest kernel (4.13.9 as of writing), the Alpine Ridge thunderbolt 3 controller is recognized without any additional configuration. Using a generic thunderbolt 3 to HDMI + USB3 hub works out of the box (the HDMI output is recognized by xrandr as DP-1 output).
UEFI boot
After configuring the BIOS setup to allow UEFI boot (either UEFI only or both), it works flawlessly.
Special buttons
Some special buttons are not supported by X server due to keycode number limit.
Key combination | Scancode | Keycode |
---|---|---|
Fn+F11 |
0x49 |
374 KEY_KEYBOARD
|
Fn+F12 |
0x45 |
364 KEY_FAVORITES
|
Fn+Space |
0x13 |
372 KEY_ZOOM
|
You can remap unsupported keys using udev hwdb:
/etc/udev/hwdb.d/90-thinkpad-keyboard.hwdb
evdev:name:ThinkPad Extra Buttons:dmi:bvn*:bvr*:bd*:svnLENOVO*:pn* KEYBOARD_KEY_13=search KEYBOARD_KEY_45=prog1 KEYBOARD_KEY_49=prog2
Update hwdb after editing the rule.
# udevadm hwdb --update
Touchpad and trackpoint
Touchpad and trackpoint share bandwidth, so using them at the same time makes trackpoint slow, jumpy, and abrupt. Disabling the touchpad either in BIOS or via xinput does not fix the problem, so the trackpoint becomes unusable each time the touchpad is occasionally touched.
The touchpad is also accessible over secondary bus (SMBUS/RMI), allowing to leave the full bandwidth for the trackpoint. The kernel source code contains the whitelist of supported devices, which does not include LEN008e (T25 touchpad). You can enforce this feature setting synaptics_intertouch
parameter of psmouse
module to 1
. For instance, using kernel cmdline: psmouse.synaptics_intertouch=1
.