summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorLaxman Dewangan <ldewangan@nvidia.com>2012-03-19 17:54:31 -0700
committerSimone Willett <swillett@nvidia.com>2012-03-26 17:50:52 -0700
commit576ee573eb1841d5400960a96ec6fb24e4ec103b (patch)
tree168acae978ee7e4a4a4c70fedf1751cdab6aab7e /include
parentd5006bc70d75b34370cee384e41d505882df95e3 (diff)
Input: gpio_keys - add support for interrupt only keys
Some of buttons, like power-on key or onkey, may only generate interrupts when pressed and not actually be mapped as gpio in the system. Allow setting gpio to invalid value and specify IRQ instead to support such keys. The debounce timer is used not to debounce but to ignore new IRQs coming while button is kept pressed. Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru> Cherry-picked from mainline d8ee4a1c90529ed06e1aa43d034986649f7b670b Change-Id: Ibf8e407351082d816dd051d2c69a4a1a7caa70e7 Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com> Reviewed-on: http://git-master/r/92321 Reviewed-by: Automatic_Commit_Validation_User
Diffstat (limited to 'include')
-rw-r--r--include/linux/gpio_keys.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/include/linux/gpio_keys.h b/include/linux/gpio_keys.h
index d944b2ee3d3b..50f7ced738a4 100644
--- a/include/linux/gpio_keys.h
+++ b/include/linux/gpio_keys.h
@@ -4,7 +4,7 @@
struct gpio_keys_button {
/* Configuration parameters */
unsigned int code; /* input event code (KEY_*, SW_*) */
- int gpio;
+ int gpio; /* -1 if this key does not support gpio */
int active_low;
const char *desc;
unsigned int type; /* input event type (EV_KEY, EV_SW, EV_ABS) */
@@ -12,6 +12,7 @@ struct gpio_keys_button {
int debounce_interval; /* debounce ticks interval in msecs */
bool can_disable;
int value; /* axis value for EV_ABS */
+ unsigned int irq; /* Irq number in case of interrupt keys */
};
struct gpio_keys_platform_data {