Input: matrix_keypad - force switch rows to input mode
authorSiarhei Volkau <lis8215@gmail.com>
Thu, 3 Nov 2022 20:40:02 +0000 (13:40 -0700)
committerDmitry Torokhov <dmitry.torokhov@gmail.com>
Thu, 3 Nov 2022 20:41:03 +0000 (13:41 -0700)
commit01c84b03d80aab9f04c4e3e1f9085f4202ff7c29
treee487049d76341c2332e6a7b5fa608f3b086594f8
parent5b0c03e24a061f9c9e8b28fa157b80990c559a37
Input: matrix_keypad - force switch rows to input mode

Some Pin/GPIO controllers can't get current GPIO status when interrupt
mode is set. Specifically Ingenic's JZ4755 always returns status at the
moment of interrupt.

The patch tries to fix that by forcibly setting pin mode to GPIO input
prior to reading actual row status. enable_row_irqs seems to set
interrupt mode back as it should be.

Signed-off-by: Siarhei Volkau <lis8215@gmail.com>
Link: https://lore.kernel.org/r/20221102165747.1528988-1-lis8215@gmail.com
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
drivers/input/keyboard/matrix_keypad.c