Input: max7359_keypad - do not set MAX7359_CFG_INTERRUPT flag
authorEvgeniy Dushistov <dushistov@mail.ru>
Fri, 15 May 2015 20:47:46 +0000 (13:47 -0700)
committerDmitry Torokhov <dmitry.torokhov@gmail.com>
Fri, 15 May 2015 22:58:39 +0000 (15:58 -0700)
commitee3514b2256ef6aaa3b9f353af88d831dd596d09
tree5ddd63cddb56bbea4c1c10660562ca00a95a979c
parent67367fd259f26d15e7e3ec15d0d8b8ab5601bbbb
Input: max7359_keypad - do not set MAX7359_CFG_INTERRUPT flag

In datasheet of max7359 there is the following description of this flag:

0 - INT cleared when FIFO empty,
1 - INT cleared after host read. In this mode, I2C should read
    FIFO until interrupt condition removed, or further INT may be lost.

So, if we set this flag, we have to read FIFO until it becomes empty. But
in interrupt we read FIFO just once.  This lead to "keyboard" hang until
reboot, if we press several keys, because of interrupt handler read just
one "press" from FIFO and clear interrupt.

Signed-off-by: Evgeniy A. Dushistov <dushistov@mail.ru>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
drivers/input/keyboard/max7359_keypad.c