Tony Lindgren e2ca26ec4f Input: omap-keypad - fix idle configuration to not block SoC idle states
With PM enabled, I noticed that pressing a key on the droid4 keyboard will
block deeper idle states for the SoC. Let's fix this by using IRQF_ONESHOT
and stop constantly toggling the device OMAP4_KBD_IRQENABLE register as
suggested by Dmitry Torokhov <dmitry.torokhov@gmail.com>.

From the hardware point of view, looks like we need to manage the registers
for OMAP4_KBD_IRQENABLE and OMAP4_KBD_WAKEUPENABLE together to avoid
blocking deeper SoC idle states. And with toggling of OMAP4_KBD_IRQENABLE
register now gone with IRQF_ONESHOT, also the SoC idle state problem is
gone during runtime. We still also need to clear OMAP4_KBD_WAKEUPENABLE in
omap4_keypad_close() though to pair it with omap4_keypad_open() to prevent
blocking deeper SoC idle states after rmmod omap4-keypad.

Reported-by: Pavel Machek <pavel@ucw.cz>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2018-12-08 21:48:48 -08:00
..
2018-05-29 09:59:53 -04:00
2018-05-24 08:53:20 -07:00
2018-04-19 15:11:50 -07:00
2018-04-04 20:07:20 -07:00
2018-03-27 09:51:22 +02:00
2018-04-09 11:42:31 -07:00
2018-05-29 20:14:32 +02:00
2018-04-05 14:27:02 -07:00
2018-06-02 09:55:44 -07:00
2018-05-22 13:48:34 -04:00
2018-04-07 12:08:19 -07:00
2018-04-18 23:37:25 -04:00
2018-06-02 09:55:44 -07:00
2018-04-04 20:07:20 -07:00
2018-05-07 05:33:29 -10:00
2018-04-04 20:07:20 -07:00
2018-04-05 21:29:35 -07:00
2018-04-05 21:21:08 -07:00
2018-04-05 21:21:08 -07:00
2018-04-13 15:46:21 -07:00
2018-06-02 15:54:49 -07:00
2018-06-02 10:12:23 -07:00
2018-06-02 09:55:44 -07:00
2018-04-10 10:20:00 -07:00
2018-04-11 18:58:27 -07:00
2018-03-29 13:38:10 +03:00