aboutsummaryrefslogtreecommitdiff
path: root/drivers/input
AgeCommit message (Collapse)AuthorFilesLines
2011-12-24Input: mpu3050 - configure the sampling methodHeikki Krogerus1-5/+103
This will improve the output of the sensor. Signed-off-by: Heikki Krogerus <[email protected]> Signed-off-by: Kirill A. Shutemov <[email protected]> Signed-off-by: Alan Cox <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-12-24Input: mpu3050 - ensure we enable interruptsHeikki Krogerus1-1/+12
This also changes the devname parameter delivered to request_threaded_irq() from "mpu_int" to "mpu3050". Signed-off-by: Heikki Krogerus <[email protected]> Signed-off-by: Kirill A. Shutemov <[email protected]> Signed-off-by: Alan Cox <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-12-24Input: mpu3050 - add of_match table for device-tree probingOlof Johansson1-0/+7
Adding invn,mpu3050 as the initial id. Signed-off-by: Olof Johansson <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-12-23Input: sentelic - release mutex upon register write failureTai-hwa Liang1-2/+2
Make sure that mutex is released upon register writing failure. This fixes boot freezing observed on ARM based OLPC (http://dev.laptop.org/ticket/11357). Signed-off-by: Paul Fox <[email protected]> Signed-off-by: Tai-hwa Liang <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-12-23input: samsung-keypad: Add device tree supportThomas Abraham1-12/+162
Add device tree based discovery support for Samsung's keypad controller. Cc: Joonyoung Shim <[email protected]> Cc: Donghwa Lee <[email protected]> Signed-off-by: Thomas Abraham <[email protected]> Acked-by: Grant Likely <[email protected]> Signed-off-by: Kukjin Kim <[email protected]>
2011-12-22input: serio: ams-delta: toggle keyboard power over GPIOJanusz Krzysztofik1-21/+35
Don't use Amstrad Delta custom I/O functions once GPIO interface is available for the underlying hardware. While requesting and initializing GPIO pins used, also take care of one extra pin KEYBRD_DATAOUT which, even if not used by the driver, belongs to the device and affects its functioning. Once done, move the driver initialization back to the device_initcall level, reverting the temporary chane introduced with patch 1/7 "ARM: OMAP1: ams-delta: register latch dependent devices later". That change is no longer required once the driver takes care of registering used GPIO pins, and it's better to initialize the device before others using the latch2 based GPIO pins, otherwise a garbage is reported on boot, perhaps due to random data already captured by the FIQ handler while the keyboard related latch bits are written with random values during initialization of those other latch2 dependent devices. Signed-off-by: Janusz Krzysztofik <[email protected]> Acked-by: Dmitry Torokhov <[email protected]> [[email protected]: renamed _gpios to ams_delta_gpios] Signed-off-by: Tony Lindgren <[email protected]>
2011-12-21ARM: OMAP1: ams-delta: register latch dependent devices laterJanusz Krzysztofik1-1/+1
In preparation to converting Amstrad Delta on-board latches to basic_mmio_gpio devices, registration of platform devices which depend on latches and will require initialization of their GPIO pins first, should be moved out of .machine_init down to late_initcall level, as the gpio-generic driver is not available until device_initcall time. The latch reset operation, which will be replaced with GPIO initialization, must also be moved to late_initcall for the same reason. Since there was already another, separate arch_initcall function for setting up one of those latch dependent devices, the on-board modem device, reuse that function, i.e., rename it to a name that matches the new purpose, extend with other device setup relocated from .machine_init, and move down to the late_initcall level. While being at it, add missing gpio_free() in case the modem platform device registration fails. Thanks to Tony Lindgren <[email protected]> who suggested this approach instead of shifting up the gpio-generic driver initialization. In addition, defer registration of the Amstrad Delta ASoC and serio devices, done from their device driver files, until late_initcall time, as those drivers will depend on their GPIO pins already requested from the board late_init() function until updated to register their GPIO pins themselves. Signed-off-by: Janusz Krzysztofik <[email protected]> Acked-by: Mark Brown <[email protected]> Signed-off-by: Tony Lindgren <[email protected]>
2011-12-19Merge branch 'for-linus' of ↵Linus Torvalds3-2/+17
git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: Input: synaptics - fix touchpad not working after S2R on Vostro V13 Input: cma3000_d0x - fix signedness bug in cma3000_thread_irq() Input: wacom - add product id used by Samsung Slate 7
2011-12-12Input: wacom - add LED support for Cintiq 24HDJason Gerecke1-1/+4
The Cintiq 24HD has three LEDs on the left side of the tablet and three LEDs on the right side of the tablet. Switching to LED 0, 1, or 2 will enable the top, middle, or bottom LED for the respective side. Switching to LED 3 turns off the LEDs on the respective side. Signed-off-by: Jason Gerecke <[email protected]> Reviewed-by: Ping Cheng <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-12-12Input: wacom - add support for Cintiq 24HDJason Gerecke2-1/+77
Adds support for the Cintiq 24HD. There are two quirks about this model that haven't been seen in prior tablets. First, a second touch ring is present on this display; it is being exposed via the ABS_THROTTLE axis. Second, three capacitive buttons at the top of the unit are available; though physically a touch strip, we report the use of these buttons with generic KEY_ events. Signed-off-by: Jason Gerecke <[email protected]> Reviewed-by: Ping Cheng <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-12-12Input: synaptics - fix touchpad not working after S2R on Vostro V13Dmitry Torokhov1-0/+11
Synaptics touchpads on several Dell laptops, particularly Vostro V13 systems, may not respond properly to PS/2 commands and queries immediately after resuming from suspend to RAM. This leads to unresponsive touchpad after suspend/resume cycle. Adding a 1-second delay after resetting the device allows touchpad to finish initializing (calibrating?) and start reacting properly. Reported-by: Daniel Manrique <[email protected]> Tested-by: Daniel Manrique <[email protected]> Cc: [email protected] Signed-off-by: Dmitry Torokhov <[email protected]>
2011-12-12Input: add driver for Sharp gp2ap002a00f proximity sensorCourtney Cavin3-1/+312
This driver adds support for Sharp's GP2AP002A00F proximity sensor. The proximity is measured as a binary switch, i.e. an object is either detected or not detected. Hence, this driver is implemented as a switch that reports SW_FRONT_PROXIMITY. Reviewed-by: Datta Shubhrajyoti <[email protected]> Signed-off-by: Courtney Cavin <[email protected]> Signed-off-by: Oskar Andero <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-12-12Input: keyboard - staticise non-exported symbolsAxel Lin2-2/+2
These symbols are not used outside it's driver so no need to make the symbol global. Signed-off-by: Axel Lin <[email protected]> Acked-by: Michael Hennerich <[email protected]> Acked-by: Linus Walleij <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-12-12Input: mc13783-pwrbutton - convert to use module_platform_driver()Axel Lin1-12/+2
This patch converts mc13783-pwrbutton to use the module_platform_driver() macro which makes the code smaller and a bit simpler. Also staticise mc13783_pwrbutton_driver which is not used outside this driver so no need to make the symbol global. Signed-off-by: Axel Lin <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-12-12Input: migor-ts - rework probe() to simplify error pathDmitry Torokhov1-25/+18
Register input device last so that we do not have to reset input device pointer after calling input_unregister_device(). Signed-off-by: Dmitry Torokhov <[email protected]>
2011-12-12Input: migor-ts - use proper client data accessor functionsDmitry Torokhov1-5/+4
Signed-off-by: Dmitry Torokhov <[email protected]>
2011-12-12Input: migor-ts - convert to a threaded IRQDmitry Torokhov1-41/+24
Signed-off-by: Dmitry Torokhov <[email protected]>
2011-12-12Input: cma3000_d0x - fix signedness bug in cma3000_thread_irq()Xi Wang1-2/+2
The error check (intr_status < 0) didn't work because intr_status is a u8. Change its type to signed int. Signed-off-by: Xi Wang <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-12-12Input: wacom - add product id used by Samsung Slate 7Chris Bagwell1-0/+4
New product ID reported by Harvey Braun on linuxwacom mailing list and also tested this patch with new hardware. Signed-off-by: Chris Bagwell <[email protected]> Acked-by: Ping Cheng <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-11-30Input: htcpen - switch to DMI-based autoloadingDmitry Torokhov1-6/+1
Having module device table based on PNP id produces the following warning: CC drivers/input/touchscreen/htcpen.o drivers/input/touchscreen/htcpen.c:50: warning: 'pnp_ids' defined but not used This happens because it is not a PNP driver, bit rather ISA driver and pnp_ids table is not used anywhere. To fix this issue let's switch to DMI-based module table instead, Reported-by: Axel Lin <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-11-30Input: ad7879-i2c - use swapped variant of i2c_smbus_read_word_dataJonathan Cameron1-2/+2
This variant was introduced in i2c: boilerplate function for byte swapped smbus_write/read_word_data This also has the side effect of ensuring any errors from the i2c read and no longer mangled. Signed-off-by: Jonathan Cameron <[email protected]> Acked-by: Michael Hennerich <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-11-30Input: touchscreen - use macro module_platform_driver()JJ Ding18-228/+18
Commit 940ab88962bc1aff3273a8356d64577a6e386736 introduced a new macro to save some platform_driver boilerplate code. Use it. Signed-off-by: JJ Ding <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-11-30Input: serio - use macro module_platform_driver()JJ Ding4-51/+4
Commit 940ab88962bc1aff3273a8356d64577a6e386736 introduced a new macro to save some platform_driver boilerplate code. Use it. Signed-off-by: JJ Ding <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-11-30Input: mouse - use macro module_platform_driver()JJ Ding3-39/+4
Commit 940ab88962bc1aff3273a8356d64577a6e386736 introduced a new macro to save some platform_driver boilerplate code. Use it. Signed-off-by: JJ Ding <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-11-30Input: misc - use macro module_platform_driver()JJ Ding20-247/+21
Commit 940ab88962bc1aff3273a8356d64577a6e386736 introduced a new macro to save some platform_driver boilerplate code. Use it. Signed-off-by: JJ Ding <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-11-30Input: keyboard - use macro module_platform_driver()JJ Ding26-327/+26
Commit 940ab88962bc1aff3273a8356d64577a6e386736 introduced a new macro to save some platform_driver boilerplate code. Use it. Signed-off-by: JJ Ding <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-11-30Input: add generic GPIO-tilt driverHeiko Stübner3-0/+228
There exist tilt switches that simply report their tilt-state via some gpios. The number and orientation of their axes can vary depending on the switch used and the build of the device. Also two or more one-axis switches could be combined to provide multi-dimensional orientation. One example of a device using such a switch is the family of Qisda ebook readers, where the switch provides information about the landscape / portrait orientation of the device. The example in Documentation/input/gpio-tilt.txt documents exactly this one-axis device. Signed-off-by: Heiko Stuebner <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-11-29Input: remove redundant spi driver bus initializationLars-Peter Clausen4-4/+0
In ancient times it was necessary to manually initialize the bus field of an spi_driver to spi_bus_type. These days this is done in spi_driver_register(), so we can drop the manual assignment. The patch was generated using the following coccinelle semantic patch: // <smpl> @@ identifier _driver; @@ struct spi_driver _driver = { .driver = { - .bus = &spi_bus_type, }, }; // </smpl> Signed-off-by: Lars-Peter Clausen <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-11-29Input: samsung-keypad - remove redundant MODULE_ALIASAxel Lin1-1/+0
MODULE_DEVICE_TABLE will setup the module alias for us, thus adding MODULE_ALIAS for an entry already in MODULE_DEVICE_TABLE is redundant. Signed-off-by: Axel Lin <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-11-29Input: ad7879-i2c - remove redundant MODULE_ALIASAxel Lin1-1/+0
MODULE_DEVICE_TABLE will setup the module alias for us, thus adding MODULE_ALIAS for an entry already in MODULE_DEVICE_TABLE is redundant. Signed-off-by: Axel Lin <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-11-29Merge commit 'v3.2-rc3' into nextDmitry Torokhov35-950/+437
2011-11-22Merge branch 'for-linus' of ↵Linus Torvalds3-8/+33
git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: Input: ams_delta_serio - include linux/module.h Input: elantech - adjust hw_version detection logic Input: i8042 - add HP Pavilion dv4s to 'notimeout' and 'nomux' blacklists
2011-11-22input: ambakmi: Enable module alias autogeneration for AMBA driversDave Martin1-0/+2
Signed-off-by: Dave Martin <[email protected]> Acked-by: Dmitry Torokhov <[email protected]>
2011-11-20Input: elantech - add resolution query support for v4 hardwareJJ Ding2-0/+38
It turns out that v4's firmware provides a command so we can query the resolution. Let's use it. Signed-off-by: JJ Ding <[email protected]> Reviewed-by: Daniel Kurtz <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-11-20Input: elantech - add support for elantech fast commandJJ Ding2-8/+29
Starting with v3 hardware, the firmware supports this shorter elantech_send_cmd. Teach the driver to use it. Signed-off-by: JJ Ding <[email protected]> Reviewed-by: Daniel Kurtz <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-11-18USB: convert drivers/input/* to use module_usb_driver()Greg Kroah-Hartman14-227/+14
This converts the drivers in drivers/input/* to use the module_usb_driver() macro which makes the code smaller and a bit simpler. Added bonus is that it removes some unneeded kernel log messages about drivers loading and/or unloading. Cc: Dmitry Torokhov <[email protected]> Cc: Ville Syrjala <[email protected]> Cc: Henk Vergonet <[email protected]> Cc: Alessandro Rubini <[email protected]> Cc: Henrik Rydberg <[email protected]> Cc: "Magnus Hörlin" <[email protected]> Cc: Chris Moeller <[email protected]> Cc: Christoph Fritz <[email protected]> Cc: Lucas De Marchi <[email protected]> Cc: Jesper Juhl <[email protected]> Cc: Edwin van Vliet <[email protected]> Cc: Ping Cheng <[email protected]> Cc: Eduard Hasenleithner <[email protected]> Cc: Alexander Strakh <[email protected]> Cc: Glenn Sommer <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2011-11-15Input: ad7879 - consolidate PM methodsDmitry Torokhov4-56/+19
The PM methods are basically the same for SPI and I2C busses, so let's use the same dev_pm_ops for both of them. Acked-by: Michael Hennerich <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-11-15Input: add EETI eGalax I2C capacitive multi touch driverZhang Jiejing3-0/+314
This patch adds the EETI eGalax serial multi touch controller driver. EETI eGalax serial touch screen controller is a I2C based multiple capacitive touch screen controller, it can support 5 touch events maximum. Signed-off-by: Zhang Jiejing <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-11-15Input: synaptics - update OLPC XO exclusionDaniel Drake1-8/+5
We have determined that the jumpiness previously seen when using the synaptics kernel mouse driver on OLPC XO was due to not using the synaptics X11 userspace driver - the xf86-input-evdev driver was interpreting 'finger near pad' signals as movements. Newer versions of xf86-input-evdev fix this issue. Additionally, the synaptics kernel driver is now usable on this platform, but only when run in relative mode. Update the comment and refine the check to allow the synaptics driver to run on OLPC XO in relative mode. We will continue investigating the EC issue as time becomes available. Signed-off-by: Daniel Drake <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-11-15Input: samsung-keypad - enable compiling on other platformsDmitry Torokhov2-3/+4
There is nothing in keypad platform definitions that requires the driver be complied on Samsung platform only, so let's move them out of the platform subdirectory and relax the dependencies. Signed-off-by: Dmitry Torokhov <[email protected]>
2011-11-09Input: samsung-keypad - switch to using SIMPLE_DEV_PM_OPSDmitry Torokhov1-8/+4
Signed-off-by: Dmitry Torokhov <[email protected]>
2011-11-09Input: synaptics - add support for Relative modeDaniel Drake4-48/+152
Currently, the synaptics driver puts the device into Absolute mode. As explained in the synaptics documentation section 3.2, in this mode, the device sends a continuous stream of packets at the maximum rate to the host when the user's fingers are near or on the pad or pressing buttons, and continues streaming for 1 second afterwards. These packets are even sent when there is no new information to report, even when they are duplicates of the previous packet. For embedded systems this is a bit much - it results in a huge and uninterrupted stream of interrupts at high rate. This patch adds support for Relative mode, which can be selected as a new psmouse protocol. In this mode, the device does not send duplicate packets and acts like a standard PS/2 mouse. However, synaptics-specific functionality is still available, such as the ability to set the packet rate, and rather than disabling gestures and taps at the hardware level unconditionally, a 'synaptics_disable_gesture' sysfs attribute has been added to allow control of this functionality. This solves a long standing OLPC issue: synaptics hardware enables tap to click by default (even in the default relative mode), but we have found this to be inappropriate for young children and first time computer users. Enabling the synaptics driver disables tap-to-click, but we have previously been unable to use this because it also enables Absolute mode, which is too "spammy" for our desires and actually overloads our EC with its continuous stream of packets. Now we can enable the synaptics driver, disabling tap to click while retaining the less noisy Relative mode. Signed-off-by: Daniel Drake <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-11-09Input: convert obsolete strict_strtox to kstrtoxJJ Ding15-104/+173
With commit 67d0a0754455f89ef3946946159d8ec9e45ce33a we mark strict_strtox as obsolete. Convert all remaining such uses in drivers/input/. Also change long to appropriate types, and return error conditions from kstrtox separately, as Dmitry sugguests. Signed-off-by: JJ Ding <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-11-09Input: ams_delta_serio - include linux/module.hAaro Koskinen1-0/+1
Fix the following compilation failure with v3.2-rc1 by including module.h: CC drivers/input/serio/ams_delta_serio.o drivers/input/serio/ams_delta_serio.c:33:15: error: expected declaration specifiers or '...' before string constant drivers/input/serio/ams_delta_serio.c:34:20: error: expected declaration specifiers or '...' before string constant drivers/input/serio/ams_delta_serio.c:35:16: error: expected declaration specifiers or '...' before string constant drivers/input/serio/ams_delta_serio.c: In function 'ams_delta_serio_init': drivers/input/serio/ams_delta_serio.c:155:2: error: 'THIS_MODULE' undeclared (first use in this function) drivers/input/serio/ams_delta_serio.c:155:2: note: each undeclared identifier is reported only once for each function it appears in Signed-off-by: Aaro Koskinen <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-11-09Input: elantech - adjust hw_version detection logicJJ Ding1-8/+18
This patch fixes some v3 hardware (fw_version: 0x150500) wrongly detected as v2 hardware. Reported-by: Marc Dietrich <[email protected]> Signed-off-by: JJ Ding <[email protected]> Tested-By: Marc Dietrich <[email protected]> Acked-by: Éric Piel <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-11-07Input: ALPS - add semi-MT support for v3 protocolSeth Forshee2-19/+215
Signed-off-by: Seth Forshee <[email protected]> Acked-by: Chase Douglas <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-11-07Input: ALPS - add support for protocol versions 3 and 4Seth Forshee3-38/+768
This patch adds support for two ALPS touchpad protocols not supported currently by the driver, which I am arbitrarily naming version 3 and version 4. Support is single-touch only at this time, although both protocols are capable of limited multitouch support. Thanks to Andrew Skalski, who did the initial reverse-engineering of the v3 protocol. Signed-off-by: Seth Forshee <[email protected]> Acked-by: Chase Douglas <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-11-07Input: ALPS - remove assumptions about packet sizeSeth Forshee1-5/+5
In preparation for version 4 protocol support, which has 8-byte data packets, remove all hard-coded assumptions about packet size and use psmouse->pktsize instead. Signed-off-by: Seth Forshee <[email protected]> Acked-by: Chase Douglas <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-11-07Input: ALPS - add protocol version field in alps_model_infoSeth Forshee2-24/+27
In preparation for adding support for more ALPS protocol versions, add a field for the protocol version to the model info instead of using a field in the flags. OLDPROTO and !OLDPROTO are now called version 1 and version 2, repsectively. Signed-off-by: Seth Forshee <[email protected]> Acked-by: Chase Douglas <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-11-07Input: ALPS - move protocol information to DocumentationSeth Forshee1-36/+1
In preparation for new protocol support, move the protocol information currently documented in alps.c to Documentation/input/alps.txt, where it can be expanded without cluttering up the driver. Signed-off-by: Seth Forshee <[email protected]> Acked-by: Chase Douglas <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>