summaryrefslogtreecommitdiffstats
path: root/drivers/input
Commit message (Collapse)AuthorAgeFilesLines
* Input: sa1111ps2 - use disable_irq_nosync() in irq handlersBen Nizette2009-04-171-1/+1
| | | | | | | | | | | disable_irq() waits for all running handlers to complete before returning. As such, if it's used to disable an interrupt from that interrupt's handler it will deadlock. This replaces the dangerous instances with the _nosync() variant which doesn't have this problem. Signed-off-by: Ben Nizette <bn@niasdigital.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: omap-keypad - use disable_irq_nosync() in irq handlerBen Nizette2009-04-171-2/+14
| | | | | | | | | | | disable_irq() waits for all running handlers to complete before returning. As such, if it's used to disable an interrupt from that interrupt's handler it will deadlock. This replaces the dangerous instances with the _nosync() variant which doesn't have this problem. Signed-off-by: Ben Nizette <bn@niasdigital.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Merge branch 'next' into for-linusDmitry Torokhov2009-04-1614-43/+120
|\
| * Input: ads7846 - fix unsafe disable_irqBen Nizette2009-04-151-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The use of disable_irq inside the handler for the interrupt being disabled has always been dangerous. disable_irq should wait for that handler to complete before returning -> deadlock. For some reason this wasn't actually the case until 3aa551c9b was merged but since this time, the ads7846 driver has deadlocked the system on first interrupt. Convert the driver to use the handler-safe _nosync variant. Signed-off-by: Ben Nizette <bn@niasdigital.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * Input: mainstone-wm97xx - fix condition in pen_upJiri Slaby2009-04-151-4/+3
| | | | | | | | | | | | | | | | | | The loop body was never executed, because the condition is always false. Convert to for with more obvious condition. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * Input: pc110pad - remove unused variable devIlpo Järvinen2009-04-151-1/+0
| | | | | | | | | | | | | | | | dev is leftover from b0ee0d3eb31a163c958f2960906c44bcdfdc607b (Input: pc110pad - use no_pci_devices()). Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@helsinki.fi> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * Input: bf54x-keys - remove depreciated IRQF_SAMPLE_RANDOM flagMichael Hennerich2009-04-151-1/+1
| | | | | | | | | | Signed-off-by: Michael Hennerich <michael.hennerich@analog.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * Input: ad7877, ad7879 - remove depreciated IRQF_SAMPLE_RANDOM flagMichael Hennerich2009-04-152-4/+3
| | | | | | | | | | | | | | | | This patch removes depreciated IRQF_SAMPLE_RANDOM flags from ad7877 and ad7879 touchscreen drivers. Signed-off-by: Michael Hennerich <michael.hennerich@analog.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * Input: da9034-ts - make pen {down,up} events more reliableEric Miao2009-04-151-10/+16
| | | | | | | | | | | | | | | | | | | | | | PEN_{UP/DOWN} events are expected to be available soon after stopping TSI auto measurement, but this is found not always be true. Work around this by adding delay and simulating such an event (according to pen down status bit). Signed-off-by: Bin Yang <bin.yang@marvell.com> Signed-off-by: Eric Miao <eric.miao@marvell.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * Input: da9034-ts - add Bin Yang as co-author of the driverEric Miao2009-04-151-1/+2
| | | | | | | | | | | | | | | | | | Bin did a lot of work on this driver, without his help, this driver will not be possible. Signed-off-by: Bin Yang <bin.yang@marvell.com> Signed-off-by: Eric Miao <eric.miao@marvell.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * Input: atkbd - add forced release keys quirk for Samsung NC20Barry Carroll2009-04-151-1/+10
| | | | | | | | | | Signed-off-by: Barry Carroll <baz8080@gmail.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * Input: atkbd - add forced release keys quirk for Samsung Q45Dmitry Torokhov2009-04-151-0/+9
| | | | | | | | Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * Input: gameport - fix attach driver codeDmitry Torokhov2009-04-151-8/+6
| | | | | | | | | | | | | | | | | | The commit 6902c0bead4ce266226fc0c5b3828b850bdc884a that moved driver registration out of kgameportd thread was incomplete and did not add the code necessary to actually attach driver to already registered devices, rectify that. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * Input: hp_sdc_rtc should depend on serioAlexander Beregalov2009-04-151-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Fix this build error when CONFIG_SERIO is not set hp_sdc_rtc.c:691: undefined reference to `hp_sdc_request_timer_irq' and so on.. "select should be used with care. select will force a symbol to a value without visiting the dependencies." Signed-off-by: Alexander Beregalov <a.beregalov@gmail.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * Input: wm97xx - don't specify IRQF_SAMPLE_RANDOMMark Brown2009-04-111-2/+1
| | | | | | | | | | | | | | | | The input core will add entropy to the pool so this flag is not needed. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * Input: ads7846 - introduce platform specific way to synchronize samplingEric Miao2009-04-111-0/+10
| | | | | | | | | | | | | | | | | | Noises can be introduced when LCD signals are being driven, some platforms provide a signal to assist the synchronization of this sampling procedure. Signed-off-by: Eric Miao <eric.miao@marvell.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * Input: remove unnecessary synchronize_rcu() callArjan van de Ven2009-04-111-1/+0
| | | | | | | | | | | | | | | | | | There is no need to issue serialize_rcu() after adding a new handle to the list of handles associated with the device because new events will "see" the new handle in the list immediately. Remove it so we can boot a little bit faster. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * Input: i8042 - add a DMI table for the i8042.reset optionArjan van de Ven2009-04-111-0/+28
| | | | | | | | | | | | | | | | | | | | | | | | There are several DMI tables in the i8042 (keyboard) driver already, but not one for the i8042.reset option. This patch adds such an option. Two users for this table are added as well, the MSI Wind U-100 and the LG X110. The MSI Wind also needs to be in the "don't trust the pnp data" for the touchpad to work on my machine. Signed-off-by: Arjan van de Ven <arjan@linux.intel.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * Input: i8042 - introduce a tougher resetArjan van de Ven2009-04-111-8/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | Some touchpads don't reset right the first time (MSI Wind U-100 for example). This patch will retry the reset up to 5 times. In addition, on x86, we don't fail entire i8042 initialization if controller reset fails in hope that keyboard port will still be functional and user will still get a working keyboard. This is especially important on netbooks. Signed-off-by: Arjan van de Ven <arjan@linux.intel.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* | Merge branch 'next' into for-linusDmitry Torokhov2009-04-0823-182/+2909
|\ \ | |/
| * Input: i8042 - add HP DV9700 to the noloop listDmitry Torokhov2009-04-071-0/+8
| | | | | | | | | | Reported-by: Kenneth Crudup <kenny@panix.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * Input: arrange drivers/input/misc/Makefile in alphabetical orderDmitry Torokhov2009-03-091-15/+14
| | | | | | | | | | | | | | | | Everyone adds their driver to the end of the list, hopefully if it is in alphabetical order new drivers will spread out a bit and I can merge them more easily. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * Input: add AD7879 Touchscreen driverMichael Hennerich2009-03-093-0/+815
| | | | | | | | | | | | | | | | | | | | [randy.dunlap@oracle.com: don't use bus_id] [dtor@mail.ru: locking and other fixups] Signed-off-by: Michael Hennerich <michael.hennerich@analog.com> Signed-off-by: Bryan Wu <cooloney@kernel.org> Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * Input: add AD7877 touchscreen driverMichael Hennerich2009-03-093-0/+858
| | | | | | | | | | | | | | | | [dtor@mail.ru: locking and other fixups] Signed-off-by: Michael Hennerich <michael.hennerich@analog.com> Signed-off-by: Bryan Wu <bryan.wu@analog.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * Input: bf54x-keys - fix typo in warningMichael Hennerich2009-03-091-2/+2
| | | | | | | | | | | | Signed-off-by: Michael Hennerich <michael.hennerich@analog.com> Signed-off-by: Bryan Wu <cooloney@kernel.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * Input: add driver for S1 button of rb532Phil Sutter2009-03-093-0/+133
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Mikrotik's Routerboard 532 has two builtin buttons, from which one triggers a hardware reset. The other one is accessible through GPIO pin 1. Sadly, this pin is being multiplexed with UART0 input, so enabling it as interrupt source (as implied by the gpio-keys driver) is not possible unless UART0 has been turned off. The later one though is a rather bad idea as the Routerboard is an embedded device with only a single serial port, so it's almost always used as serial console device. This patch adds a driver based on INPUT_POLLDEV, which disables the UART and reconfigures GPIO pin 1 temporarily while reading the button state. This procedure works fine and has been tested as part of another, unpublished driver for this device. Signed-off-by: Phil Sutter <n0-1@freewrt.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * Input: generic driver for rotary encoders on GPIOsDaniel Mack2009-03-083-0/+234
| | | | | | | | | | | | | | | | | | | | | | This patch adds a generic driver for rotary encoders connected to GPIO pins of a system. It relies on gpiolib and generic hardware irqs. The documentation that also comes with this patch explains the concept and how to use the driver. Signed-off-by: Daniel Mack <daniel@caiaq.de> Tested-by: H Hartley Sweeten <hsweeten@visionengravers.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * Input: hilkbd - fix crash when removing hilkbd moduleHelge Deller2009-03-081-60/+80
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On parisc machines, which don't have HIL, removing the hilkbd module panics the kernel. Fix this by adding proper implementations for the probe and remove functions to the parisc_driver structure. A few functions were renamed to clean up the code and make it easier readable. Disable the MODULE_DEVICE_TABLE() macro on parisc since the kernel module autoloader should instead prefer the hp_sdc driver which takes care of full HIL support, including HIL mouse and HIL tablets. [dtor@mail.ru: fix some section markups] Signed-off-by: Helge Deller <deller@gmx.de> Acked-by: Geert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * Input: atkbd - add quirk for Fujitsu Siemens Amilo PA 1510Daniel Mierswa2009-03-081-0/+17
| | | | | | | | | | | | | | | | | | The volume up and down keys on the Fujitsu Siemens Amilo PA 1510 laptop won't generate release events, so we have to do that. Use the same way that is already used with other models. Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * Input: atkbd - consolidate force release quirk setupDaniel Mierswa2009-03-081-74/+46
| | | | | | | | | | Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * Input: add accelerated touchscreen support for Marvell ZyloniteMark Brown2009-03-083-0/+254
| | | | | | | | | | | | | | | | | | This patch implements accelerated touchscreen support for the Marvell Zylonite development platform, supporting pen down interrupts and continuous mode data transfers. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * Input: ucb1400_ts, mainstone-wm97xx - add BTN_TOUCH eventsMike Rapoport2009-03-082-1/+5
| | | | | | | | | | | | | | | | | | | | | | Add BTN_TOUCH event reporting to ucb1400_ts and accelerated mainstone-wm97xx touchscreen drivers. Together with previously posted similar patch for wm97xx-core this will make all touchscreen drivers behave consistently wrt. BTN_TOUCH. Signed-off-by: Mike Rapoport <mike@compulab.co.il> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * Input: wm97xx - use disable_irq_nosync() for MainstoneMark Brown2009-03-081-1/+1
| | | | | | | | | | | | | | | | This should make no practical difference since the Mainstone can't be SMP but it is more correct. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * Input: wm97xx - add BTN_TOUCH event to wm97xx to use it with AndroidMike Rapoport2009-03-081-4/+9
| | | | | | | | | | | | | | | | | | | | Android expects BTN_TOUCH events when pen state changes. Add BTN_TOUCH event reporting to allow use of wm97xx touchscreen controller wiht Android devices. Signed-off-by: Mike Rapoport <mike@compulab.co.il> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * Input: fix polling of /proc/bus/input/devicesDmitry Torokhov2009-03-081-3/+3
| | | | | | | | | | Tested-by: Alessio Sangalli <alesan@manoweb.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * Merge commit 'v2.6.29-rc7' into nextDmitry Torokhov2009-03-0819-45/+218
| |\
| * | Input: psmouse - add newline to OLPC HGPK touchpad debuggingAndy Whitcroft2009-02-281-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When probing for the OLPC HGPK touchpad the ID of the probed touchpad is emitted, but the debug is missing the terminating newline. This causes later information to run into it, and for that to be categorised incorrectly at KERN_DBG. Fix this up. Reported-by: Matt Zimmerman <mdz@canonical.com> Signed-off-by: Andy Whitcroft <apw@canonical.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * | Input: ati_remote2 - check module paramsVille Syrjala2009-01-291-4/+60
| | | | | | | | | | | | | | | | | | | | | | | | | | | Validate that the values of the module parameters are within the supported range. Also print the values in hex since that seems like a better match for bitmasks than decimal. Signed-off-by: Ville Syrjala <syrjala@sci.fi> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * | Input: ati_remote2 - add per device attrsVille Syrjala2009-01-291-15/+126
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add per device channel_mask and mode_mask attributes. They inherit the values from the module parameters when the device is registered. One additional benefit is that now runtime changes to channel_mask can actually affect the hardware channel setup like they should. Signed-off-by: Ville Syrjala <syrjala@sci.fi> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * | Input: ati_remote2 - complete suspend supportVille Syrjala2009-01-291-0/+78
| | | | | | | | | | | | | | | | | | | | | Add the missing reset_resume, pre_reset and post_reset hooks. Signed-off-by: Ville Syrjala <syrjala@sci.fi> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * | Input: stop autorepeat timer on key releaseJohannes Berg2009-01-291-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Whenever you press and then release a key, the CPU wakes up three times: * press * release * autorepeat timer exactly 250ms after press The autorepeat timer has nothing to do, obviously, since you already have released the key, so stop it on key release. [dtor@mail.ru: This changes autorepeat behavior a bit since we now stop autorepeat even if key that is being released is not the one that is being auto-repeated, but I believe the new behavior is better.] Signed-off-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * | Input: pc110pad - use no_pci_devices()Roel Kluin2009-01-291-4/+1
| | | | | | | | | | | | | | | | | | | | | Use no_pci_devices() helper instead of doing explicit get/put. Signed-off-by: Roel Kluin <roel.kluin@gmail.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * | Input: add support for the Maple mouse on the SEGA DreamcastAdrian McMenamin2009-01-293-4/+163
| | | | | | | | | | | | | | | | | | Signed-off-by: Adrian McMenamin <adrian@mcmen.demon.co.uk> Acked-by: Mike Frysinger <vapier@gentoo.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* | | Merge git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6Linus Torvalds2009-04-052-1/+39
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6: (23 commits) sh: sh7785lcr: Map whole PCI address space. sh: Fix up DSP context save/restore. sh: Fix up number of on-chip DMA channels on SH7091. sh: update defconfigs. sh: Kill off broken direct-mapped cache mode. sh: Wire up ARCH_HAS_DEFAULT_IDLE for cpuidle. sh: Add a command line option for disabling I/O trapping. sh: Select ARCH_HIBERNATION_POSSIBLE. sh: migor: Fix up CEU use flags. input: migor_ts: add wakeup support rtc: rtc-sh: use set_irq_wake() input: sh_keysc: use enable/disable_irq_wake() sh: intc: set_irq_wake() support sh: intc: install enable, disable and shutdown callbacks clocksource: sh_cmt: use remove_irq() and remove clockevent workaround sh: ap325 and Migo-R use new sh_mobile_ceu_info flags sh: Fix up -Wformat-security whining. sh: ap325rxa: Add ov772x support, again. sh: Sanitize asm/mmu.h for assembly use. sh: Tidy up sh7786 pinmux table. ...
| * | | input: migor_ts: add wakeup supportMagnus Damm2009-04-021-0/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add wakeup support to the migor_ts driver. If user space has enabled wakeup, use set_irq_wake() during suspend and resume. With this patch the migor_ts driver can be used to wake the system from suspend. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | input: sh_keysc: use enable/disable_irq_wake()Magnus Damm2009-04-021-1/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Modify the sh_keysc driver to use enable/disable_irq_wake() during suspend and resume. These functions are used to enable the sh_keysc interrupt in the interrupt controller so the keypad can be used to wakeup the system from suspend. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* | | | Merge branch 'for-linus' of ↵Linus Torvalds2009-04-033-3/+3
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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: (28 commits) trivial: Update my email address trivial: NULL noise: drivers/mtd/tests/mtd_*test.c trivial: NULL noise: drivers/media/dvb/frontends/drx397xD_fw.h trivial: Fix misspelling of "Celsius". trivial: remove unused variable 'path' in alloc_file() trivial: fix a pdlfush -> pdflush typo in comment trivial: jbd header comment typo fix for JBD_PARANOID_IOFAIL trivial: wusb: Storage class should be before const qualifier trivial: drivers/char/bsr.c: Storage class should be before const qualifier trivial: h8300: Storage class should be before const qualifier trivial: fix where cgroup documentation is not correctly referred to trivial: Give the right path in Documentation example trivial: MTD: remove EOL from MODULE_DESCRIPTION trivial: Fix typo in bio_split()'s documentation trivial: PWM: fix of #endif comment trivial: fix typos/grammar errors in Kconfig texts trivial: Fix misspelling of firmware trivial: cgroups: documentation typo and spelling corrections trivial: Update contact info for Jochen Hein trivial: fix typo "resgister" -> "register" ...
| * | | | trivial: Fix misspelling of "Celsius".Adam Buchbinder2009-03-301-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A few comments say "Celcius"; this fixes them. No code changes. Signed-off-by: Adam Buchbinder <adam.buchbinder@gmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
| * | | | trivial: fix typos/grammar errors in Kconfig textsMatt LaPlante2009-03-301-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Matt LaPlante <kernel1@cyberdogtech.com> Acked-by: Randy Dunlap <randy.dunlap@oracle.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
| * | | | trivial: fix typo "varaible" -> "variable"Uwe Kleine-Koenig2009-03-301-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch was created by git grep -l '[vV]araible' | xargs -r -t perl -p -i -e 's/\b([Vv]ar)ai(bles?)\b/$1ia$2/g' Signed-off-by: Uwe Kleine-Koenig <Uwe.Kleine-Koenig@digi.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
OpenPOWER on IntegriCloud