Lenovo ThinkPad X1 2-in-1 (Gen 9)

From ArchWiki

This article or section does not follow the Laptop page guidelines.

Reason: Missing some hardware and IDs in the table, and Accessibility and "Function keys" section, possibly a Firmware and Installation section too. (Discuss in Talk:Lenovo ThinkPad X1 2-in-1 (Gen 9))
Hardware PCI/USB ID Working?
Audio 8086:7e28 Yes
Fingerprint reader 06cb:0123 Yes
GPU 8086:7d45 Yes
NFC No
NPU 8086:7d1d Untested
Mobile Broadband 1eac:1007 Yes
Touchpad Yes
Touchscreen Yes
TrackPoint Yes
Webcam 30c9:005f Yes
"Intel IPU6" Partial
Wireless 8087:0033 Yes

The 9th generation of the Lenovo Thinkpad X1 2-in-1 (formely X1 Yoga) is an Intel based 2-in-1 laptop with a 14 inch touchscreen introduced in 2024. The laptop screen can be folded over transforming the device in a tablet like tool while also including a stylus as an extra form of input. It uses the Intel Iris Xe graphics card and the 14th generation of Intel processors. One of the main changes is that the pen is not stored inside the housing but instead outside fixed with a magnet.

To ensure you have this version, install the package dmidecode and run:

# dmidecode -t system | grep Version
        Version: ThinkPad X1 2-in-1 Gen 9

Accessibility

This laptop features a UEFI interface that is driven with a mouse or touchscreen; however, this interface can be disabled in favor of a traditional keyboard interface which is more accessible to use. Blind users might need to request help from a sighted person in order to make this change initially, but once changed the interface is far more easily navigable.

The boot device can be changed out of the box without needing to access the UEFI menu during boot by hitting F12, though the menu is initially on a 10 second timer so it might be necessary to input an UP or DOWN after the menu loads if the user is using a screen reader or something else which might take time in order to provide the user feedback on which option to select.

Audio

This laptop requires Sound Open Firmware in order to make the sound card working.

Fingerprint

The fingerprint reader works out of the box using fprintd. See Fprint.

Firmware

Similar to Lenovo ThinkPad X1 Carbon (Gen 10)#Firmware, UEFI firmware and other device firmware is available through the Linux Vendor Firmware Service (LVFS), and can be installed using fwupd. Updates to the UEFI firmware include updates to the Intel Management Engine, so they may fail altogether if IME is disabled on the UEFI settings. A workaround for this is to temporarily enable IME, upgrade the firmware with fwupd, and disable IME after that.

Secure boot works out of the box with custom keys from multiple tools, including sbctl.

Intel Total Memory Encryption works out of the box by enabling it in the firmware configuration. Probably applies to vPro variants only.

Function keys

In the firmware configuration it is possible to swap the Ctrl and Fn keys.

Key Visible?1 Marked?2 Effect
Fn+Esc No Yes Toggles Fn lock
Fn+F1 Yes Yes Toggles audio mute
Fn+F2 Yes Yes Audio lower volume
Fn+F3 Yes Yes Audio raise volume
Fn+F4 Yes Yes Toogles microphone mute
Fn+F5 Yes Yes Display brightness down
Fn+F6 Yes Yes Display brightness up
Fn+F7 Yes Yes Toggle display
Fn+F8 No Yes Marked as Mode
Fn+F9 Yes Yes Print screen
Fn+F10 Yes Yes Launch2
Fn+F11 No Yes Marked as Microsoft Phone Link
Fn+F12 Yes Yes Favorites
Fn+Space No Yes Toggles keyboard backlights
Fn+4 Yes No System sleep
Fn+Left Yes No Home
Fn+Right Yes No End
Fn+l No No Switch to low power mode
Fn+m No No Switch to balanced/medium power mode
Fn+h No No Switch to performance/high power mode
  1. The key is visible to showkey and similar tools. Wayland-only indicates the code can only be seen from a Wayland session.
  2. The physical key has a symbol on it, which describes its function.

Graphics

The still experimental Xe driver works so far without any issues:

# i915.force_probe=!7d45 xe.force_probe=7d45

See Intel graphics#Testing the new experimental Xe driver for more details.

Libinput

Touchpad, Trackpad, Touchscreen, and Wacom digitizer work out of the box using Libinput and Wayland.

NFC

The instruction on NFC did not work in my case and I was not able to even list the device using pcsc_scan -r.

Mobile Broadband

There are two models supported: Quectel EM160R-GL G2, and Quectel RM520N-GL. Both modules use a direct PCI connection instead of USB, and they are all integrated through the new "wwan" subsystem: the Qualcomm based ones are supported in the kernel since 5.13.

Putting any other card will result in a "unsupported network card" message during POST following a forced shutdown.

Model FRU P/N
Quectel EM160R-GL G2 5W11H85449 ?
Quectel RM520N-GL 5W11H85459 4XC1Q24435

Both card need the FCC unlock procedure as detailed in Mobile broadband modem#FCC locking.

For Quectel RM520N-GL that would be:

# ln -s /usr/share/ModemManager/fcc-unlock.available.d/1eac /etc/ModemManager/fcc-unlock.d/1eac:1007

Webcam

There are two webcam types:

  • FHD 1080p camera - works out of the box
  • MIPI "Computer Vision" 2160p camera - does not work out of the box currently

Because webcam and display are treated as a single unit, the type is determined with the display option:

Display Webcam
14" WUXGA (1920 x 1200) FHD 1080p
14" WUXGA (1920 x 1200) matte FHD 1080p
14" 2,8K (2880 x 1800) OLED MIPI "Computer Vision" 2160p
14" WUXGA (1920 x 1200) ePrivacy MIPI "Computer Vision" 2160p

Brightness OLED Screen

Unlike previous OLED panels, the value written in /sys/class/backlight/intel_backlight/brightness defines the screen brightness. For the OLED version the maximum value is 400.

Performance modes

Lenovo supports 'platform-profiles', which can either greatly improve performance and throttling, or battery life and thermals. The default mode is "balanced" however users can switch between these modes using keyboard shortcuts:

  • Fn+l - Low-power mode
  • Fn+m - Balanced mode (aka Medium)
  • Fn+h - Performance mode (aka High)

The currently active mode can be checked with the following command:

# cat /sys/firmware/acpi/platform_profile

The performance mode may also be queried and set using powerprofilesctl from power-profiles-daemon. See CPU frequency scaling#Userspace tools.