aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/input
Commit message (Collapse)AuthorAge
* Input: usbtouchscreen - support bigger iNexio touchscreensOndrej Zary2010-05-27
| | | | | | | | | | | Bigger Nexio touchscreens not only send more data but also the header values are modified somewhat. Fix the header (it's a guesswork but it works at least on one 46" touchscreen with 2.00SMS firmware) and also increase rept_size. Signed-off-by: Ondrej Zary <linux@rainbow-software.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: ads7846 - return error on regulator_get() failureKevin Hilman2010-05-27
| | | | | | | | | | | | | | | | | | | | In probe(), if regulator_get() failed, an error code was not being returned causing the driver to be successfully bound, even though probe failed. This in turn caused the suspend, resume and remove methods to be registered and accessed via the SPI core. Since these functions all access private driver data using pointers that had been freed during the failed probe, this would lead to unpredictable behavior. This patch ensures that probe() returns an error code in this failure case so the driver is not bound. Found using lockdep and noticing the lock used in the suspend/resum path pointed to a bogus lock due to the freed memory. Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com> Acked-by: Mike Frysinger <vapier@gentoo.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: twl4030-vibra - correct the power down sequencePeter Ujfalusi2010-05-22
| | | | | | | It is better to turn off the first APLL, than the codec. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: enable onkey driver of max8925Haojian Zhuang2010-05-22
| | | | | | | When ONKEY is held for 3 seconds, KEY_POWER event is reported. Signed-off-by: Haojian Zhuang <haojian.zhuang@marvell.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: use ABS_CNT rather than (ABS_MAX + 1)Daniel Mack2010-05-21
| | | | | Signed-off-by: Daniel Mack <daniel@caiaq.de> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: psmouse - small formatting changes to better follow coding styleDmitry Torokhov2010-05-19
| | | | Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: synaptics - set dimensions as reported by firmwareDmitry Torokhov2010-05-19
| | | | | | | | Newer Synaptics firmware allows to query maximim dimensions reported by device, let's use this data. Tested-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: elantech - relax signature checksDmitry Torokhov2010-05-19
| | | | | | | | | | Apparently there are Elantech touchpads that report non-zero in the 2nd byte of their signature. Adjust the detection routine so that if 2nd byte is zero and 3rd byte contains value that is not a valid report rate, we still assume that signature is valid. Tested-by: Eric Piel <eric.piel@tremplin-utc.net> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: elantech - enforce common prefix on messagesDmitry Torokhov2010-05-19
| | | | Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: wistron_btns - switch to using kmemdup()Julia Lawall2010-05-19
| | | | | | | | Use kmemdup when some other buffer is immediately copied into the allocated region. Signed-off-by: Julia Lawall <julia@diku.dk> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: usbtouchscreen - switch to using kmemdup()Julia Lawall2010-05-19
| | | | | | | | Use kmemdup when some other buffer is immediately copied into the allocated region. Signed-off-by: Julia Lawall <julia@diku.dk> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: do not force selecting i8042 on MoorestownJacob Pan2010-05-19
| | | | | | | | Moorestown does not have i8042 based keyboard controller, so give an option to deselect i8042 for non-pc mid. Signed-off-by: Jacob Pan <jacob.jun.pan@linux.intel.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: 88pm860x_onkey - remove invalid irq number assignmentHaojian Zhuang2010-05-19
| | | | | | | Irq number of onkey is assigned twice. The second assignment is wrong. Signed-off-by: Haojian Zhuang <haojian.zhuang@marvell.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: i8042 - add a PNP entry to the aux device listMatthew Garrett2010-05-19
| | | | | | | | | Windows checks for an ALPS PS/2 device in PNP. Add it on the off-chance that there's a machine that expresses this without also providing a compatibility ID. Signed-off-by: Matthew Garrett <mjg@redhat.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: i8042 - add some extra PNP keyboard typesMatthew Garrett2010-05-19
| | | | | | | | | | Some Japanese machines declare their keyboard with a different PNP ID. Add it to the list of probed device IDs. While we're at it, add all the other IDs that Windows binds to - we'll probably never see them in the real world, but it doesn't hurt. Signed-off-by: Matthew Garrett <mjg@redhat.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: wm9712 - fix wm97xx_set_gpio() logicManuel Lauss2010-05-19
| | | | | | WM97XX_GPIO_HIGH is not a bitmap and should to be treated as such. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Merge commit 'v2.6.34' into nextDmitry Torokhov2010-05-19
|\
| * Merge branch 'for-linus' of ↵Linus Torvalds2010-05-13
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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: ad7877 - keep dma rx buffers in seperate cache lines Input: psmouse - reset all types of mice before reconnecting Input: elantech - use all 3 bytes when checking version Input: iforce - fix Guillemot Jet Leader 3D entry Input: iforce - add Guillemot Jet Leader Force Feedback
| | * Input: ad7877 - keep dma rx buffers in seperate cache linesOskar Schirmer2010-05-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With dma based spi transmission, data corruption is observed occasionally. With dma buffers located right next to msg and xfer fields, cache lines correctly flushed in preparation for dma usage may be polluted again when writing to fields in the same cache line. Make sure cache fields used with dma do not share cache lines with fields changed during dma handling. As both fields are part of a struct that is allocated via kzalloc, thus cache aligned, moving the fields to the 1st position and insert padding for alignment does the job. Signed-off-by: Oskar Schirmer <os@emlix.com> Signed-off-by: Daniel Glöckner <dg@emlix.com> Signed-off-by: Oliver Schneidewind <osw@emlix.com> Signed-off-by: Johannes Weiner <jw@emlix.com> Acked-by: Mike Frysinger <vapier@gentoo.org> [dtor@mail.ru - changed to use ___cacheline_aligned as suggested by akpm] Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| | * Input: psmouse - reset all types of mice before reconnectingDmitry Torokhov2010-05-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Synaptics hardware requires resetting device after suspend to ram in order for the device to be operational. The reset lives in synaptics-specific reconnect handler, but it is not being invoked if synaptics support is disabled and the device is handled as a standard PS/2 device (bare or IntelliMouse protocol). Let's add reset into generic reconnect handler as well. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| | * Input: elantech - use all 3 bytes when checking versionDmitry Torokhov2010-05-13
| | | | | | | | | | | | | | | | | | | | | | | | Apparently all 3 bytes returned by ETP_FW_VERSION_QUERY are significant and should be taken into account when matching hardware version/features. Tested-by: Eric Piel <eric.piel@tremplin-utc.net> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| | * Input: iforce - fix Guillemot Jet Leader 3D entryMarek Vasut2010-05-11
| | | | | | | | | | | | | | | | | | | | | | | | USB ID entry for "Guillemot Jet Leader 3D" in iforce-main.c did not match one used in iforce-usb.c Signed-off-by: Marek Vasut <marek.vasut@gmail.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| | * Input: iforce - add Guillemot Jet Leader Force FeedbackMarek Vasut2010-05-11
| | | | | | | | | | | | | | | | | | | | | This device features a RUDDER on the knob. Signed-off-by: Marek Vasut <marek.vasut@gmail.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * | Merge branch 'for-linus' of ↵Linus Torvalds2010-05-05
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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: joydev - allow binding to button-only devices Input: elantech - ignore high bits in the position coordinates Input: elantech - allow forcing Elantech protocol Input: elantech - fix firmware version check Input: ati_remote - add some missing devices from lirc_atiusb Input: eeti_ts - cancel pending work when going to suspend Input: Add support of Synaptics Clickpad device Revert "Input: ALPS - add signature for HP Pavilion dm3 laptops" Input: psmouse - ignore parity error for basic protocols
| | * Input: joydev - allow binding to button-only devicesChristoph Fritz2010-05-04
| | | | | | | | | | | | | | | | | | | | | | | | Dance pads don't have an axis, so allow this kind of controllers to be used via legacy joystick interface. Signed-off-by: Christoph Fritz <chf.fritz@googlemail.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| | * Input: elantech - ignore high bits in the position coordinatesFlorian Ragwitz2010-05-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In older versions of the elantech hardware/firmware those bits always were unset, so it didn't actually matter, but newer versions seem to use those high bits for something else, screwing up the coordinates we report to the input layer for those devices. Signed-off-by: Florian Ragwitz <rafl@debian.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| | * Input: elantech - allow forcing Elantech protocolFlorian Ragwitz2010-05-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | Apparently hardware vendors now ship elantech touchpads with different version magic. This options allows for them to be tested easier with the current driver in order to add their magic to the whitelist later. Signed-off-by: Florian Ragwitz <rafl@debian.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| | * Input: elantech - fix firmware version checkFlorian Ragwitz2010-05-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The check determining whether device should use 4- or 6-byte packets was trying to compare firmware with 2.48, but was failing on majors greater than 2. The new check ensures that versions like 4.1 are checked properly. Signed-off-by: Florian Ragwitz <rafl@debian.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| | * Input: ati_remote - add some missing devices from lirc_atiusbJarod Wilson2010-05-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The (out-of-tree) lirc_atiusb driver has a much longer list of devices it supports. Some of them look like they may just be guesses at possible device IDs, but a few are definitely confirmed devices. This adds the nVidia-branded RF receiver and the X10 Lola Wireless Video Sender device (which contains an RF receiver) to the list of devices in ati_remote. Signed-off-by: Jarod Wilson <jarod@redhat.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| | * Input: eeti_ts - cancel pending work when going to suspendDaniel Mack2010-04-20
| | | | | | | | | | | | | | | | | | | | | This fixes a race between the suspend code and input events. Signed-off-by: Daniel Mack <daniel@caiaq.de> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| | * Input: Add support of Synaptics Clickpad deviceTakashi Iwai2010-04-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The new type of touchpads can be detected via a new query command 0x0c. The clickpad flags are in cap[0]:4 and cap[1]:0 bits. When the device is detected, the driver now reports only the left button as the supported buttons so that X11 driver can detect that the device is Clickpad. A Clickpad device gives the button events only as the middle button. The kernel driver morphs to the left button. The real handling of Clickpad is done rather in X driver side. Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| | * Revert "Input: ALPS - add signature for HP Pavilion dm3 laptops"Dmitry Torokhov2010-04-20
| | | | | | | | | | | | | | | | | | This reverts commit 5e28d8eb68c12eab9c4a47b42ba993a6420d71d3 since the magic knock does not work for this model of the touchpad and the device stays in PS/2 compatibility mode.
| | * Input: psmouse - ignore parity error for basic protocolsDmitry Torokhov2010-04-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Observing behavior of the other OS it appears that parity errors reported by the keyboard controller are being ignored and the data is processed as usual. Let's do the same for standard PS/2 protocols (bare, Intellimouse and Intellimouse Explorer) to provide better compatibility. Thsi should fix teh following bug: https://bugzilla.kernel.org/show_bug.cgi?id=6105 Thanks for Damjan Jovanovic for locating the source of issue and ideas for the patch. Tested-by: Damjan Jovanovic <damjan.jov@gmail.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * | Merge branch 'for-linus' of ↵Linus Torvalds2010-04-15
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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: wacom - switch mode upon system resume Revert "Input: wacom - merge out and in prox events" Input: matrix_keypad - allow platform to disable key autorepeat Input: ALPS - add signature for HP Pavilion dm3 laptops Input: i8042 - spelling fix Input: sparse-keymap - implement safer freeing of the keymap Input: update the status of the Multitouch X driver project Input: clarify the no-finger event in multitouch protocol Input: bcm5974 - retract efi-broken suspend_resume Input: sparse-keymap - free the right keymap on error
| | * Input: wacom - switch mode upon system resumePing Cheng2010-04-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When Wacom devices wake up from a sleep, the switch mode command (wacom_query_tablet_data) is needed before wacom_open is called. wacom_query_tablet_data should not be executed inside wacom_open since wacom_open is called more than once during probe. wacom_retrieve_hid_descriptor is removed from wacom_resume due to the fact that the required descriptors are stored properly upon system resume. Reported-and-tested-by: Anton Anikin <Anton@Anikin.name> Signed-off-by: Ping Cheng <pingc@wacom.com> Cc: stable@kernel.org Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* | | Input: add keypad driver for keys interfaced to TCA6416Sriramakrishnan Govindarajan2010-05-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | This patch implements a simple Keypad driver that functions as an I2C client. It handles key press events for keys connected to TCA6416 I2C based IO expander. Signed-off-by: Sriramakrishnan <srk@ti.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* | | Input: remove obsolete {corgi,spitz,tosa}kbd.cEric Miao2010-05-04
| | | | | | | | | | | | | | | Signed-off-by: Eric Miao <eric.y.miao@gmail.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* | | Input: kbtab - do not advertise unsupported eventsDmitry Torokhov2010-04-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | The device does not emit EV_MSC/MSC_SERIAL nor EV_KEY/BTN_MIDDLE events so it should not mark them as supported in capabilities bitmaps. This still leaves BTN_TOOL_PEN and BTN_TOUCH events being processed in a funky manner. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* | | Input: kbtab - simplify kbtab_disconnect()Dmitry Torokhov2010-04-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | There is no need to check whether kbtab structure is attached to the interface; if it isn't and we are called we have much bigger problems. Also no need to call usb_kill_urb() in kbtab_disconnect() since it is being called in kbtab_close(). Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* | | Input: kbtab - fix incorrect size parameter in usb_buffer_freeAxel Lin2010-04-21
| | | | | | | | | | | | | | | | | | | | | | | | The size allocated by usb_buffer_alloc() is 8, however the size passed to usb_buffer_free() is 10. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* | | Input: acecad - don't advertise mouse eventsDmitry Torokhov2010-04-21
| | | | | | | | | | | | | | | | | | | | | The device does not emit events for left/right/middle mouse buttons so it should not mark them as supported in capabilities bitmaps. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* | | Input: acecad - fix some formatting issuesDmitry Torokhov2010-04-21
| | | | | | | | | | | | | | | | | | Also switch to using input_set_abd_params() helper. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* | | Input: acecad - simplify usb_acecad_disconnect()Dmitry Torokhov2010-04-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | There is no need to check whether acecad structure is attached to the interface; if it isn't and we are called we have much bigger problems. Also no need to call usb_kill_urb() in usb_acecad_disconnect() since it is being called in usb_acecad_close(). Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* | | Input: acecad - fix incorrect size parameter in usb_buffer_freeAxel Lin2010-04-21
| | | | | | | | | | | | | | | | | | | | | | | | The size allocated by usb_buffer_alloc() is 8, however the size passed to usb_buffer_free() in usb_acecad_disconnect() is 10. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* | | Input: add driver for hampshire serial touchscreensAdam Bennett2010-04-14
| | | | | | | | | | | | | | | | | | | | | | | | Adds support for Hampshire TSHARC serial touchscreens. Implements Hampshire's 4-byte communication protocol. Signed-off-by: Adam Bennett <abennett72@gmail.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* | | Input: ad714x - add support for the AD7143/8/7A partsBarry Song2010-04-14
| | | | | | | | | | | | | | | | | | Signed-off-by: Barry Song <barry.song@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* | | Input: add Analog Devices AD714x captouch input driverBryan Wu2010-04-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | AD7142 and AD7147 are integrated capacitance-to-digital converters (CDCs) with on-chip environmental calibration for use in systems requiring a novel user input method. The AD7142 and AD7147 can interface to external capacitance sensors implementing functions such as buttons, scrollwheels, sliders, touchpads and so on. The chips don't restrict the specific usage. Depending on the hardware connection, one special target board can include one or several these components. The platform_data for the device's "struct device" holds these information. The data-struct defined in head file descript the hardware feature of button/scrollwheel/slider/touchpad components on target boards, which need be filled in the arch/mach-/. As the result, the driver is independent of boards. It gets the components layout from the platform_data, registers related devices, fullfills the algorithms and state machines for these components and report related input events to up level. Signed-off-by: Bryan Wu <cooloney@kernel.org> Signed-off-by: Michael Hennerich <michael.hennerich@analog.com> Signed-off-by: Barry Song <21cnbao@gmail.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* | | Input: lm8323 - do not leave dangling client data pointerWolfram Sang2010-04-14
| | | | | | | | | | | | | | | | | | | | | | | | Do not leave dangling client data pointers when unbinding device from the driver or when binding fails for some reason. Signed-off-by: Wolfram Sang <w.sang@pengutronix.de> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* | | Input: tsc2007 - do not leave dangling clientdata pointerWolfram Sang2010-04-14
| | | | | | | | | | | | | | | | | | | | | | | | Do not leave dangling client data pointers when unbinding device from the driver. Signed-off-by: Wolfram Sang <w.sang@pengutronix.de> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* | | Input: add PCF8574 I2C keypad input device driverBryan Wu2010-04-14
| | | | | | | | | | | | | | | | | | Signed-off-by: Bryan Wu <cooloney@kernel.org> Signed-off-by: Mike Frysinger <vapier@gentoo.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>