AMD Vivobook (TN3402QA) does not disable keyboard on lid-close #5
Replies: 14 comments 1 reply
-
At this moment I use AMD as well (UN5401QAB, Ubuntu 22.04 Elementary OS 7.1 Horus), I have an added device
and
|
Beta Was this translation helpful? Give feedback.
-
OK, so the lid switch works. Linux thinks the keyboard is disabled, too -event8 SWITCH_TOGGLE +2.878s switch lid state 1 |
Beta Was this translation helpful? Give feedback.
-
Confirmed the keyboard is still active with the lid closed, making it way too easy to wake up. |
Beta Was this translation helpful? Give feedback.
-
@berenddeschouwer Please copy and paste the entire output of |
Beta Was this translation helpful? Give feedback.
-
Interesting that the keyboard gets removed (and re-added) after the lid is opened. I don't know if that's just a timing thing. |
Beta Was this translation helpful? Give feedback.
-
@berenddeschouwer Well, so it is a not kernel-specific problem. Could you download and try another distribution? Whether the problem persists? |
Beta Was this translation helpful? Give feedback.
-
@berenddeschouwer
|
Beta Was this translation helpful? Give feedback.
-
@berenddeschouwer The mentioned driver is updated about sending custom commands, so for your case it should be prepared:
Please let me know about results :) |
Beta Was this translation helpful? Give feedback.
-
Can be reopened |
Beta Was this translation helpful? Give feedback.
-
I think that the problem is that the ACPI DSDT config only allows idle, and not deep sleep, as shown by /sys/power/mem_sleep: There's no S3, S4 or deep. However, hibernate seems to work, even with an encrypted disk, and that switches the keyboard off. That also fixes my problem. (sidenote: both Fedora and SUSE have now made it unnecessarily complicated to even test if hibernate works.) |
Beta Was this translation helpful? Give feedback.
-
@berenddeschouwer You can also look what contains this file |
Beta Was this translation helpful? Give feedback.
-
@berenddeschouwer You might be interested in this too. |
Beta Was this translation helpful? Give feedback.
-
Some useful information. First, on acpi wakeup The touchpad and keyboard aren't listed in /proc/acpi/wakeup. There's only one enabled device. Disabling that didn't have an effect: The touchpad and keyboard don't have specific wakeup devices in /sys I could find. They're under /sys/devices/platform/. I could find 144 'wakeup' files in /sys, but none that match for keyboard and touchpad. The closest is /sys/devices/platform/i8042/serio0/power/wakeup (keyboard port), but changing that doesn't work. Then DSDT and sleep The DSDT only allows for S2idle. This is because _S3 is labelled as XS3 in the DSDT. This looks like a known thing: https://gist.github.com/raenye/d6645d7039a6136ccfb055e0f8517698 If I patch the DSDT to use _S3, proper suspend happens, and during proper suspend the keyboard and touchpad are correctly inactive. The lid and power button still work. However, the video card doesn't wake up. I'd need to fix that somehow. |
Beta Was this translation helpful? Give feedback.
-
I have now noticed messages like this on suspend: [ 6345.293008] atkbd serio0: Failed to deactivate keyboard on isa0060/serio0 I assume it's related. There is a kernel bug for this at: |
Beta Was this translation helpful? Give feedback.
-
The laptop does not disable the keyboard on lid-close. This means that squeezing the laptop (eg. in a full laptop bag) wakes up the laptop.
The laptop does suspend.
SUSE Tumbleweed, linux 6.6.11 (can try others)
Either lid-close isn't noticed, or the keyboard disable code isn't running.
Manually disabling the keyboard by enabling tablet mode results in the keyboard being re-enabled once suspend is active. Therefore I think that the BIOS (or EFI) re-enables the keyboard.
So, speculation:
Beta Was this translation helpful? Give feedback.
All reactions