diff options
author | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2019-03-26 14:27:42 -0700 |
---|---|---|
committer | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2019-04-04 11:51:26 -0700 |
commit | aaca981e4588906aece15392f26cc861b6f455ac (patch) | |
tree | c2efc3951d135dab2c6dc865513ffeb992d11b5e /drivers/input/keyboard | |
parent | a5f50c501321249d67611353dde6d68d48c5b959 (diff) | |
download | linux-aaca981e4588906aece15392f26cc861b6f455ac.tar.gz linux-aaca981e4588906aece15392f26cc861b6f455ac.tar.bz2 linux-aaca981e4588906aece15392f26cc861b6f455ac.zip |
Input: i8042 - signal wakeup from atkbd/psmouse
Instead of signalling wakeup directly from i8042, let psmouse and atkbd
drivers execute basic protocol handling and only then signal wakeup
condition. This solves the issue where we increment wakeup counter
simply because we are getting responses from keyboard/mouse to the
commands we ourselves send to them as part of suspend transition.
Acked-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Diffstat (limited to 'drivers/input/keyboard')
-rw-r--r-- | drivers/input/keyboard/atkbd.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/input/keyboard/atkbd.c b/drivers/input/keyboard/atkbd.c index 850bb259c20e..3ad93e3e2f4c 100644 --- a/drivers/input/keyboard/atkbd.c +++ b/drivers/input/keyboard/atkbd.c @@ -401,6 +401,8 @@ static irqreturn_t atkbd_interrupt(struct serio *serio, unsigned char data, if (ps2_handle_response(&atkbd->ps2dev, data)) goto out; + pm_wakeup_event(&serio->dev, 0); + if (!atkbd->enabled) goto out; |