blob: cd0b3f30f48ed1bc8294ac759bf7965b3efce851 [file] [log] [blame]
Phil Blundell78a56aa2007-01-18 00:44:09 -05001#ifndef _GPIO_KEYS_H
2#define _GPIO_KEYS_H
3
4struct gpio_keys_button {
5 /* Configuration parameters */
Roman Moravcik84767d02007-05-01 00:39:13 -04006 int code; /* input event code (KEY_*, SW_*) */
Phil Blundell78a56aa2007-01-18 00:44:09 -05007 int gpio;
8 int active_low;
9 char *desc;
Roman Moravcik84767d02007-05-01 00:39:13 -040010 int type; /* input event type (EV_KEY, EV_SW) */
Anti Sulline15b0212007-09-26 00:01:17 -040011 int wakeup; /* configure the button as a wake-up source */
Dmitry Baryshkova33466e2008-05-07 16:30:15 -040012 int debounce_interval; /* debounce ticks interval in msecs */
Mika Westerberg9e3af042010-02-04 00:48:00 -080013 bool can_disable;
Phil Blundell78a56aa2007-01-18 00:44:09 -050014};
15
16struct gpio_keys_platform_data {
17 struct gpio_keys_button *buttons;
18 int nbuttons;
Dominic Curranb67b4b12008-10-27 22:30:53 -040019 unsigned int rep:1; /* enable input subsystem auto repeat */
Phil Blundell78a56aa2007-01-18 00:44:09 -050020};
21
22#endif