summaryrefslogtreecommitdiff
path: root/drivers/input
AgeCommit message (Collapse)Author
2010-01-21tegra: power management for mouse/keyboard driversVarun Wadekar
Added suspend and resume hooks. tested on harmony bug 642578 Change-Id: I7c5065403e1c5581fce16c6f3653baeb48af5820
2010-01-15linux kernel:Added new product id for PANJIT touch screen.Krishna Reddy
Added the new product id in the usb id table, for PANJIT touch screen to work. Enabled the PANJIT touch screen in the harmony config file. Change-Id: I9914622fb4fe697f2cb7ede0d033aa46578c7d4b
2009-12-23keyboard: add error cleanup to tegra KBC driverGary King
if the keyboard DDK failed to initialize, the keyboard driver would panic due to inadequate error handling between the KBC init and the KBC event thread. this is now fixed Change-Id: Ic0d1f66ba2294e8ea3408d5ed321195fa7454847
2009-12-23keyboard: add a keyboard driver for buttons connected to Tegra SoC GPIOsGary King
Change-Id: If8d57293b0d6ba1bbf493f4e5ea1d5cc27eb25bc
2009-12-16input: various build fixes for tegra driversGary King
drivers were originally submitted before compilation, now they compile cleanly
2009-12-15keyboard: add missing comma to tegra NvEc-based keyboard driverGary King
Change-Id: I35bf210bdb50582e38276962c6a53ef79857678a
2009-12-15mouse: include tegra_devices.h in nvec_mouse.c to get NV_DEBUG definitionGary King
Change-Id: I149c47b3537c1e81ee3d744e7af46635083896a8
2009-12-11input: add misc input device for NVIDIA Tegra ODM scrollwheelGary King
adds a miscellaneous input device for scrollwheels using the NVIDIA Tegra ODM kit adaptation interface for scrollwheels Change-Id: Ic2072010acd3f56a9a1333c90bbda4cdc935ce28
2009-12-11input: add miscellaneous Tegra accelerometer ODM input deviceGary King
adds a miscellaneous input device for accelerometers implemented using the NVIDIA Tegra ODM kit adaptation interface. Change-Id: I44c4b088ec43eae20192c0bd578e2c802449101c
2009-12-11keyboard: adds a driver for NvEc keyboard supportGary King
adds a keyboard driver for keyboards connected to NVIDIA Tegra NvEc-compliant embedded controllers Change-Id: I3426ec0de0dbdba63dfc03738f6c0c38905b0a5b
2009-12-11mouse: add mouse driver for Tegra NvEc embedded controllerGary King
adds a mouse-class input device for mice and touchpads connected to an NVIDIA Tegra NvEc-compliant embedded controller Change-Id: Ib706f9b789d2b8328bb6c1bd40d1adc882a717dd
2009-12-10touchscreen: add a touchscreen input device driver for Tegra ODM kitGary King
adds a touchscreen input device driver using the NVIDIA Tegra's ODM kit adaptation interface for touchscreen controllers
2009-12-09keyboard: add support for NVIDIA Tegra internal keyboard controllerGary King
adds a keyboard input driver based on NvDdk / NvRm APIs for the Tegra's internal matrix keyboard controller Change-Id: Iee8726317c7bf13866b8546695db0fd1647c065f
2009-10-27input: evdev: Use unique wakelock namesMike Chan
wakelock names are now contain evdev->name and pid Signed-off-by: Mike Chan <mike@android.com>
2009-07-29Input: gpio_event: Allow multiple input devices per gpio_event deviceArve Hjønnevåg
This is needed to support devices that put non-keyboard buttons in the keyboard matrix. For instance several devices put the trackball button in the keyboard matrix. In this case BTN_MOUSE should be reported from the same input device as REL_X/Y. It is also useful for devices that have multiple logical keyboard in the same matrix. The HTC dream has a menu key on the external keyboard and another menu key on the slide-out keyboard. With a single input device only one of these menu keys can be mapped to KEY_MENU. Signed-off-by: Arve Hjønnevåg <arve@android.com>
2009-07-29Input: gpio_input: Fix keys with keycode 0x100-0x1ffArve Hjønnevåg
KEY_MAX is no longer a power of 2. Signed-off-by: Arve Hjønnevåg <arve@android.com>
2009-07-29Input: synaptics_i2c_rmi: Add irqflags to platform data struct to pass them ↵Rebecca Schultz Zavin
to driver Signed-off-by: Rebecca Schultz Zavin <rebecca@android.com> Signed-off-by: Arve Hjønnevåg <arve@android.com>
2009-07-24Input: synaptics_i2c_rmi: Send new multi touch eventsArve Hjønnevåg
Send both fingers using the new multitouch protocol in addition to the old single finger event and second finger ABS_HAT* hack. The new protocol does not specify how to report up events. To make sure the user-space frameworks can generate up events, we send at least one event where ABS_MT_TOUCH_MAJOR is zero before we stop sending events for a finger. Signed-off-by: Arve Hjønnevåg <arve@android.com>
2009-07-24Input: add detailed multi-touch finger data report protocolHenrik Rydberg
In order to utilize the full power of the new multi-touch devices, a way to report detailed finger data to user space is needed. This patch adds a multi-touch (MT) protocol which allows drivers to report details for an arbitrary number of fingers. The driver sends a SYN_MT_REPORT event via the input_mt_sync() function when a complete finger has been reported. In order to stay compatible with existing applications, the data reported in a finger packet must not be recognized as single-touch events. In addition, all finger data must bypass input filtering, since subsequent events of the same type refer to different fingers. A set of ABS_MT events with the desired properties are defined. The events are divided into categories, to allow for partial implementation. The minimum set consists of ABS_MT_TOUCH_MAJOR, ABS_MT_POSITION_X and ABS_MT_POSITION_Y, which allows for multiple fingers to be tracked. If the device supports it, the ABS_MT_WIDTH_MAJOR may be used to provide the size of the approaching finger. Anisotropy and direction may be specified with ABS_MT_TOUCH_MINOR, ABS_MT_WIDTH_MINOR and ABS_MT_ORIENTATION. Devices with more granular information may specify general shapes as blobs, i.e., as a sequence of rectangular shapes grouped together by a ABS_MT_BLOB_ID. Finally, the ABS_MT_TOOL_TYPE may be used to specify whether the touching tool is a finger or a pen. Signed-off-by: Henrik Rydberg <rydberg@euromail.se> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2009-07-24Input: allow certain EV_ABS events to bypass all filteringHenrik Rydberg
With the upcoming multi-touch interface as an example, there is a need to make certain that all reported events actually get passed to the event handler. This patch equips the input core with the ability to bypass all filtering for certain EV_ABS events. Signed-off-by: Henrik Rydberg <rydberg@euromail.se> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2009-07-24Input: synaptics_i2c_rmi: Add sensitivity adjust option.Arve Hjønnevåg
Signed-off-by: Arve Hjønnevåg <arve@android.com>
2009-07-24Input: synaptics_i2c_rmi: Add support for panels with has-no-relative-data ↵Arve Hjønnevåg
property. Signed-off-by: Arve Hjønnevåg <arve@android.com>
2009-07-24Input: synaptics_i2c_rmi: disable_irq -> disable_irq_nosyncArve Hjønnevåg
Also remove duplicate swap macro Signed-off-by: Arve Hjønnevåg <arve@android.com>
2009-04-07input: keychord: Add keychord driverMike Lockwood
This driver allows userspace to receive notification when client specified key combinations are pressed. The client opens /dev/keychord and writes a list of keychords for the driver to monitor. The client then reads or polls /dev/keychord for notifications. A client specified ID for the keychord is returned from read() when a keychord press is detected. Signed-off-by: Mike Lockwood <lockwood@android.com>
2009-04-07input: Add keyreset driver.Arve Hjønnevåg
Add a platform device in the board file to specify a reset key-combo. The first time the key-combo is detected a work function that syncs the filesystems is scheduled. If all the keys are released and then pressed again, it calls panic. Reboot on panic should be set for this to work. Signed-off-by: Arve Hjønnevåg <arve@android.com>
2009-04-07Input: synaptics_i2c_rmi: Driver for Synaptics Touchscreens using RMI over I2C.Arve Hjønnevåg
Signed-off-by: Arve Hjønnevåg <arve@android.com>
2009-04-07Input: Use monotonic time for event time stamps.Arve Hjønnevåg
Since wall time can jump backwards, it cannot be used to determine if one event occured before another or for how long a key was pressed. Signed-off-by: Arve Hjønnevåg <arve@android.com>
2009-04-07Input: Hold wake lock while event queue is not empty.Arve Hjønnevåg
Allows userspace code to process input events while the device appears to be asleep. Signed-off-by: Arve Hjønnevåg <arve@android.com>
2009-04-07Input: Generic GPIO Input device.Arve Hjønnevåg
Supports keyboard matrixces, direct inputs, direct outputs and axes connected to gpios. Signed-off-by: Arve Hjønnevåg <arve@android.com> Signed-off-by: Nick Pelly <npelly@google.com>
2009-03-02Merge branch 'for-linus' of ↵Linus Torvalds
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: elantech - touchpad driver miss-recognising logitech mice Input: synaptics - ensure we reset the device on resume Input: usbtouchscreen - fix eGalax HID ignoring Input: ambakmi - fix timeout handling in amba_kmi_write() Input: pxa930_trkball - fix write timeout handling Input: struct device - replace bus_id with dev_name(), dev_set_name() Input: bf54x-keys - fix debounce time validation Input: spitzkbd - mark probe function as __devinit Input: omap-keypad - mark probe function as __devinit Input: corgi_ts - mark probe function as __devinit Input: corgikbd - mark probe function as __devinit Input: uvc - the button on the camera is KEY_CAMERA Input: psmouse - make MOUSE_PS2_LIFEBOOK depend on X86 Input: atkbd - make forced_release_keys[] static Input: usbtouchscreen - allow reporting calibrated data
2009-02-28Input: elantech - touchpad driver miss-recognising logitech miceArjan Opmeer
Some Logitech mice react to the magic knock like Elantech touchpad would. This leads to those mice being misdetected as Elantech touchpads. Add a version query to elantech_detect() to distinguish the two. [dtor@mail.ru: - lower severity of some messages - when we are not sure yet if device is Elantech or not not responding to knock is not an error. ] Signed-off-by: Arjan Opmeer <arjan@opmeer.net> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2009-02-28Input: synaptics - ensure we reset the device on resumeAndy Whitcroft
When resuming from suspend newer Synaptics touchpads do not recover correctly. Analysis of the resume sequence as applied in Linux was compared to that of other operating systems. This indicated that the other OSs were resetting the mouse before attempting to detect it (for all Synaptics touchpads, old and new). Applying this same modification fixes these newer Synaptics touchpads and brings the driver into line with common OS reset behaviour. Signed-off-by: Andy Whitcroft <apw@canonical.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2009-02-28Input: usbtouchscreen - fix eGalax HID ignoringDaniel Ritz
Commit ec42d4481e36cbdb5b2801f957e678211a9e5ae2 broke usbtouchscreen for some eGalax/EETI devices that claim to be HID, but are not. Devices confirmed to be real HID have the class set to HID and the protocol set to 'mouse'. Some have HID class but protocol set to 'none'. Those are not HID and should be driven by usbtouchscreen. Fix the device ignoring macro by adding match for the protocol too. Signed-off-by: Daniel Ritz <daniel.ritz@gmx.ch> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2009-02-01Input: ambakmi - fix timeout handling in amba_kmi_write()Roel Kluin
With a postfix decrement timeleft reaches -1 rather than 0, but after the loop it is tested to have become 0. Signed-off-by: Roel Kluin <roel.kluin@gmail.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2009-02-01Input: pxa930_trkball - fix write timeout handlingRoel Kluin
With a postfix decrement i reaches -1 rather than 0, but after the loop it is tested whether it has become 0. Signed-off-by: Roel Kluin <roel.kluin@gmail.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2009-01-29Input: struct device - replace bus_id with dev_name(), dev_set_name()Kay Sievers
Acked-by: Greg Kroah-Hartman <gregkh@suse.de> Signed-off-by: Kay Sievers <kay.sievers@vrfy.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2009-01-29Input: bf54x-keys - fix debounce time validationRoel Kluin
Signed-off-by: Roel Kluin <roel.kluin@gmail.com> Acked-by: Michael Hennerich <michael.hennerich@analog.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2009-01-13Input: spitzkbd - mark probe function as __devinitUwe Kleine-König
A pointer to spitzkbd_probe is passed to the core via platform_driver_register and so the function must not disappear when the .init sections are discarded. Otherwise (if also having HOTPLUG=y) unbinding and binding a device to the driver via sysfs will result in an oops as does a device being registered late. An alternative to this patch is using platform_driver_probe instead of platform_driver_register plus removing the pointer to the probe function from the struct platform_driver. [dtor@mail.ru: fixed some more section markups] Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2009-01-13Input: omap-keypad - mark probe function as __devinitUwe Kleine-König
A pointer to omap_kp_probe is passed to the core via platform_driver_register and so the function must not disappear when the .init sections are discarded. Otherwise (if also having HOTPLUG=y) unbinding and binding a device to the driver via sysfs will result in an oops as does a device being registered late. An alternative to this patch is using platform_driver_probe instead of platform_driver_register plus removing the pointer to the probe function from the struct platform_driver. [dtor@mail.ru: fixed some more section markups] Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2009-01-12Input: corgi_ts - mark probe function as __devinitUwe Kleine-König
A pointer to corgits_probe is passed to the core via platform_driver_register and so the function must not disappear when the .init sections are discarded. Otherwise (if also having HOTPLUG=y) unbinding and binding a device to the driver via sysfs will result in an oops as does a device being registered late. An alternative to this patch is using platform_driver_probe instead of platform_driver_register plus removing the pointer to the probe function from the struct platform_driver. [dtor@mail.ru: fixed some more section markups] Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2009-01-12Input: corgikbd - mark probe function as __devinitUwe Kleine-König
A pointer to corgikbd_probe is passed to the core via platform_driver_register and so the function must not disappear when the .init sections are discarded. Otherwise (if also having HOTPLUG=y) unbinding and binding a device to the driver via sysfs will result in an oops as does a device being registered late. An alternative to this patch is using platform_driver_probe instead of platform_driver_register plus removing the pointer to the probe function from the struct platform_driver. [dtor@mail.ru: fixed some more section markups] Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2009-01-10Input: psmouse - make MOUSE_PS2_LIFEBOOK depend on X86Jean Delvare
All Fujitsu-Siemens Lifebook systems are x86-based, so we might as well make MOUSE_PS2_LIFEBOOK depend on X86. This will avoid surprising things like: arch/arm/configs/s3c2410_defconfig:CONFIG_MOUSE_PS2_LIFEBOOK=y Signed-off-by: Jean Delvare <khali@linux-fr.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2009-01-10Input: atkbd - make forced_release_keys[] staticDaniel Mierswa
Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2009-01-10Input: usbtouchscreen - allow reporting calibrated dataDan Streetman
This patch adds a module parameter to report either the raw coordinate data or the hardware-calibrated coordinate data for MicroTouch/3M touchscreens. The default is set to the raw coordinates for backwards compatibilty. Signed-off-by: Dan Streetman <ddstreet@ieee.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2009-01-11input: PCF50633 input driverBalaji Rao
Signed-off-by: Balaji Rao <balajirrao@openmoko.org> Cc: Andy Green <andy@openmoko.com> Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com> Acked-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> Signed-off-by: Samuel Ortiz <sameo@openedhand.com>
2009-01-08[ARM] fix pxa930_trkball build errorsRussell King
drivers/input/mouse/pxa930_trkball.c: In function `pxa930_trkball_probe': drivers/input/mouse/pxa930_trkball.c:189: error: `ret' undeclared (first use in this function) drivers/input/mouse/pxa930_trkball.c:230: error: `ret' undeclared (first use in this function) Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2009-01-07Merge branch 'i2c-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6Linus Torvalds
* 'i2c-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6: i2c: Use snprintf to set adapter names Input: apanel - convert to new i2c binding i2c: Drop I2C_CLASS_CAM_DIGITAL i2c: Drop I2C_CLASS_CAM_ANALOG and I2C_CLASS_SOUND i2c: Drop I2C_CLASS_ALL i2c: Get rid of remaining bus_id access i2c: Replace bus_id with dev_name(), dev_set_name()
2009-01-07touchscreen: Fix build of da9034Alan Cox
Missing an include and thus breaks the x86-64 build. Signed-off-by: Alan Cox <alan@redhat.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2009-01-07Merge branch 'for-linus' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (24 commits) trivial: chack -> check typo fix in main Makefile trivial: Add a space (and a comma) to a printk in 8250 driver trivial: Fix misspelling of "firmware" in docs for ncr53c8xx/sym53c8xx trivial: Fix misspelling of "firmware" in powerpc Makefile trivial: Fix misspelling of "firmware" in usb.c trivial: Fix misspelling of "firmware" in qla1280.c trivial: Fix misspelling of "firmware" in a100u2w.c trivial: Fix misspelling of "firmware" in megaraid.c trivial: Fix misspelling of "firmware" in ql4_mbx.c trivial: Fix misspelling of "firmware" in acpi_memhotplug.c trivial: Fix misspelling of "firmware" in ipw2100.c trivial: Fix misspelling of "firmware" in atmel.c trivial: Fix misspelled firmware in Kconfig trivial: fix an -> a typos in documentation and comments trivial: fix then -> than typos in comments and documentation trivial: update Jesper Juhl CREDITS entry with new email trivial: fix singal -> signal typo trivial: Fix incorrect use of "loose" in event.c trivial: printk: fix indentation of new_text_line declaration trivial: rtc-stk17ta8: fix sparse warning ...
2009-01-07Input: apanel - convert to new i2c bindingJean Delvare
Convert the apanel driver to the new i2c device driver binding model, as the legacy model is going away soon. In the new model, the apanel driver is no longer scanning all the i2c adapters, instead the relevant bus driver (i2c-i801) is instantiating the device as needed. One side benefit is that the apanel driver will now load automatically on all systems where it is needed. Signed-off-by: Jean Delvare <khali@linux-fr.org> Cc: Stephen Hemminger <shemminger@linux-foundation.org>