diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2014-12-17 13:06:02 -0500 |
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2014-12-17 13:06:02 -0500 |
| commit | d797da41b2aceed5daa8cd2eee92cd74b2a0c652 (patch) | |
| tree | f4de7daf5a81f425c057dd5a65a0e1b8056de5a9 /drivers | |
| parent | d6666be6f0c43efb9475d1d35fbef9f8be61b7b1 (diff) | |
| parent | f20c86cd75f1c8c728dafd0218645ff3c5e8545d (diff) | |
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
Pull input subsystem updates from Dmitry Torokhov:
"Two new drivers for Elan hardware (for I2C touchpad and touchscreen
found in several Chromebooks and other devices), a driver for Goodix
touch panel, and small fixes to Cypress I2C trackpad and other input
drivers.
Also we switched to use __maybe_unused instead of gating suspend/
resume code with #ifdef guards to get better compile coverage"
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: (27 commits)
Input: gpio_keys - fix warning regarding uninitialized 'button' variable
Input: add support for Elan eKTH I2C touchscreens
Input: gpio_keys - fix warning regarding uninitialized 'irq' variable
Input: cyapa - use 'error' for error codes
Input: cyapa - fix resuming the device
Input: gpio_keys - add device tree support for interrupt only keys
Input: amikbd - allocate temporary keymap buffer on the stack
Input: amikbd - fix build if !CONFIG_HW_CONSOLE
Input: lm8323 - missing error check in lm8323_set_disable()
Input: initialize device counter variables with -1
Input: initialize input_no to -1 to avoid subtraction
Input: i8042 - do not try to load on Intel NUC D54250WYK
Input: atkbd - correct MSC_SCAN events for force_release keys
Input: cyapa - switch to using managed resources
Input: lifebook - use "static inline" instead of "inline" in lifebook.h
Input: touchscreen - use __maybe_unused instead of ifdef around suspend/resume
Input: mouse - use __maybe_unused instead of ifdef around suspend/resume
Input: misc - use __maybe_unused instead of ifdef around suspend/resume
Input: cap11xx - support for irq-active-high option
Input: cap11xx - add support for various cap11xx devices
...
Diffstat (limited to 'drivers')
71 files changed, 4850 insertions, 911 deletions
diff --git a/drivers/input/gameport/gameport.c b/drivers/input/gameport/gameport.c index e29c04e2aff4..e853a2134680 100644 --- a/drivers/input/gameport/gameport.c +++ b/drivers/input/gameport/gameport.c | |||
| @@ -527,14 +527,14 @@ EXPORT_SYMBOL(gameport_set_phys); | |||
| 527 | */ | 527 | */ |
| 528 | static void gameport_init_port(struct gameport *gameport) | 528 | static void gameport_init_port(struct gameport *gameport) |
| 529 | { | 529 | { |
| 530 | static atomic_t gameport_no = ATOMIC_INIT(0); | 530 | static atomic_t gameport_no = ATOMIC_INIT(-1); |
| 531 | 531 | ||
| 532 | __module_get(THIS_MODULE); | 532 | __module_get(THIS_MODULE); |
| 533 | 533 | ||
| 534 | mutex_init(&gameport->drv_mutex); | 534 | mutex_init(&gameport->drv_mutex); |
| 535 | device_initialize(&gameport->dev); | 535 | device_initialize(&gameport->dev); |
| 536 | dev_set_name(&gameport->dev, "gameport%lu", | 536 | dev_set_name(&gameport->dev, "gameport%lu", |
| 537 | (unsigned long)atomic_inc_return(&gameport_no) - 1); | 537 | (unsigned long)atomic_inc_return(&gameport_no)); |
| 538 | gameport->dev.bus = &gameport_bus; | 538 | gameport->dev.bus = &gameport_bus; |
| 539 | gameport->dev.release = gameport_release_port; | 539 | gameport->dev.release = gameport_release_port; |
| 540 | if (gameport->parent) | 540 | if (gameport->parent) |
diff --git a/drivers/input/input.c b/drivers/input/input.c index 0f175f55782b..04217c2e345c 100644 --- a/drivers/input/input.c +++ b/drivers/input/input.c | |||
| @@ -1775,7 +1775,7 @@ EXPORT_SYMBOL_GPL(input_class); | |||
| 1775 | */ | 1775 | */ |
| 1776 | struct input_dev *input_allocate_device(void) | 1776 | struct input_dev *input_allocate_device(void) |
| 1777 | { | 1777 | { |
| 1778 | static atomic_t input_no = ATOMIC_INIT(0); | 1778 | static atomic_t input_no = ATOMIC_INIT(-1); |
| 1779 | struct input_dev *dev; | 1779 | struct input_dev *dev; |
| 1780 | 1780 | ||
| 1781 | dev = kzalloc(sizeof(struct input_dev), GFP_KERNEL); | 1781 | dev = kzalloc(sizeof(struct input_dev), GFP_KERNEL); |
| @@ -1790,7 +1790,7 @@ struct input_dev *input_allocate_device(void) | |||
| 1790 | INIT_LIST_HEAD(&dev->node); | 1790 | INIT_LIST_HEAD(&dev->node); |
| 1791 | 1791 | ||
| 1792 | dev_set_name(&dev->dev, "input%lu", | 1792 | dev_set_name(&dev->dev, "input%lu", |
| 1793 | (unsigned long) atomic_inc_return(&input_no) - 1); | 1793 | (unsigned long)atomic_inc_return(&input_no)); |
| 1794 | 1794 | ||
| 1795 | __module_get(THIS_MODULE); | 1795 | __module_get(THIS_MODULE); |
| 1796 | } | 1796 | } |
diff --git a/drivers/input/joystick/xpad.c b/drivers/input/joystick/xpad.c index fc55f0d15b70..3aa2f3f3da5b 100644 --- a/drivers/input/joystick/xpad.c +++ b/drivers/input/joystick/xpad.c | |||
| @@ -886,8 +886,8 @@ static void xpad_led_set(struct led_classdev *led_cdev, | |||
| 886 | 886 | ||
| 887 | static int xpad_led_probe(struct usb_xpad *xpad) | 887 | static int xpad_led_probe(struct usb_xpad *xpad) |
| 888 | { | 888 | { |
| 889 | static atomic_t led_seq = ATOMIC_INIT(0); | 889 | static atomic_t led_seq = ATOMIC_INIT(-1); |
| 890 | long led_no; | 890 | unsigned long led_no; |
| 891 | struct xpad_led *led; | 891 | struct xpad_led *led; |
| 892 | struct led_classdev *led_cdev; | 892 | struct led_classdev *led_cdev; |
| 893 | int error; | 893 | int error; |
| @@ -899,9 +899,9 @@ static int xpad_led_probe(struct usb_xpad *xpad) | |||
| 899 | if (!led) | 899 | if (!led) |
| 900 | return -ENOMEM; | 900 | return -ENOMEM; |
| 901 | 901 | ||
| 902 | led_no = (long)atomic_inc_return(&led_seq) - 1; | ||
