Don't wake up on lid open

Hi,

My laptop wakes from suspend on lid open - even if I disable suspend on lid close in KDE. Some research revealed that waking cues are controlled by /proc/acpi/wakeup. I disabled the lid event by doing “echo LID0 > /proc/acpi/wakeup”, after which cat /proc/acpi/wakeup gives:

Device S-state Status Sysfs node
P0P1 S4 *disabled
GLAN S4 *disabled
EHC1 S4 *enabled pci:0000:00:1d.0
XHC S4 *enabled pci:0000:00:14.0
HDEF S4 *disabled pci:0000:00:1b.0
PEG0 S4 *disabled
PEGP S4 *disabled
PEG1 S4 *disabled
PEG2 S4 *disabled
LID0 S3 *disabled
PWRB S4 *enabled

Which looks successful, but it didn’t work: opening the lid still wakes the device. Disabling PWRB and the others doesn’t change this either. Feels like /proc/acpi/wakeup is being ignored somehow.

Help? :slight_smile:

Systemd is taking care of this. Check /etc/systemd/logind.conf file. The settings in logind.conf look like this:

#  This file is part of systemd.
#
#  systemd is free software; you can redistribute it and/or modify it
#  under the terms of the GNU Lesser General Public License as published by
#  the Free Software Foundation; either version 2.1 of the License, or
#  (at your option) any later version.
#
# See logind.conf(5) for details

[Login]
#NAutoVTs=6
#ReserveVT=6
#KillUserProcesses=no
#KillOnlyUsers=
#KillExcludeUsers=root
#InhibitDelayMaxSec=5
#HandlePowerKey=poweroff
#HandleSuspendKey=suspend
#HandleHibernateKey=hibernate
#HandleLidSwitch=suspend
#PowerKeyIgnoreInhibited=no
#SuspendKeyIgnoreInhibited=no
#HibernateKeyIgnoreInhibited=no
#LidSwitchIgnoreInhibited=yes
#IdleAction=ignore
#IdleActionSec=30min

I would try changing LidSwitchIgnoreInhibited=yes to no.
**
LidSwitchIgnoreInhibited**
This means that the lid switch does not respect suspend blockers by default, but the power and sleep keys do.

Check man logind.conf 5 for more information.

Hi, thanks for the suggestion, but I’ve also tried that before already. My logind.conf:


~> cat /etc/systemd/logind.conf                  
#  This file is part of systemd.
#
#  systemd is free software; you can redistribute it and/or modify it
#  under the terms of the GNU Lesser General Public License as published by
#  the Free Software Foundation; either version 2.1 of the License, or
#  (at your option) any later version.
#
# See logind.conf(5) for details


[Login]
#NAutoVTs=6
#ReserveVT=6
#KillUserProcesses=no
#KillOnlyUsers=
#KillExcludeUsers=root
#InhibitDelayMaxSec=5
#HandlePowerKey=poweroff
#HandleSuspendKey=suspend
#HandleHibernateKey=hibernate
HandleLidSwitch=ignore #suspend
#PowerKeyIgnoreInhibited=no
#SuspendKeyIgnoreInhibited=no
#HibernateKeyIgnoreInhibited=no
LidSwitchIgnoreInhibited=no
#IdleAction=ignore
#IdleActionSec=30min

So far no dice :frowning:

You really need to submit more info about your hardware. What brand and model of laptop are you using?
Check your BIOS or UEFI. Perhaps there is a setting that can be toggled.

Sorry bout that. I’m on a Lenovo Yoga 11s, haswell version. I did check my bios settings and didn’t find anything useful yet :frowning:

I found this small Bash script on linlap.com/lenovo_ideapad_yoga_2_proThe original blog report is provided by an Ubuntu user here https://www.csslayer.info/wordpress/linux/yoga-2-pro-on-linux/**

Resume immediately after Suspend**

If there is a problem with the laptop waking up after you close the lid -- This script might be helpful. Add it to an Autostart folder. You must chmod +x script
#!/bin/bash  
echo XHC > /proc/acpi/wakeup
echo EHC1 > /proc/acpi/wakeup

Closing the lid doesn’t always send the laptop to suspend, this is how to fix

This is a different script by an Ubuntu user. The blog recommends adding the lines below (NB - The numbered lines are just for your reference) to /etc/rc.local:

1 # Disable wake up on anything for Yoga Pro 2, otherwise it sometimes wakes from suspend
2 cat /proc/acpi/wakeup |
3    grep '*enabled' |
4    cut -f 1 -d ' ' |
5    xargs -n 1 -I {} sh -c 'echo Disabling wake up on {}... && echo {} > /proc/acpi/wakeup'

We should see a patch by the time kernel 3.17 comes out later this year.

For now, I would try kernel 3.16. Update available http://download.opensuse.org/repositories/Kernel:/HEAD/standard/