-
Notifications
You must be signed in to change notification settings - Fork 10
T14s
This page aims to provide an overview of the current status of Linux support for the T14s laptop and Qualcomm Snapdragon X Elite laptops in general.
Important fixes and support for new features (once stable enough) can be found in my x1e80100 wip branches, for example:
https://github.com/jhovold/linux/tree/wip/x1e80100-6.14-rc5
These branches also include a minimal (but functional) johan_defconfig that serves as documentation for the configuration options that need to be enabled for the T14s.
| Feature | Status |
|---|---|
| Audio | wip branch |
| Backlight | started |
| Battery | 6.12 |
| Bluetooth | wip branch |
| Camera | started |
| CPUfreq | wip branch |
| Display (OLED) | 6.12 (-) |
| EFI variables | 6.12 |
| Fingerprint reader | wip branch |
| GPU | 6.12 |
| HDMI | - |
| Hibernation | - |
| Keyboard | 6.12 |
| Keyboard special keys | - |
| Modem | - |
| NVMe SSD | 6.12 |
| PCIe x4 | 6.12 |
| Remoteproc | 6.12 |
| RTC | wip branch |
| Suspend | 6.12 |
| Thermal sensors | started |
| Touchpad (alternate) | 6.12 (6.13) |
| Touchscreen (alternate) | 6.12 (-) |
| TPM | - |
| USB-A | wip branch |
| USB-C | 6.12 |
| USB-C DisplayPort Alt Mode | wip branch |
| USB-PD | 6.12 |
| Video acceleration | started |
| Virtualisation | - |
| Watchdog | wip branch |
| Wi-Fi | 6.12 |
To boot Linux the following kernel parameters need to be provided:
clk_ignore_unused pd_ignore_unused efi=noruntime
due to a generic resource handover issue and a firmware bug, respectively.
- alsa-ucm-conf config (not yet released)
- audioreach topology
- linux-firmware-20250211
- or linux-firmware-20241017 and Windows firmware (in
/lib/firmware/qcom/x1e80100/LENOVO/21N1/)- adsp_dtbs.elf
- cdsp_dtbs.elf
- qcadsp8380.mbn
- qccdsp8380.mbn
- qcdxkmsuc8380.mbn
- or linux-firmware-20241017 and Windows firmware (in
- Mesa 24.2
Most of these issues are shared with other Qualcomm Snapdragon based machines (e.g. other X Elite laptops and the X13s).
- Active speaker protection not enabled, make sure to keep volume low
- DisplayPort output not enabled
- Pipewire playback and capture issues (switch to Pulseaudio as workaround) (fixed in wip branch)
- Pops and clicks
- Support for some functions like mic mute is missing
- aDSP fails to register its services (e.g. sound, battery, USB-C orientation) (very infrequent)
- Audio service fails to register with in-kernel pd-mapper (infrequent) (fixed in wip branch)
- QRTR/MHI race can break boot with in-kernel pd-mapper (infrequent) (fixed in wip branch)
- Active audio streams blocks suspend
- Crash on resume if disconnecting external display while suspended
-
Displays fail to resume(switch VT as workaround) (fixed in 6.14-rc1, 6.13.4, 6.12.16) - Not yet hitting deepest low-power state during suspend
- USB disconnect triggers wakeup (disconnect before suspending as workaround)
- GPU thermal throttling not implemented (fixed in wip branch)
- Skin temperature thermal throttling not implemented
- Boot issues with 64 GB version (disable upper 32 GB as workaround)
cutmem 0x8800000000 0x8fffffffff
- GRUB fails to start on 64 GB version (patch GRUB as workaround)
- Firmware bugs can prevent GRUB and systemd-boot from starting kernel (start via F12 Boot Menu as workaround) (mitigated in wip branch)
- Display driver does not yet support 4-lane DisplayPort Alt Mode
- Repeater PHY implementation breaks lockdep with false positive deadlock warning
- USB-C coldplug orientation detection not working (flip cable as workaround) (fixed in wip branch)
- iwd fails to connect (can be worked around in
/etc/iwd/main.conf)[General] ControlPortOverNL80211=false