summaryrefslogtreecommitdiff
path: root/drivers/input/keyboard/adp5589-keys.c
diff options
context:
space:
mode:
authorGuido Martínez <guido@vanguardiasur.com.ar>2015-05-07 02:35:21 +0300
committerDmitry Torokhov <dmitry.torokhov@gmail.com>2015-05-07 02:39:28 +0300
commitc615dcb6d13e6db3083507114fa3696be98d5211 (patch)
treeaabbd52a866540a9d51b203498355fa6145ac85b /drivers/input/keyboard/adp5589-keys.c
parent195e610bf7104d0dbe7e420e361dfb154694691d (diff)
downloadlinux-c615dcb6d13e6db3083507114fa3696be98d5211.tar.xz
Input: adp5589-keys - fix event count mask
The event mask was specified as 0xF (4 bits) when in reality is 0x1F (5 bits) in order to be capable of representing all FIFO length values from 0 to 16. This caused a problem: when the keypad reported 16 pending events the driver took it as 0, and did nothing. This in turn caused the keypad to re-issue the interrupt over and over again. Signed-off-by: Guido Martínez <guido@vanguardiasur.com.ar> Acked-by: Michael Hennerich <michael.hennerich@analog.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Diffstat (limited to 'drivers/input/keyboard/adp5589-keys.c')
-rw-r--r--drivers/input/keyboard/adp5589-keys.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/input/keyboard/adp5589-keys.c b/drivers/input/keyboard/adp5589-keys.c
index 50bc0a0c598b..6ed83cf8b74e 100644
--- a/drivers/input/keyboard/adp5589-keys.c
+++ b/drivers/input/keyboard/adp5589-keys.c
@@ -180,7 +180,7 @@
#define LOGIC2_STAT (1 << 7) /* ADP5589 only */
#define LOGIC1_STAT (1 << 6)
#define LOCK_STAT (1 << 5) /* ADP5589 only */
-#define KEC 0xF
+#define KEC 0x1F
/* PIN_CONFIG_D Register */
#define C4_EXTEND_CFG (1 << 6) /* RESET2 */