aboutsummaryrefslogtreecommitdiff
path: root/drivers/input
AgeCommit message (Collapse)AuthorFilesLines
2011-02-23Input: omap4-keypad - wire up runtime PM handlingAbraham Arce1-19/+55
Enable Runtime PM functionality in OMAP4 driver based on the following assumptions: - keyboard controller in wakeup domain so it is always on and power impact is minimal; - in OMAP4 the device control is at module/device level and ick/fclk level control is difficult so cutting of clocks will prevent interrupts. Signed-off-by: Abraham Arce <[email protected]> Signed-off-by: Shubhrajyoti D <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-02-23Merge branch 'for-linus' of ↵Linus Torvalds4-5/+84
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: serio/gameport - use 'long' system workqueue Input: synaptics - document 0x0c query Input: tegra-kbc - add function keymap
2011-02-23Input: serio/gameport - use 'long' system workqueueDmitry Torokhov2-2/+2
Commit 8ee294cd9def0004887da7f44b80563493b0a097 converted serio subsystem event handling from using a dedicated thread to using common workqueue. Unfortunately, this regressed our boot times, due to the fact that serio jobs take long time to execute. While the new concurrency managed workqueue code manages long-playing works just fine and schedules additional workers as needed, such works wreck havoc among remaining users of flush_scheduled_work(). To solve this problem let's move serio/gameport works from system_wq to system_long_wq which nobody tries to flush. Reported-and-tested-by: Hernando Torque <[email protected]> Acked-by: Tejun Heo <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-02-23Input: synaptics - document 0x0c queryDmitry Torokhov1-0/+23
Since Synaptics technical writers department is a bit slow releasing updated Synaptics interface guide, let's add some new bits (with their blessing) to the code so that they don't get lost. Signed-off-by: Dmitry Torokhov <[email protected]>
2011-02-23ARM: amba: make probe() functions take const id tablesRussell King1-1/+2
Make Primecell driver probe functions take a const pointer to their ID tables. Drivers should never modify their ID tables in their probe handler. Signed-off-by: Russell King <[email protected]>
2011-02-21Input: uinput - reversed test in uinput_setup_device()Dan Carpenter1-1/+1
The test here is reversed. It should be if (IS_ERR()) instead of if (!IS_ERR()). Signed-off-by: Dan Carpenter <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-02-21Input: atmel_mxt_ts - allow board code to specify IRQ flagsIiro Valkonen1-3/+4
Different board have different requirements/setups so let's be more flexible. Signed-off-by: Iiro Valkonen <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-02-21Input: atmel_mxt_ts - allow board code to suppliy controller configIiro Valkonen1-135/+13
As there is no common configuration settings that would work in every situation, remove the fixed config data from driver code and add config data to platform data. Signed-off-by: Iiro Valkonen <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-02-21Input: atmel_mxt_ts - add mXT224 identifier to id_tableChris Leech1-0/+1
"mXT224" is used in the Intel mid firmware in SFI tables to identify the presence of this I2C device. Signed-off-by: Chris Leech <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-02-21Input: synaptics_i2c - convert to dev_pm_opsMark Brown1-7/+9
There is a general move to convert drivers to dev_pm_ops rather than bus specific PM ops in order to facilitate core development. Do this converison for synaptics-i2c. Signed-off-by: Mark Brown <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-02-21Input: adxl34x - fix references to adx134xMark Brown1-2/+2
The adxl34x SPI driver has what appears to be a typo referring to the device as adx134x with the numeral 1 rather than letter l. This appears to be an error so convert. Signed-off-by: Mark Brown <[email protected]> Acked-by: Michael Hennerich <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-02-21Input: adxl34x-spi - convert to dev_pm_opsMark Brown1-7/+9
There is a general move to convert drivers to use dev_pm_ops rather than bus specific ones in order to facilitate core development. Do this conversion for adxl34x-spi. Signed-off-by: Mark Brown <[email protected]> Acked-by: Michael Hennerich <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-02-21Input: adxl34x-i2c - convert to dev_pm_opsMark Brown1-7/+9
There is a general move to convert drivers to use dev_pm_ops rather than bus specific ones in order to facilitate core development. Do this conversion for adxl34x-i2c. Signed-off-by: Mark Brown <[email protected]> Acked-by: Michael Hennerich <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-02-21Input: max7359 - convert to dev_pm_opsMark Brown1-7/+10
There is a general move to convert drivers to use dev_pm_ops rather than bus specific ops to facilitate core work. Do this conversion for max7359. Signed-off-by: Mark Brown <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-02-21Input: lm8323 - convert to dev_pm_opsMark Brown1-7/+8
There is a general move away from bus specific PM operations to using dev_pm_ops in order to facilicate core improvements. Update lm8323 to the new model. Signed-off-by: Mark Brown <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-02-21Input: ad714x-spi - convert to dev_pm_opsMark Brown1-9/+8
There is a general move to convert drivers to use dev_pm_ops rather than bus specific PM operations in order to facilitate core work. Do this conversion for ad714x-spi. Signed-off-by: Mark Brown <[email protected]> Acked-by: Michael Hennerich <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-02-21Input: ad714x-i2c - convert to dev_pm_opsMark Brown1-9/+8
There is a general move to convert drivers to use dev_pm_ops rather than bus specific PM operations in order to facilitate core work. Do this conversion for ad714x-i2c. Signed-off-by: Mark Brown <[email protected]> Acked-by: Michael Hennerich <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-02-21Input: uinput - use memdup_user() and friendsDmitry Torokhov1-25/+10
Instead of open-coding copying of data structures from userspace use memdup_user() and strndup_user(). Note that this introduces change in behavior because driver used to truncate 'phys' longer than 1024 bytes, but now it will refuse to set 'phys' that long. Arguably trying to set such 'phys' is suspect anyways. Signed-off-by: Dmitry Torokhov <[email protected]>
2011-02-21Input: uinput - fix setting up device nameDavid Herrmann1-7/+6
The check for non-empty device name was botched since we tried to account for extra space for the terminating zero at the same time. Convert to kstrndup() to avoid this problem. Signed-off-by: David Herrmann <[email protected]> Acked-by: Aristeu Rozanski <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-02-21Input: atmel_mxt_ts - read whole message to make CHG lowIiro Valkonen1-3/+3
Read the whole message, as reading just the first byte isn't always guaranteed to clear the message. Signed-off-by: Iiro Valkonen <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-02-21Input: atmel_mxt_ts - get rid of qt602240 prefixes in namesIiro Valkonen1-464/+465
Change prefixes from qt602240 to mxt to reflect that the driver supports whole line of mXT touchscreens. Signed-off-by: Iiro Valkonen <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-02-21Input: qt602240_ts - rename to atmel_mxt_tsDmitry Torokhov3-14/+14
Since the driver will be supporting whole range of Atmels mXT touchscreen controllers we better rename it to atmel_mxt_ts. Acked-by: Iiro Valkonen <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-02-21Merge branch 'master' into for-2.6.39Tejun Heo19-83/+913
2011-02-18Input: tegra-kbc - add function keymapRakesh Iyer1-3/+59
Add Fn keymap support to allow for internal processing of Fn keys. Signed-off-by: Rakesh Iyer <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-02-15altera_ps2: Add devicetree supportWalter Goossens1-2/+13
Add match table for device tree binding. v2: use const and add compat version. v3: change compatible vendor to ALTR. add dts binding doc. v4: condition module device table export for of. Signed-off-by: Walter Goossens <[email protected]> Signed-off-by: Thomas Chou <[email protected]> Acked-by: Dmitry Torokhov <[email protected]> [[email protected]: fixed missing semicolon] Signed-off-by: Grant Likely <[email protected]>
2011-02-15Merge branch 'for-linus' of ↵Linus Torvalds6-51/+54
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: matrix_keypad - increase the limit of rows and columns Input: wacom - fix error path in wacom_probe() Input: ads7846 - check proper condition when freeing gpio Revert "Input: do not pass injected events back to the originating handler" Input: sysrq - rework re-inject logic Input: serio - clear pending rescans after sysfs driver rebind Input: rotary_encoder - use proper irqflags Input: wacom_w8001 - report resolution to userland
2011-02-11Input: wacom - fix error path in wacom_probe()Alexander Strakh1-1/+1
If we fail to retrieve HID descriptor we need to free allocated URB so jump to proper label to do that. Signed-off-by: Alexander Strakh <[email protected]> Acked-by: Henrik Rydberg <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-02-11Input: ads7846 - check proper condition when freeing gpioDmitry Torokhov1-16/+22
When driver uses custom pendown detection method gpio_pendown is not set up and so we should not try to free it, otherwise we are presented with: ------------[ cut here ]------------ WARNING: at drivers/gpio/gpiolib.c:1258 gpio_free+0x100/0x12c() Modules linked in: [<c0061208>] (unwind_backtrace+0x0/0xe4) from [<c0091f58>](warn_slowpath_common+0x4c/0x64) [<c0091f58>] (warn_slowpath_common+0x4c/0x64) from [<c0091f88>](warn_slowpath_null+0x18/0x1c) [<c0091f88>] (warn_slowpath_null+0x18/0x1c) from [<c024e610>](gpio_free+0x100/0x12c) [<c024e610>] (gpio_free+0x100/0x12c) from [<c03e9fbc>](ads7846_probe+0xa38/0xc5c) [<c03e9fbc>] (ads7846_probe+0xa38/0xc5c) from [<c02cff14>](spi_drv_probe+0x18/0x1c) [<c02cff14>] (spi_drv_probe+0x18/0x1c) from [<c028bca4>](driver_probe_device+0xc8/0x184) [<c028bca4>] (driver_probe_device+0xc8/0x184) from [<c028bdc8>](__driver_attach+0x68/0x8c) [<c028bdc8>] (__driver_attach+0x68/0x8c) from [<c028b4c8>](bus_for_each_dev+0x48/0x74) [<c028b4c8>] (bus_for_each_dev+0x48/0x74) from [<c028ae08>](bus_add_driver+0xa0/0x220) [<c028ae08>] (bus_add_driver+0xa0/0x220) from [<c028c0c0>](driver_register+0xa8/0x134) [<c028c0c0>] (driver_register+0xa8/0x134) from [<c0050550>](do_one_initcall+0xcc/0x1a4) [<c0050550>] (do_one_initcall+0xcc/0x1a4) from [<c00084e4>](kernel_init+0x14c/0x214) [<c00084e4>] (kernel_init+0x14c/0x214) from [<c005b494>](kernel_thread_exit+0x0/0x8) ---[ end trace 4053287f8a5ec18f ]--- Also rearrange ads7846_setup_pendown() to have only one exit point returning success. Reported-by: Sourav Poddar <[email protected]> Acked-by: Wolfram Sang <[email protected]> Reviewed-by: Charulatha V <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-02-06arm/ixp4xx: Rename FREQ macro to avoid collisionsBen Hutchings1-5/+1
FREQ is a ridiculously short name for a platform-specific macro in a generic header, and it now conflicts with an enumeration in the gspca/ov519 driver. Also delete conditional reference to ixp4xx_get_board_tick_rate() which is not defined anywhere. Signed-off-by: Ben Hutchings <[email protected]> Signed-off-by: Krzysztof Hałasa <[email protected]>
2011-02-02Revert "Input: do not pass injected events back to the originating handler"Dmitry Torokhov1-26/+11
This reverts commit 5fdbe44d033d059cc56c2803e6b4dbd8cb4e5e39. Apparently there exist userspace programs that expect to be able to "loop back" and distribute to readers events written into /dev/input/eventX and this change made for the benefit of SysRq handler broke them. Now that SysRq uses alternative method to suppress filtering of the events it re-injects we can safely revert this change. Reported-by: Kristen Carlson Accardi <[email protected]> Cc: [email protected] Signed-off-by: Dmitry Torokhov <[email protected]>
2011-02-02Input: serio - clear pending rescans after sysfs driver rebindDuncan Laurie1-4/+7
When rebinding a serio driver via sysfs drvctl interface it is possible for an interrupt to trigger after the disconnect of the existing driver and before the binding of the new driver. This will cause the serio interrupt handler to queue a rescan event which will disconnect the new driver immediately after it is attached. This change removes pending rescans from the serio event queue after processing the drvctl request but before releasing the serio mutex. Reproduction involves issuing a rebind of device port from psmouse driver to serio_raw driver while generating input to trigger interrupts. Then checking to see if the corresponding i8042/serio4/driver is correctly attached to the serio_raw driver instead of psmouse. Signed-off-by: Duncan Laurie <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-02-02Input: rotary_encoder - use proper irqflagsAlexander Stein1-2/+2
IORESOURCE_IRQ_* is wrong for irq_request, use the correct IRQF_* instead. Signed-off-by: Alexander Stein <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-01-31Input: wacom_w8001 - report resolution to userlandPing Cheng1-2/+11
Serial devices send both pen and touch data through the same logical port. Since we scaled touch to pen maximum, we use pen resolution for touch as well here. This is under the assumption that pen and touch share the same physical surface. In the case when a small physical dimensional difference occurs between pen and touch, we assume the tolerance for touch point precision is higher than pen and the difference is within touch point tolerance. A per-MT tool based resolution mechanism should be introduced if the above assumption does not hold true for the pen and touch devices any more. Signed-off-by: Ping Cheng <[email protected]> Reviewed-by: Henrik Rydberg <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-01-31Input: input-polldev - fix a couple of typosDmitry Torokhov1-2/+2
Signed-off-by: Dmitry Torokhov <[email protected]>
2011-01-31Input: switch completely over to the new versions of get/setkeycodeDmitry Torokhov3-52/+11
All users of old style get/setkeycode methids have been converted so it is time to retire them. Acked-by: Mauro Carvalho Chehab <[email protected]> Acked-by: Jiri Kosina <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-01-31Merge commit 'v2.6.38-rc3' into nextDmitry Torokhov33-1781/+1806
2011-01-31Input: wm831x-ts - remove use of ternary operatorMark Brown1-5/+13
While being applied the driver was modified to add use of the ternary operator. Write the conditionals out longhand as I find it terribly unhelpful for legibility. Signed-off-by: Mark Brown <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-01-31Merge branch 'for-linus' of ↵Linus Torvalds2-11/+27
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 - retry failed resets when reconnecting Input: synaptics - fix reconnect logic on MT devices Input: tegra-kbc - fix keymap entry for LeftMeta key Input: tegra-kbc - fix build error
2011-01-30Input: wm831x - add driver for Wolfson WM831x PMIC touchscreen controllersMark Brown3-0/+366
Some of the WM831x series of PMICs from Wolfson Microelectronics include a resistive touchscreen controller. Implement support for these controllers within the input API. Platform data is supported to allow configuration of system parameters such as selection between four and five wire touchscreens and for specification of optional direct to CPU IRQs for sample availability and for pen down. Use of this feature for at least the data IRQ is strongly recommended. Thanks to Julien Boibessot for extensive testing and detailed feedback. Signed-off-by: Mark Brown <[email protected]> Tested-by: Julien Boibessot <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-01-28Input: synaptics - retry failed resets when reconnectingAlexandre Peixoto Ferreira1-2/+11
On some machines, like Dell Studio XPS 16 (1640), touchpad fails to respond to the standard query after first reset but may start responding later, so let's repeat reset sequence several (3) times. Signed-off-by: Alexandre Peixoto Ferreira <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-01-28Input: synaptics - fix reconnect logic on MT devicesAlexandre Peixoto Ferreira1-6/+13
synaptics_set_advanced_gesture_mode() affect capabilities bits we should perform comparison after calling this function, otherwise they will never match and we will be forced to perform full reconnect. Signed-off-by: Alexandre Peixoto Ferreira <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-01-28Input: tegra-kbc - fix keymap entry for LeftMeta keyRakesh Iyer1-1/+1
Correct key mapping for Left Meta key. Signed-off-by: Rakesh Iyer <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-01-28Input: tegra-kbc - fix build errorRakesh Iyer1-2/+2
Fix build error introduced by variable name change. Signed-off-by: Rakesh Iyer <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-01-26input/tps6507x-ts: use system_wq instead of dedicated workqueueTejun Heo1-8/+4
With cmwq, there's no reason to use a separate workqueue. Drop tps6507x_ts->wq and use system_wq instead. Signed-off-by: Tejun Heo <[email protected]> Acked-by: Todd Fischer<[email protected]> Acked-by: Dmitry Torokhov <[email protected]> Cc: [email protected] Cc: Dan Carpenter <[email protected]>
2011-01-26Merge branch 'for-linus' of ↵Linus Torvalds11-19/+834
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 - pass touch resolution to clients through input_absinfo Input: wacom - add 2 Bamboo Pen and touch models Input: sysrq - ensure sysrq_enabled and __sysrq_enabled are consistent Input: sparse-keymap - fix KEY_VSW handling in sparse_keymap_setup Input: tegra-kbc - add tegra keyboard driver Input: gpio_keys - switch to using request_any_context_irq Input: serio - allow registered drivers to get status flag Input: ct82710c - return proper error code for ct82c710_open Input: bu21013_ts - added regulator support Input: bu21013_ts - remove duplicate resolution parameters Input: tnetv107x-ts - don't treat NULL clk as an error Input: tnetv107x-keypad - don't treat NULL clk as an error Fix up trivial conflicts in drivers/input/keyboard/Makefile due to additions of tc3589x/Tegra drivers
2011-01-25Input: wacom - pass touch resolution to clients through input_absinfoPing Cheng1-2/+19
Also remove fake ABS_RX/ABS_RY "axes" that were used to report physical dimensions now that we have better way. Signed-off-by: Ping Cheng <[email protected]> Reviewed-by: Henrik Rydberg <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-01-24Input: wacom - add 2 Bamboo Pen and touch modelsPing Cheng1-0/+6
Reported-by: David Foley <[email protected]> Signed-off-by: Ping Cheng <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-01-20Input: sparse-keymap - fix KEY_VSW handling in sparse_keymap_setupDmitry Torokhov1-0/+1
We were forgetting to set up device capabilities for KEY_VSW entries. Reported-by: Tapio Vihuri <[email protected]> Tested-by: Tapio Vihuri <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-01-20Input: tegra-kbc - add tegra keyboard driverRakesh Iyer3-0/+738
This patch adds support for the internal matrix keyboard controller for Nvidia Tegra platforms. Signed-off-by: Rakesh Iyer <[email protected]> Reviewed-by: Trilok Soni <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2011-01-20Input: gpio_keys - switch to using request_any_context_irqPhilippe Langlais1-3/+3
The driver does not require hardirq context and can work with threaded interrupts as well, so let's switch to request_any_context_irq which will select the context that is available for us. Signed-off-by: Philippe Langlais <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>