summaryrefslogtreecommitdiffstats
path: root/drivers (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Input: serio_raw - ensure we don't block in non-blocking readDmitry Torokhov2012-04-211-18/+25
| | | | | | | | | | | | | Avoid calling wait_event_interruptible() if client requested non-blocking read, since it is not guaranteed that another thread will not consume event after we checked if serio_raw->head != serio_raw->tail. Also ensure we do not return 0 but keep waiting instead in blocking case, when another thread steals "our" byte. Reviewed-by: David Herrmann <dh.herrmann@googlemail.com> Reviewed-by: Che-Liang Chiou <clchiou@chromium.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: tc3589x-keypad - remove unnecessary checksDmitry Torokhov2012-04-211-13/+9
| | | | | | | | | | | settle_time and debounce_period are u8 and thus can not be greater than TC3589x_MAX_DEBOUNCE_SETTLE which is 255. There also no need to mask out nibbles form board->krow and board->kcol as we validate that they are in correct range. Reported-by: Werner <w.landgraf@ru.ru> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: cma3000-d0x - remove unneeded checksDmitry Torokhov2012-04-211-1/+1
| | | | | | | data->mode is unsigned and can not be less than 0. Reported-by: Werner <w.landgraf@ru.ru> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: matrix-keypad - undo GPIO setup if input_register_device failsDmitry Torokhov2012-04-211-23/+30
| | | | Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: matrix-keypad - allocate keycodes with keypad structureDmitry Torokhov2012-04-211-13/+10
| | | | | | | Instead of allocating and managing keymap separately from the keypad structure stick it at the end as a variable-length array. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: matrix-keypad - fix 'duplicate const' sparse warningDmitry Torokhov2012-04-211-6/+4
| | | | | | | | | SIMPLE_DEV_PM_OPS already defines constant dev_pm_ops. Also guard PM methods with CONFIG_PM_SLEEP and get rid of some unneeded #ifdefs. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: lpc32xx_ts - add device tree supportRoland Stigge2012-04-211-0/+10
| | | | | | | | | This change implements device tree support for the LPC32xx SoC's touchscreen controller. Signed-off-by: Roland Stigge <stigge@antcom.de> Reviewed-by: Thierry Reding <thierry.reding@avionic-design.de> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: ep93xx_keypad - switch to using dev_pm_opsDmitry Torokhov2012-04-111-16/+10
| | | | | | | Also use CONFIG_PM_SLEEP instead of CONFIG_PM to guard PM methods. Acked-by: H Hartley Sweeten <hsweeten@visionengravers.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: wacom_i2c - do not use irq_to_gpioDmitry Torokhov2012-04-101-37/+4
| | | | | | | | | Because irq_to_gpio() is not available on many platforms let's switch to level-triggered one-shot IRQs that will stay active as long as there is data to be read. Tested-by: Tobita Tatsunosuke <tobita.tatsunosuke@wacom.co.jp> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: gameport - use module_gameport_driverAxel Lin2012-04-0411-136/+11
| | | | | | | | | This patch converts the drivers in drivers/input/* to use module_gameport_driver() macro which makes the code smaller and a bit simpler. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: serio - use module_serio_driverAxel Lin2012-04-0431-452/+31
| | | | | | | | | This patch converts the drivers in drivers/input/* to use module_serio_driver() macro which makes the code smaller and a bit simpler. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: wacom - add Intuos5 multitouch sensor supportJason Gerecke2012-04-042-5/+84
| | | | | | | | | | | | Intuos5 tablets with PTH-* model numbers include a multitouch sensor which use the same touch reports as the 3rd-generation Bamboo. No useful information is in the HID descriptor for the touch interface so hardcoded values are used during setup. Signed-off-by: Jason Gerecke <killertofu@gmail.com> Reviewed-by: Chris Bagwell <chris@cnpbagwell.com> Reviewed-by: Ping Cheng <pingc@wacom.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: wacom - add Intuos5 Touch Ring LED supportJason Gerecke2012-04-041-12/+59
| | | | | | | | | | | | The Touch Ring LEDs on Intuos5 tablets use a different report format which supports only 4 levels of brightness. We remap the 7-bit value obtained from sysfs to an appropriate value for the tablet. Control of the crop mark LEDs (new to the I5) is left for a later patch. Signed-off-by: Jason Gerecke <killertofu@gmail.com> Reviewed-by: Ping Cheng <pingc@wacom.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: wacom - add Intuos5 Touch Ring/ExpressKey supportJason Gerecke2012-04-042-2/+32
| | | | | | | | | | | Intuos5 uses a new report type for Touch Ring and ExpressKey data. Note that data from the capacitive sensors present on the ExpressKeys will be ignored until a proper way is found to expose it. Signed-off-by: Jason Gerecke <killertofu@gmail.com> Reviewed-by: Chris Bagwell <chris@cnpbagwell.com> Reviewed-by: Ping Cheng <pingc@wacom.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: wacom - add basic Intuos5 supportJason Gerecke2012-04-042-3/+36
| | | | | | | | | | | This patch adds support for the basic pen functions of Intuos5 tablets. Signed-off-by: Jason Gerecke <killertofu@gmail.com> Reviewed-by: Chris Bagwell <chris@cnpbagwell.com> Reviewed-by: Ping Cheng <pingc@wacom.com> Tested-by: Timo Aaltonen <tjaalton@ubuntu.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: st1232 - switch to using SIMPLE_DEV_PM_OPSDmitry Torokhov2012-04-041-7/+4
| | | | | | Acked-by: Rafael J. Wysocki <rjw@sisk.pl> Reviewed-by: Simon Horman <horms@verge.net.au> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: st1232 - add device tree supportMagnus Damm2012-04-041-0/+9
| | | | | | | | | | This patch enables DT support for the st1232 driver which is primarily used on the sh7372 Mackerel board. [dtor@mail.ru: chnaged to use CONFIG_OF and of_match_ptr] Signed-off-by: Magnus Damm <damm@opensource.se> Acked-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: add support for LM8333 keypadsWolfram Sang2012-04-043-0/+247
| | | | | | | | | | This driver adds support for the keypad part of the LM8333 and is prepared for possible GPIO/PWM drivers. Note that this is not a MFD because you cannot disable the keypad functionality which, thus, has to be handled by the core anyhow. Signed-off-by: Wolfram Sang <w.sang@pengutronix.de> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: add support for Wacom Stylus device with I2C interfaceTatsunosuke Tobita2012-04-043-0/+328
| | | | | | | | | This adds support for Wacom Stylus device with I2C interface. [Dan Carpenter <dan.carpenter@oracle.com>: fix NULL-pointer dereference in error handling path.] Signed-off-by: Tatsunosuke Tobita <tobita.tatsunosuke@wacom.co.jp> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: xilinx_ps2 - allocate serio port separatelyDmitry Torokhov2012-04-031-17/+18
| | | | | | | | | | | | | 'struct serio' is a refcounted data structure with lifetime rules different from 'struct xps2data'. It is quite likely that serio_unregister_port() will try to free memory allocated by the port and that is why it should be allocated separately. Also switch to using platform_get/set_drvdata instead of dev_get/set_drvdata because we are dealing with platform device. Reported-by: Tobias Klauser <tklauser@distanz.ch> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: tegra-kbc - allocate pdata before using itViresh Kumar2012-03-271-0/+1
| | | | | | | | | | | | | | | | Following commit broke DT support for tegra-kbc by removing pdata allocation completely: commit 023cea0ecfa2df034096c3f4afa796a0b2d1188a Author: Shridhar Rasal <srasal@nvidia.com> Date: Fri Feb 3 00:27:30 2012 -0800 Input: tegra-kbc - allow skipping setting up some of GPIO pins This patch restores it. Signed-off-by: Viresh Kumar <viresh.kumar@st.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: amijoy - add missing platform checkGeert Uytterhoeven2012-03-261-0/+3
| | | | | | | | | | | On multi-platform kernels, the Amiga joystick driver may be initialized when running on Amiga only. Else it may crash later. Fortunately this driver is almost always compiled as a module (to avoid conflicts with the mouse driver), so it needs an explicit insmod to trigger a crash. Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: wacom - wireless battery statusChris Bagwell2012-03-265-2/+64
| | | | | | | Signed-off-by: Chris Bagwell <chris@cnpbagwell.com> Tested-by: Jason Gerecke <killertofu@gmail.com> Acked-by: Ping Cheng <pingc@wacom.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: wacom - create inputs when wireless connectChris Bagwell2012-03-264-10/+109
| | | | | | | | | | | | | | | | | | | | When a tablet connect or disconnect is detected, schedule work queue to register or unregister related input devices. When a wireless tablet connects, it reports same USB PID used if tablet is connected with USB cable. Use this to update features values, set input capabilities, and then register device. From there, the Pen and Touch interfaces will reuse the existing tablet's IRQ routines. Its possible that 1 receiver is shared with 2 tablets with different PID (small and medium Bamboo for example) so the input is unregister at disconnect to better support this case. Signed-off-by: Chris Bagwell <chris@cnpbagwell.com> Tested-by: Jason Gerecke <killertofu@gmail.com> Acked-by: Ping Cheng <pingc@wacom.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: wacom - wireless monitor frameworkChris Bagwell2012-03-263-6/+62
| | | | | | | | | | | | | | | | | | | | | | | The 3rd gen Bamboo Pen & Touch and Intuos5 tablets support an optional wireless module. When its receiver is plugged into USB, it presents 3 interfaces: 0) Monitor 1) Pen and 2) Touch. The exact capabilities of the Pen and Touch interfaces can not be determined until a tablet connection is established and reported over the Monitor interface. This patch detects this wireless receiver and enables interrupt packets to be processed for the Monitor interface. Processing the data in packets will be left to another patch. Since it doesn't make sense to create an input device for the Monitor interface, it is not created. Creation of Pen and Touch input device is also delayed until monitor packets can be processed. Signed-off-by: Chris Bagwell <chris@cnpbagwell.com> Tested-by: Jason Gerecke <killertofu@gmail.com> Acked-by: Ping Cheng <pingc@wacom.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: wacom - isolate input registrationChris Bagwell2012-03-261-20/+33
| | | | | | | | | | | Although this better co-locates input registration logic, the main goal is to make it easier to optionally create input devices or delay creation to later time periods. Signed-off-by: Chris Bagwell <chris@cnpbagwell.com> Tested-by: Jason Gerecke <killertofu@gmail.com> Acked-by: Ping Cheng <pingc@wacom.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: sentelic - improve packet debugging informationOskari Saarenmaa2012-03-261-9/+34
| | | | | | Signed-off-by: Oskari Saarenmaa <os@ohmu.fi> Signed-off-by: Tai-hwa Liang <avatar@sentelic.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: sentelic - minor code cleanupTai-hwa Liang2012-03-261-1/+1
| | | | | | | | Improve code readability by converting yet another magic number into a pre-defined constant. Signed-off-by: Tai-hwa Liang <avatar@sentelic.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: sentelic - enabling absolute coordinates output for newer hardwareTai-hwa Liang2012-03-262-4/+132
| | | | | | | | | | | | | | | | | | - Hooking multi-finger coordinates output with kernel multitouch library; - Enabling absolute coordinates output for Cx+ hardware. The older hardware performs much better in relative mode; thus relative mode related code are preserved. Part of the code is based on the work done by Oskari Saarenmaa <os@ohmu.fi>, which was used to support the clickpad found on ASUS UX21/31 Ultrabook. On the other hand, the FSP found on UX21/31 doesn't have hardware capability register other than PnP ID, which means that we'll have to figure out an alternative approach to identify such pad correctly; otherwise, blindly adding INPUT_PROP_BUTTONPAD property may compatability issues amongst existing FSPs. Signed-off-by: Tai-hwa Liang <avatar@sentelic.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: sentelic - refactor code for upcoming new hardware supportTai-hwa Liang2012-03-262-62/+94
| | | | | | | | | | | | | | - Move event bits setup code into a separate function, fsp_set_input_params(), so that we can perform hardware-specific settings in the future; - Take hardware version information into account when activating protocol; - Remove button information from boot message as it's somewhat confusing and is only for internal processing. While there, also move button retrieval code to be a part of protocol activation process. Signed-off-by: Tai-hwa Liang <avatar@sentelic.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: gpio_keys - add support for interrupt only keysLaxman Dewangan2012-03-201-66/+148
| | | | | | | | | | | Some of buttons, like power-on key or onkey, may only generate interrupts when pressed and not actually be mapped as gpio in the system. Allow setting gpio to invalid value and specify IRQ instead to support such keys. The debounce timer is used not to debounce but to ignore new IRQs coming while button is kept pressed. Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: gpio_keys - consolidate key destructor codeDmitry Torokhov2012-03-201-16/+14
| | | | Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: revert "gpio_keys - switch to using threaded IRQs"David Jander2012-03-201-1/+1
| | | | | | | | request_any_context_irq() should handle the case when using GPIO expanders that themselves use threaded IRQs, and so the premise of change 7e2ecdf438bb479e2b4667fc16b1a84d6348da04 is incorrect. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: gpio_keys - constify platform dataDmitry Torokhov2012-03-201-16/+15
| | | | | | | The platform data should not be altered and therefore should be accessed through const pointers. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: ili210x - add support for Ilitek ILI210x based touchscreensOlivier Sobrie2012-03-173-0/+376
| | | | | | | | | | | The driver supports chipsets ILI2102, ILI2102s, ILI2103, ILI2103s and ILI2105. Such kind of controllers can be found in Amazon Kindle Fire devices. Reviewed-by: Jan Paesmans <jan.paesmans@gmail.com> Reviewed-by: Henrik Rydberg <rydberg@euromail.se> Signed-off-by: Olivier Sobrie <olivier@sobrie.be> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: altera_ps2 - use of_match_ptr()Tobias Klauser2012-03-171-3/+1
| | | | | | | | Instead of having to define the match table to NULL if CONFIG_OF isn't set, use the of_match_ptr() macro which will do this for us. Signed-off-by: Tobias Klauser <tklauser@distanz.ch> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: synaptics_usb - switch to module_usb_driver()Dmitry Torokhov2012-03-175-57/+5
| | | | Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: convert I2C drivers to use module_i2c_driver()Axel Lin2012-03-1729-345/+29
| | | | | | | | | This patch converts the drivers in drivers/input/* to use the module_i2c_driver() macro which makes the code smaller and a bit simpler. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: convert SPI drivers to use module_spi_driver()Axel Lin2012-03-177-77/+7
| | | | | | | | | This patch converts the drivers in drivers/input/* to use the module_spi_driver() macro which makes the code smaller and a bit simpler. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: omap4-keypad - move platform_data to <linux/platform_data>Felipe Balbi2012-03-172-2/+1
| | | | | | | | | This patch allows us to drop the OMAP dependency from the OMAP4 keypad driver. Signed-off-by: Felipe Balbi <balbi@ti.com> Signed-off-by: Sourav Poddar <sourav.poddar@ti.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: kxtj9 - who_am_i check value and initial data rate fixesChristopher Hudson2012-03-171-5/+17
| | | | | | | | | | | | | | | | | | Several fixes based on customer feedback: * WHO_AM_I value has changed since preliminary parts used for initial testing; * Output of le16_to_cpu must be saved to memory before shifting to preserve sign; * Initial data rate was not extracted from data control register init. This was causing the initial data rate to be set to maximum until it was changed. To fix this problem, it made more sense to specify initial data rate and extract the register mask from that. Signed-off-by: Chris Hudson <chudson@kionix.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: add driver support for MAX8997-hapticDonggeun Kim2012-03-173-0/+420
| | | | | | | | | | | The MAX8997-haptic function can be used to control motor. User can control the haptic driver by using force feedback framework. Signed-off-by: Donggeun Kim <dg77.kim@samsung.com> Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> Acked-by: Samuel Ortiz <sameo@linux.intel.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: tegra-kbc - revise device tree supportOlof Johansson2012-03-141-5/+16
| | | | | | | | | | | | | | This is an incremental patch updating to the revised bindings for matrix keyboards. This includes an optional "linux,fn-keymap" binding that is not yet implemented, that will be used to specify the Fn-key modifier layout if needed. Signed-off-by: Olof Johansson <olof@lixom.net> Acked-by: Grant Likely <grant.likely@secretlab.ca> Acked-by: Stephen Warren <swarren@nvidia.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: of_keymap - add device tree bindings for simple key matricesOlof Johansson2012-03-144-0/+93
| | | | | | | | | This adds a simple device tree binding for simple key matrix data and a helper to fill in the platform data. Signed-off-by: Olof Johansson <olof@lixom.net> Acked-by: Stephen Warren <swarren@nvidia.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: hp680_ts_input - ensure arguments to request_irq and free_irq are ↵Julia Lawall2012-03-131-1/+1
| | | | | | | | | | | compatible Change 0 to NULL in the last argument of request_irq, since the argument should have pointer type and so that the last argument of request_irq syntactically matches the second argument of the later call to free_irq. Signed-off-by: Julia Lawall <Julia.Lawall@lip6.fr> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Merge branch 'for-next' of github.com:rydberg/linux into nextDmitry Torokhov2012-03-093-2/+28
|\
| * bcm5974: Add pointer and buttonpad propertiesChase Douglas2012-02-141-0/+1
| | | | | | | | | | | | | | | | | | To simplify detection as a touchpad, inform userspace of the physical properties of the device. Signed-off-by: Chase Douglas <chase.douglas@canonical.com> [rydberg@euromail.se: conflict resolution] Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
| * Input: Add EVIOC mechanism for MT slotsHenrik Rydberg2012-02-091-1/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds the ability to extract MT slot data via a new ioctl, EVIOCGMTSLOTS. The function returns an array of slot values for the specified ABS_MT event type. Example of user space usage: struct { unsigned code; int values[64]; } req; req.code = ABS_MT_POSITION_X; if (ioctl(fd, EVIOCGMTSLOTS(sizeof(req)), &req) < 0) return -1; for (i = 0; i < 64; i++) printf("slot %d: %d\n", i, req.values[i]); Reviewed-by: Chase Douglas <chase.douglas@canonical.com> Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
| * Input: Use accessor for MT valuesHenrik Rydberg2012-02-021-1/+1
| | | | | | | | | | | | | | | | The current MT accessor function does not distinguish between the MT values and the slot specification event. Add an accessor function for the values only, and use it where appropriate. Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
* | Merge commit 'v3.3-rc6' into nextDmitry Torokhov2012-03-094560-212217/+253584
|\ \