Commit b18db3d91234c03ad080d317878c7c77672ba326

Authored by Heiko Stübner
Committed by Dmitry Torokhov
1 parent 42f578741b

Input: gpio_keys - fix struct device declared inside parameter list

A struct device parameter is used in the enable and disable callbacks to
distinguish between different gpio_keys devices.

Platforms that don't use these callbacks may not include struct device
at all, as seen on arch/arm/mach-s3c2410/mach-n30.c

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

Showing 1 changed file with 2 additions and 0 deletions Inline Diff

include/linux/gpio_keys.h
1 #ifndef _GPIO_KEYS_H 1 #ifndef _GPIO_KEYS_H
2 #define _GPIO_KEYS_H 2 #define _GPIO_KEYS_H
3 3
4 struct device;
5
4 struct gpio_keys_button { 6 struct gpio_keys_button {
5 /* Configuration parameters */ 7 /* Configuration parameters */
6 unsigned int code; /* input event code (KEY_*, SW_*) */ 8 unsigned int code; /* input event code (KEY_*, SW_*) */
7 int gpio; 9 int gpio;
8 int active_low; 10 int active_low;
9 const char *desc; 11 const char *desc;
10 unsigned int type; /* input event type (EV_KEY, EV_SW, EV_ABS) */ 12 unsigned int type; /* input event type (EV_KEY, EV_SW, EV_ABS) */
11 int wakeup; /* configure the button as a wake-up source */ 13 int wakeup; /* configure the button as a wake-up source */
12 int debounce_interval; /* debounce ticks interval in msecs */ 14 int debounce_interval; /* debounce ticks interval in msecs */
13 bool can_disable; 15 bool can_disable;
14 int value; /* axis value for EV_ABS */ 16 int value; /* axis value for EV_ABS */
15 }; 17 };
16 18
17 struct gpio_keys_platform_data { 19 struct gpio_keys_platform_data {
18 struct gpio_keys_button *buttons; 20 struct gpio_keys_button *buttons;
19 int nbuttons; 21 int nbuttons;
20 unsigned int poll_interval; /* polling interval in msecs - 22 unsigned int poll_interval; /* polling interval in msecs -
21 for polling driver only */ 23 for polling driver only */
22 unsigned int rep:1; /* enable input subsystem auto repeat */ 24 unsigned int rep:1; /* enable input subsystem auto repeat */
23 int (*enable)(struct device *dev); 25 int (*enable)(struct device *dev);
24 void (*disable)(struct device *dev); 26 void (*disable)(struct device *dev);
25 const char *name; /* input device name */ 27 const char *name; /* input device name */
26 }; 28 };
27 29
28 #endif 30 #endif
29 31