History

Input: matrix_keypad - add support for clustered irq

This one adds support of a combined irq source for the whole matrix keypad. This can be useful if all rows and columns of the keypad are e.g. connected to a GPIO expander, which only has one interrupt line for all events on every single GPIO.

Luotao Fu committed 16 years ago

Commit fb76dd11 parent 1719ec42 files · +86 −28Browse files

Showing the changes to include/linux/input (1 of 2 files). Show all

Unified · Split

include/linux/input/matrix_keypad.h+6−0
@@ -41,6 +41,9 @@ struct matrix_keymap_data { · 40 unmodified lines
41 * @col_scan_delay_us: delay, measured in microseconds, that is41 * @col_scan_delay_us: delay, measured in microseconds, that is
42 * needed before we can keypad after activating column gpio42 * needed before we can keypad after activating column gpio
43 * @debounce_ms: debounce interval in milliseconds43 * @debounce_ms: debounce interval in milliseconds
44 * @clustered_irq: may be specified if interrupts of all row/column GPIOs
45 * are bundled to one single irq
46 * @clustered_irq_flags: flags that are needed for the clustered irq
44 * @active_low: gpio polarity47 * @active_low: gpio polarity
45 * @wakeup: controls whether the device should be set up as wakeup48 * @wakeup: controls whether the device should be set up as wakeup
46 * source49 * source
@@ -63,6 +66,9 @@ struct matrix_keypad_platform_data { · 16 unmodified lines
63 /* key debounce interval in milli-second */66 /* key debounce interval in milli-second */
64 unsigned int debounce_ms;67 unsigned int debounce_ms;
65 68
69 unsigned int clustered_irq;
70 unsigned int clustered_irq_flags;
71
66 bool active_low;72 bool active_low;
67 bool wakeup;73 bool wakeup;
68 bool no_autorepeat;74 bool no_autorepeat;