[ThinkPad E14 Gen2] Closing the lid does not trigger system suspend - fn keys not working

Bug #1912946 reported by Evgenii Shatokhin
14
This bug affects 2 people
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Confirmed
Undecided
Unassigned

Bug Description

According to the system settings (see the attached screenshot), the laptop should go to sleep (suspend to RAM) when I close the lid. However, closing the lid has no visible effect.

'systemctl suspend' works OK, choosing 'Leave' -> 'Sleep' in the menu works too.

After suspend and resume, closing the lid starts working as expected and is triggering suspend to RAM. So this might be related to BIOS, ACPI or something similar.

I am filing this bug against 'linux' package because, perhaps, a quirk could be added in the kernel as a workaround. IIRC, the kernel had a number of quirks to work around BIOS/ACPI problems.

A similar issue exists with Fn keys on this machine: they do not work after a boot but start working after I have suspended and resumed the system (checked with Fn+F5/F6 - brightness down/up). Others encountered that too (see [1], [2] below). I suspect it is caused by the same bug in BIOS or ACPI.

ThinkPad E14 Gen2 with AMD Ryzen 5 4500U
Machine type model: 20T60030RT

UEFI BIOS ver: R1AET33W (1.09), the latest version at the moment
Embedded controller FW ver. R1AHT33W (1.09)

SecureBoot: off

OS: Ubuntu 20.10 amd64

Kernel 5.8.0-40-generic.
I have also tried the builds of the newer mainline kernels:
* 5.9.0-050900-generic from https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.9/amd64/
* 5.10.0-051000-generic from https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.10/amd64/
The issues with lid closing and Fn keys show up there too.
----

[1] https://askubuntu.com/questions/1289640/fn-key-doesnt-work-in-ubuntu-20-04-on-lenovo-thinkpad-e14
[2] https://forums.lenovo.com/t5/Other-Linux-Discussions/Linux-Fn-keys-not-working-Thinkpad-E14-AMD-Gen-2/m-p/5027791

ProblemType: Bug
DistroRelease: Ubuntu 20.10
Package: linux-image-5.8.0-40-generic 5.8.0-40.45
ProcVersionSignature: Ubuntu 5.8.0-40.45-generic 5.8.18
Uname: Linux 5.8.0-40-generic x86_64
ApportVersion: 2.20.11-0ubuntu50.3
Architecture: amd64
AudioDevicesInUse:
 USER PID ACCESS COMMAND
 /dev/snd/controlC1: alina 1059 F.... pulseaudio
                      alina 1062 F.... pipewire-media-
 /dev/snd/controlC0: alina 1062 F.... pipewire-media-
 /dev/snd/seq: alina 1058 F.... pipewire
CasperMD5CheckResult: skip
CurrentDesktop: KDE
Date: Sun Jan 24 17:09:34 2021
InstallationDate: Installed on 2021-01-18 (6 days ago)
InstallationMedia: Kubuntu 20.10 "Groovy Gorilla" - Release amd64 (20201022)
MachineType: LENOVO 20T60030RT
ProcFB: 0 amdgpudrmfb
ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-5.8.0-40-generic root=UUID=1b0f22fc-c314-411c-87c4-ef7e71326576 ro quiet splash vt.handoff=7
RelatedPackageVersions:
 linux-restricted-modules-5.8.0-40-generic N/A
 linux-backports-modules-5.8.0-40-generic N/A
 linux-firmware 1.190.3
SourcePackage: linux
UpgradeStatus: No upgrade log present (probably fresh install)
dmi.bios.date: 10/26/2020
dmi.bios.release: 1.9
dmi.bios.vendor: LENOVO
dmi.bios.version: R1AET33W (1.09 )
dmi.board.asset.tag: Not Available
dmi.board.name: 20T60030RT
dmi.board.vendor: LENOVO
dmi.board.version: Not Defined
dmi.chassis.asset.tag: No Asset Information
dmi.chassis.type: 10
dmi.chassis.vendor: LENOVO
dmi.chassis.version: None
dmi.ec.firmware.release: 1.9
dmi.modalias: dmi:bvnLENOVO:bvrR1AET33W(1.09):bd10/26/2020:br1.9:efr1.9:svnLENOVO:pn20T60030RT:pvrThinkPadE14Gen2:rvnLENOVO:rn20T60030RT:rvrNotDefined:cvnLENOVO:ct10:cvrNone:
dmi.product.family: ThinkPad E14 Gen 2
dmi.product.name: 20T60030RT
dmi.product.sku: LENOVO_MT_20T6_BU_Think_FM_ThinkPad E14 Gen 2
dmi.product.version: ThinkPad E14 Gen 2
dmi.sys.vendor: LENOVO

Revision history for this message
Evgenii Shatokhin (euspectre) wrote :
Revision history for this message
Ubuntu Kernel Bot (ubuntu-kernel-bot) wrote : Status changed to Confirmed

This change was made by a bot.

Changed in linux (Ubuntu):
status: New → Confirmed
tags: added: hirsute
Revision history for this message
Evgenii Shatokhin (euspectre) wrote : Re: [ThinkPad E14 Gen2] Closing the lid does not trigger system suspend

Fn keys, reaction to lid close and reporting of battery state start working OK after suspend-to-ram and waking up the system. So, as a temporary workaround, I added 2-second suspend operation to run at each boot, as suggested here: https://forums.lenovo.com/topic/findpost/27/5027791/5148559:

/etc/crontab:
----------
<...>
@reboot root rtcwake -m mem -s 2
----------

Ugly, but it works for me.
----------------------------------------------------------------

As alternative workaround, it was suggested to use a custom ACPI DSDT table: https://github.com/masksshow/Thinkpad-E14-15-AMD-Gen-2-FIX.

Looks like the script from that github repo does the following:
* Dumps ACPI DSDT table and decodes it
* Replaces "Name (H8DR, 0x00)" with "Name (H8DR, One)" there
* Encodes the corrected table
* Instructs GRUB to use it at boot.

I haven't tried that.

Revision history for this message
Evgenii Shatokhin (euspectre) wrote :

I have tried the kernel 5.11 from https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.11/ - the problem is still present, as it was expected.

Revision history for this message
elguavas (elguavas.) wrote :

just confirming that that _both_ issues still occur with the latest kernel updates on 21.04 as of today (2021-10-15).

would be really nice not to have to use either of the two hacks described above to get this working.

i also added the fn key problem to the bug title to aid in searching.

summary: - [ThinkPad E14 Gen2] Closing the lid does not trigger system suspend
+ [ThinkPad E14 Gen2] Closing the lid does not trigger system suspend - fn
+ keys not working
Revision history for this message
Joachim Johansson (joachim-j) wrote :

Can confirm that both issues are present on my Lenovo Ideapad Yoga Slim 7 14ARE05 (AMD) on 21.10.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.