Lenovo ThinkPad T14 (AMD) Gen 4

This article or section does not follow the
Laptop page guidelines
.
Reason:
Missing a "Function keys" section and some IDs in the hardware table. (Discuss in
Talk:Lenovo ThinkPad T14 (AMD) Gen 4
)
Hardware
PCI/USB ID
Working?
Touchpad
Yes
Keyboard
Yes
GPU
Yes
Webcam
174f:11a8
Yes
Ethernet
10EC:8168
Yes
Bluetooth
Yes
Audio
Yes
Wi-Fi
17CB:1103
Yes
Fingerprint reader
27c6:6594
Yes
TPM
Yes
NFC
Yes
Firmware
S3 Sleep
Option to enable S3 sleep is not available in the BIOS. As a result, only
s2idle
is available.
Wireless
Unreliable/High latency
There is an active
thread
in Lenovo forums regarding this issue. Possible workaround is to disable power saving mode by adding following lines and restarting
NetworkManager
service.
/etc/NetworkManager/conf.d/default-wifi-powersave-on.conf
[connection]
wifi.powersave = 2
There seems to be another issue where after some suspend/wakeup cycles the Wi-Fi card gets into a weird state where it drops almost all outgoing transmissions. This results in authentication timing out and network speeds being unusable. Removing the PCIe device using the sysfs interface and reading it seems to solve this issue:
# lspci | grep Qualcomm
02:00.0
Network controller: Qualcomm Technologies, Inc QCNFA765[...]
# echo 1 > /sys/bus/pci/devices/0000:
02:00.0
/remove
# echo 1 > /sys/bus/pci/rescan
This workaround has been automated with a
script
that ships a systemd service. Install
p14s-wifi-reset-git
AUR
and
Enable
p14s-wakeup-wifi-reset
service. Wi-Fi adapter will be removed and re-added after wakeup from sleep.
Failure to resume from hibernation
The
ath11k_pci
driver is experimental and it fails to recover the device after resuming from hibernation. There is an active
bug report
.
The patch to fix was pending
public review
but has been
reported to be reverted
.
See
Lenovo ThinkPad T14s (AMD) Gen 3#Network / Wi-Fi
for a fix that unloads the
ath11k_pci
module before sleep and loads it again after resume.
WAN
You need to FCC Unlock the Fibocom L860R aka "Intel XMM7560 LTE Advanced Pro Modem" before it can be used. To do this, you need to install
thinkpad-l860-gl-fcc-unlock-bin
AUR
. However, this tool refuses to unlock Lenovo p14s gen4 because this model is not yet certified/has not yet passed RF testing.
As of 2023-11-24 it shows the following message when trying to FCC unlock the modem:
DPR_Fcc_unlock_service[40670]: WWAN is not supported in this machine
Fortunately, it is a very simple executable that only checks what is inside
/sys/class/dmi/id/product_family
before allowing an FCC unlock. If you want to use your Fibocom L860R you need to
create
:
/etc/ModemManager/fcc-unlock.d/8086\:7560
/usr/bin/echo ThinkPad X1 Carbon Gen 10 > product_family
/usr/bin/chmod 600 product_family
/usr/bin/mount -o bind product_family /sys/class/dmi/id/product_family
/opt/fcc_lenovo/DPR_Fcc_unlock_service
/usr/bin/umount /sys/class/dmi/id/product_family
exit 0
Do not forget to make the file
executable
.
That way
/opt/fcc_lenovo/DPR_Fcc_unlock_service
will think that your laptop is a Thinkpad X1 Carbon Gen 10 and it will happily unlock the modem for you to use. Since the file is saved in
/etc/ModemManager/fcc-unlock.d/
ModemManager will FCC unlock your modem automatically every time you initialize a connection to your provider.
Fan
The fan is relatively loud and triggers from simple web browsing.
A first solution is thinkfan from
Fan speed control
, but its not yet perfect as the lowest level maps to too high RPM.
From the fan-controll page: see gentoo link for an example, and add the proposed experimental=1
Fingerprint reader
Fingerprint reader works out of the box with
fprint
. Multiple fingers can be enrolled and any one of those fingers can be used to authorize.
Infrared camera and emitter
On models with an infrared camera,
howdy
can be used to enable face unlock. On some models, the IR emitter is not enabled automatically, in that case, follow the workaround from
Howdy#IR emitter does not work
Speakers
Speakers work out of the box. How ever, they won't have the same sound quality as on Windows due to the missing Dolby Atmos Convolver.
To enable Dolby Atmos Convolver install EasyEffects, go to Effects > Add Convolver > Import Impulse
The quality difference is massive, converting the speakers from sounding tinny and cheap to something actually enjoyable.
You can download the "Movie", "Music", and "Dynamic" presets here:
https://stuff.kurz.pw/arch/P14s_G4/Speakers/
They were created on a P14s G4 AMD (identical to T14) with Windows 11.
Thunderbolt 3 compatibility
Tested with a Lenovo Thunderbolt 3 Dock (40AC) it simply worked out-of-the box (using the USB-C connector right next to the RJ45 port), resulting in new pcie devices appearing on
lspci
etc. So yes, this laptop actually has Thunderbolt 3 compatibility. As with the speaker profiles this test was done on an (identically build) P14s.
Depending on BIOS configuration thunderbolt devices might need activation before being usable, e.g. using
bolt
. For that run
boltctl list
first to retrieve the devices UUID. After that use
boltctl enroll --policy=auto <uuid>
to enable the device.
NFC
Install and start
neard
AUR
. Detected NFC tags should appear as D-Bus objects. Use the scripts from
the test directory
for reading NFC tags.
Other issues
Hang on splash
This article or section needs expansion.
Reason:
The splash option is GRUB-specific: it should be determined whether the issue is hardware related (and should be kept here) or GRUB-related (and should be merged to the
GRUB
page). (Discuss in
Talk:Lenovo ThinkPad T14 (AMD) Gen 4
)
Remove
quiet splash
from the
kernel parameters
.
Mic LED always on
See
Lenovo ThinkPad T14 (AMD) Gen 3#Mute Mic LED always on
.
OLED screen not allowing 90Hz
If only 60Hz is allowed in display settings, add
amdgpu.dcdebugmask=0x8000
to the kernel parameters. This fixes a regression in Linux 6.13 that populates the screen's EDID info with a manufacturer's preferred settings.
Display brightness resets
On models with 2.8K OLED pannel, display brightness resets if the screen is blanked and unblanked. This is fixed in
linux-6.6
and above.
Display stays off after lid close
If your display stays off after closing and then opening the lid, there are few things to note:
- the laptop is not crashed, it is just the display that does not turn itself on again
- you need to "re-initialize" the display in some way, e.g. connecting the laptop via the HDMI port to an external display and then disconnecting
- or switching resolution or (even better) just the refresh rate. This is how this solution works.
Install acpid and then edit the following file and add the lines starting with XDG_Session:
/etc/acpi/handler.sh
button/lid)
       case "$3" in
           close)
               logger 'LID closed'
               ;;
           open)
               logger 'LID opened'
               XDG_SESSION_TYPE=wayland XDG_RUNTIME_DIR=/run/user/1000 kscreen-doctor output.eDP-1.mode.1 output.eDP-1.enable
               XDG_SESSION_TYPE=wayland XDG_RUNTIME_DIR=/run/user/1000 kscreen-doctor output.eDP-1.mode.0 output.eDP-1.enable
               ;;
           *)
               logger "ACPI action undefined: $3"
               ;;
   esac
If you have the 2.8k OLED display this will switch the display to 2880x1800 @ 60Hz and then to 2880x1800 @ 90 Hz every time you open the lid. That way your display gets re-initialized. Note that this solution is only for Wayland. If you are still using X, you will need other environment variables.
Smartcard reader hang
Sometimes the built in
smartcard
reader stops responding (
LIBUSB_ERROR_TIMEOUT
). Fix is to power-cycle the card reader by suspend or by toggling power of the internal usb port using
uhubctl
AUR
.