From: Vasily Khoruzhick Date: Tue, 30 Oct 2012 06:45:09 +0000 (-0700) Subject: Input: pxa27x_keypad - clear pending interrupts on keypad config X-Git-Url: http://git.cdn.openwrt.org/?a=commitdiff_plain;h=904adede088f2a6976e417d1d5cf72c9fe686814;p=openwrt%2Fstaging%2Fblogic.git Input: pxa27x_keypad - clear pending interrupts on keypad config Bootloader can leave interrupt bit pending, and it confuses driver. Signed-off-by: Vasily Khoruzhick Acked-by: Robert Jarzmik Signed-off-by: Dmitry Torokhov --- diff --git a/drivers/input/keyboard/pxa27x_keypad.c b/drivers/input/keyboard/pxa27x_keypad.c index 803ff6fe021e..cad9d5dd5973 100644 --- a/drivers/input/keyboard/pxa27x_keypad.c +++ b/drivers/input/keyboard/pxa27x_keypad.c @@ -368,6 +368,9 @@ static void pxa27x_keypad_config(struct pxa27x_keypad *keypad) unsigned int mask = 0, direct_key_num = 0; unsigned long kpc = 0; + /* clear pending interrupt bit */ + keypad_readl(KPC); + /* enable matrix keys with automatic scan */ if (pdata->matrix_key_rows && pdata->matrix_key_cols) { kpc |= KPC_ASACT | KPC_MIE | KPC_ME | KPC_MS_ALL;