#ifndef _GPIO_KEYS_H #define _GPIO_KEYS_H struct gpio_keys_button { /* Configuration parameters */ int code; /* input event code (KEY_*, SW_*) */ int gpio; int active_low; char *desc; int type; /* input event type (EV_KEY, EV_SW) */ int wakeup; /* configure the button as a wake-up source */ int debounce_interval; /* debounce ticks interval in msecs */ bool can_disable; }; struct gpio_keys_platform_data { struct gpio_keys_button *buttons; int nbuttons; unsigned int poll_interval; /* polling interval in msecs - for polling driver only */ unsigned int rep:1; /* enable input subsystem auto repeat */ int (*enable)(struct device *dev); void (*disable)(struct device *dev); }; #endif