diff options
author | Mario Limonciello <mario.limonciello@dell.com> | 2017-08-04 12:00:06 -0500 |
---|---|---|
committer | Darren Hart (VMware) <dvhart@infradead.org> | 2017-08-05 14:37:19 -0700 |
commit | 946da69954485c4da51c785438f98fb13784941a (patch) | |
tree | c4ee263401c14907225082eeb766f8e287222e6b /drivers/connector | |
parent | 51391caf99e34d2d75ffc428845062d93aa739c6 (diff) | |
download | linux-946da69954485c4da51c785438f98fb13784941a.tar.gz linux-946da69954485c4da51c785438f98fb13784941a.tar.bz2 linux-946da69954485c4da51c785438f98fb13784941a.zip |
platform/x86: intel-vbtn: match power button on press rather than release
This fixes a problem where the system gets stuck in a loop
unable to wakeup via power button in s2idle.
The problem happens because:
- press power button:
- system emits 0xc0 (power press), event ignored
- system emits 0xc1 (power release), event processed,
emited as KEY_POWER
- set wakeup_mode to true
- system goes to s2idle
- press power button
- system emits 0xc0 (power press), wakeup_mode is true,
system wakes
- system emits 0xc1 (power release), event processed,
emited as KEY_POWER
- system goes to s2idle again
To avoid this situation, process the presses (which matches what
intel-hid does too).
Verified on an Dell XPS 9365
Signed-off-by: Mario Limonciello <mario.limonciello@dell.com>
Acked-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Signed-off-by: Darren Hart (VMware) <dvhart@infradead.org>
Diffstat (limited to 'drivers/connector')
0 files changed, 0 insertions, 0 deletions