Lenovo Thinkpad X9
Hardware | PCI/USB ID | Working? |
---|---|---|
ForcePad | Yes | |
TouchScreen | Yes | |
Stylus | Yes | |
GPU | 8086:64a0 |
Yes |
Webcam | No | |
IR camera | No | |
Audio | 8086:a828 |
Yes |
Wireless | 8086:a840 |
Yes |
NPU | 8086:643e |
Yes |
Bluetooth | 8086:a876 |
Yes |
Fingerprint reader | 06cb:019d |
Yes |
Ambient light sensor | No | |
USB4 | 06cb:a87d |
Partial |
TPM | Yes |
In general, Linux kernel 6.14 is required for most peripherals to function properly.
ForcePad
The ForcePad functions needs kernel driver for Intel THC (Touch Host Controller) which is upstreamed to Linux kernel 6.14. The following config is already enabled for linux:
config
CONFIG_INTEL_THC_HID=m CONFIG_INTEL_QUICKSPI=m CONFIG_INTEL_QUICKI2C=m
For 14" Sensel touchpad, you can adjust haptic feedback using hid-tools:
# hid-feature set /dev/hidraw1 -f b0000 <value 1-100>
and click force with:
# hid-feature set /dev/hidraw1 -f d0000 <value 1-3>
The device reverts to default settings after reboot. We can make it permanent through udev rules:
etc/udev/rules.d/99-sensel.rules
SUBSYSTEM=="hidraw", ACTION=="add", ENV{ID_VENDOR_FROM_DATABASE}=="Cirtech (UK) Ltd", RUN+="/usr/bin/hid-feature set /dev/%k -f b0000 50", RUN+="/usr/bin/hid-feature set /dev/%k -f d0000 1"
TouchScreen
Same as #ForcePad.
Stylus
Same as #ForcePad.
Audio
This laptop requires Sound Open Firmware in order to make the sound card working.
Power Management
There are typically battery charging adjustments available for ThinkPad laptops.
See Power management/Suspend and hibernate#Changing suspend method.
Ambient Light Sensor
This model needs a custom Intel ISH (Integrated Sensors Hub) firmware for the ambient light sensors. The custom firmware is not upstreamed yet and can be extracted from the Windows driver package through innoextract. The ISH firmware is located at:
/lib/firmware/intel/ish/ish_lnlm.bin.zst
Webcam
Certain models feature MIPI cameras that currently lack upstream kernel support.
MIPI cameras rely on multiple drivers to function correctly, including those for the CSI controller (IPU7), the I/O expansion board, and the camera sensor itself. While the IPU7 patch series has already been posted, its merging timeline remains uncertain.
In particular, both 14-inch model and 15-inch model use the IMX471 camera sensor, which is relatively uncommon and currently lacks an available driver.
Conversely, non-MIPI cameras are expected to work out of the box.
IR Camera
Same as Webcam. The driver for the IR camera sensor (HM1092) is not available yet.
Firmware
Thinkpad X9 is one of the model in the Lenovo Linux program. But the fwupd support is not ready since the Linux certificate is not finished.
Before the fwupd support is ready. The firmware can be updated through the bootable ISO provided by Lenovo.
Function keys
Key | Visible?1 | Marked?2 | Effect |
---|---|---|---|
Fn |
Yes | No |
KEY_WAKEUP
|
Fn+Esc |
No3 | Yes | Enables Fn lock |
Fn+F1 |
Yes3 | Yes |
KEY_MUTE
|
Fn+F2 |
Yes | Yes |
KEY_VOLUMEDOWN
|
Fn+F3 |
Yes | Yes |
KEY_VOLUMEUP
|
Fn+F4 |
Yes3 | Yes |
KEY_F20 4 Mutes microphone
|
Fn+F5 |
Yes | Yes |
KEY_BRIGHTNESSDOWN 5
|
Fn+F6 |
Yes | Yes |
KEY_BRIGHTNESSUP 5
|
Fn+F7 |
Yes | Yes |
KEY_SWITCHVIDEOMODE 4
|
Fn+F9 |
No3 | Yes | Toggles integrated camera |
Fn+F10 |
Yes | Yes |
KEY_SYSRQ 4
|
Fn+F12 |
Yes | Yes |
KEY_BOOKMARKS 4
|
Fn+End |
Yes | Yes |
KEY_INSERT
|
Fn+B |
Yes | No |
KEY_LEFTCTRL +KEY_PAUSE
|
Fn+P |
Yes | No |
KEY_PAUSE
|
Fn+K |
Yes | No |
KEY_SCROLLLOCK
|
Fn+Up |
Yes | Yes |
KEY_PAGEUP
|
Fn+Down |
Yes | Yes |
KEY_PAGEDOWN
|
Fn+Left |
Yes | No |
KEY_HOME
|
Fn+Right |
Yes | No |
KEY_END
|
Fn+S |
Yes | No |
KEY_LEFTALT +KEY_SYSRQ
|
- The key is visible via
evtest
and similar tools - The physical key has a symbol on it, which describes its function
- An LED indicates the state of this switch
- This event is handled by "ThinkPad Extra Buttons"
- This event is handled by "Video Bus"
Fn
and LeftCtrl
can be swapped in the BIOS menu. The keycaps are the same size, so they could theoretically also be swapped to match the BIOS setting.
Fingerprint sensor
Fingerprint sensor is located on the power button, reported as "Synaptics Sensors".
Seems to work fine with fprintd - out of the box. Tested by running fprintd-enroll and then fprintd-verify.