summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Input: max8925_onkey - avoid accessing input device too earlyDmitry Torokhov2012-03-061-47/+44Star
| | | | | | | | | | | | | Input device must be allocated (but not necessarily registered) before requesting IRQs, otherwise there is a chance that IRQ handler fires and tries to reference not yet allocated input device. Also it makes sense to store relative IRQ numbers in max8925_onkey_info structure as they are needed in suspend/resume which we expect to be called more often than probe and remove. Acked-by: Haojian Zhuang <haojian.zhuang@gmail.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: max8925_onkey - allow to be used as a wakeup sourceKevin Liu2012-03-061-0/+34
| | | | | | | Implement suspend and resume methods to set up devices as wakeup source. Signed-off-by: Kevin Liu <kliu5@marvell.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: atmel-wm97xx - convert to dev_pm_opsDmitry Torokhov2012-03-041-8/+9
| | | | Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: atmel-wm97xx - set driver ownerDmitry Torokhov2012-03-041-1/+2
| | | | | | This allows creating proper sysfs link between driver and its module. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: add cyttsp touchscreen maintainer entryJavier Martinez Canillas2012-03-041-0/+7
| | | | | | | | Since Cypress TTSP driver was merged in mainline, add a maintainer entry for it. Signed-off-by: Javier Martinez Canillas <javier@dowhile0.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: cyttsp - remove useless checks in cyttsp_probe()Dmitry Torokhov2012-03-041-1/+1
| | | | | | | | | This fixes reference-before-check problem; there is no reason to check if caller passed NULL dev or bus_ops as it is done only by bus-specific drivers which already do the right thing. Reported-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: usbtouchscreen - add support for Data Modul EasyTouch TP 72037Armando Visconti2012-03-042-0/+72
| | | | | | | | | | | | | The Data Modul TP 72037 EasyTouch controller is derived from EGALAX controller and is capable of detecting dual contacts. Packets can be 5 bytes or 10 bytes long, depending whether one or two contacts are detected. Format is same as EGALAX touch controller, but with x and y coordinates inverted. Signed-off-by: Armando Visconti <armando.visconti@st.com> Signed-off-by: Viresh Kumar <viresh.kumar@st.com> Signed-off-by: Daniel Ritz <daniel.ritz@gmx.ch> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: add support for OnKey module for DA9052/53 PMICAshish Jangam2012-03-043-0/+180
| | | | | | | | On-key Driver for Dialog Semiconductor DA9052/53 PMICs. Signed-off-by: David Dajun Chen <dchen@diasemi.com> Signed-off-by: Ashish Jangam <ashish.jangam@kpitcummins.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: add support for TI Touchscreen controllerRachna Patil2012-03-044-0/+516
| | | | | | | | | | | | | This patch adds support for TI's touchscreen controller for a 4/5/8 wire resistive panel that is directly fed to the ADC. This touchscreen controller will be part of AM335x TI SoC. The TRM can be found at: http://www.ti.com/lit/ug/spruh73a/spruh73a.pdf Signed-off-by: Patil, Rachna <rachna@ti.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: spear-keyboard - provide thaw and poweroff routinesViresh Kumar2012-02-281-7/+2Star
| | | | | | | | | | | Thaw and poweroff routines are missing for spear-keyboard. They are required for: - Error case scenarios during freeze - Using test features, of hibernate. Signed-off-by: Viresh Kumar <viresh.kumar@st.com> Signed-off-by: Rajeev Kumar <rajeev-dlh.kumar@st.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: spear-keyboard - configure device according to supplied modeRajeev Kumar2012-02-282-1/+12
| | | | | | | | | | | | Let platform pass mode information to keyboard driver according to which it configures itself. The mode can be - KEYPAD_9x9 0 - KEYPAD_6x6 1 - KEYPAD_2x2 2 Signed-off-by: Rajeev Kumar <rajeev-dlh.kumar@st.com> Signed-off-by: Viresh Kumar <viresh.kumar@st.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: spear-keyboard - add 6x6 keypad matrix definitionsRajeev Kumar2012-02-281-1/+41
| | | | | | | | Add 6x6 keypad matrix and rename 9x9 keymap Signed-off-by: Rajeev Kumar <rajeev-dlh.kumar@st.com> Signed-off-by: Viresh Kumar <viresh.kumar@st.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: spear-keyboard - delete redundant key definitions from 9x9 keyboardRajeev Kumar2012-02-281-18/+0Star
| | | | | | Signed-off-by: Rajeev Kumar <rajeev-dlh.kumar@st.com> Signed-off-by: Viresh Kumar <viresh.kumar@st.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: psmouse - use psmouse_[de]activate() from sentelic and hgpk driversPaul Fox2012-02-242-15/+6Star
| | | | | | | Make use of psmouse_activate() and psmouse_deactivate() from psmouse-base.c Signed-off-by: Andres Salomon <dilinger@queued.net> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: psmouse - allow drivers to use psmouse_{de,}activateAndres Salomon2012-02-242-5/+12
| | | | | | | | Other drivers duplicate this code; no sense in having it be private to psmouse-base. Signed-off-by: Andres Salomon <dilinger@queued.net> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: tegra-kbc - allow skipping setting up some of GPIO pinsShridhar Rasal2012-02-032-8/+34
| | | | | | | | | Allow marking some of GPIO pins as ignored to to avoid continuously generating KBC input events. Signed-off-by: Shridhar Rasal <srasal@nvidia.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: add Synaptics USB device driverJan Steinhoff2012-02-035-0/+607
| | | | | | | | | | | | | | | | This patch adds a driver for Synaptics USB touchpad or pointing stick devices. These USB devices emulate an USB mouse by default, so one can also use the usbhid driver. However, in combination with special user space drivers this kernel driver allows one to customize the behaviour of the device. An extended version of this driver with support for the cPad background display can be found at <http://jan-steinhoff.de/linux/synaptics-usb.html>. Signed-off-by: Jan Steinhoff <mail@jan-steinhoff.de> Acked-by: Jiri Kosina <jkosina@suse.cz> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: add infrastructure for selecting clockid for event time stampsJohn Stultz2012-02-033-4/+25
| | | | | | | | | | | | | | | | | | | | | | As noted by Arve and others, since wall time can jump backwards, it is difficult to use for input because one cannot determine if one event occurred before another or for how long a key was pressed. However, the timestamp field is part of the kernel ABI, and cannot be changed without possibly breaking existing users. This patch adds a new IOCTL that allows a clockid to be set in the evdev_client struct that will specify which time base to use for event timestamps (ie: CLOCK_MONOTONIC instead of CLOCK_REALTIME). For now we only support CLOCK_MONOTONIC and CLOCK_REALTIME, but in the future we could support other clockids if appropriate. The default remains CLOCK_REALTIME, so we don't change the ABI. Signed-off-by: John Stultz <john.stultz@linaro.org> Reviewed-by: Daniel Kurtz <djkurtz@google.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: add Cypress TTSP capacitive multi-touch screen supportJavier Martinez Canillas2012-01-317-2/+1223
| | | | | | | | | | | | | | | | | Cypress TrueTouch(tm) Standard Product controllers are found in a wide range of embedded devices. This driver add support for a variety of TTSP controllers. Since the hardware is capable of tracking identifiable contacts, multi-touch protocol type B (stateful) is used to report contact information. The driver is composed of a core driver that process the data sent by the contacts and a set of bus specific interface modules. This patch adds the base core TTSP driver. Signed-off-by: Javier Martinez Canillas <javier@dowhile0.org> Reviewed-by: Henrik Rydberg <rydberg@euromail.se> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: wacom - use switch statement for wacom_tpc_irq()Ping Cheng2012-01-312-6/+20
| | | | | | | | | And add two new data formats. Tested-by: Chris Bagwell <chris@cnpbagwell.com> Reviewed-by: Chris Bagwell <chris@cnpbagwell.com> Signed-off-by: Ping Cheng <pingc@wacom.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: wacom - use BTN_TOOL_FINGER to indicate touch device typePing Cheng2012-01-312-7/+3Star
| | | | | | | Tested-by: Chris Bagwell <chris@cnpbagwell.com> Reviewed-by: Chris Bagwell <chris@cnpbagwell.com> Signed-off-by: Ping Cheng <pingc@wacom.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: pcf8574_keypad - fix typo in KconfigMasanari Iida2012-01-311-1/+1
| | | | | | | | Correct spelling "connetced" to "connected" in pcf8574_keypad description in drivers/input/misc/Kconfig. Signed-off-by: Masanari Iida <standby24x7@gmail.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: tegra-kbc - enable key interrupt for wakeupRakesh Iyer2012-01-231-0/+17
| | | | | | | Enable keypress interrupt to support wakeup from low power state. Signed-off-by: Rakesh Iyer <riyer@nvidia.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: tegra-kbc - remove pre-Tegra20 definitionsRakesh Iyer2012-01-231-5/+0Star
| | | | | | | | | Add support for Tegra30 by correcting definitions. This is necessary to make driver useful in Tegra30. Signed-off-by: Rakesh Iyer <riyer@nvidia.com> Acked-by: Stephen Warren: <swarren@nvidia.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: samsung-keypad - don't synchronise with runtime PM putMark Brown2012-01-231-3/+3
| | | | | | | | | | We don't actually care if the device has been runtime suspended immediately so we can just drop the reference without waiting for any state change to be implemented. This may allow us to avoid some suspend/resume cycles and is a bit more friendly to the rest of the system. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: q40kbd - convert driver to the split modelDmitry Torokhov2012-01-232-60/+92
| | | | | | | | | | | Convert the driver to standard spilt model arch-specific code registers platform device to which driver code can bind later. Also request IRQ immediately upon binding to the device instead of doing this when serio port is being opened. Acked-by: Geert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: at32psif - convert to dev_pm_opsDmitry Torokhov2012-01-231-11/+11
| | | | | | | Convert driver to use dev_pm_ops instead of legacy PM infrastructure. Also make 'open' a bool since it is really a boolean. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: nomadik-ske-keypad - convert to using SIMPLE_DEV_PM_OPSDmitry Torokhov2012-01-231-8/+4Star
| | | | | | | | Also proper guard for system suspend/resume methods is CONFIG_PM_SLEEP, not CONFIG_PM. Acked-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: nomadik-ske-keypad - do not assign driver's probe() methodDmitry Torokhov2012-01-231-3/+2Star
| | | | | | | | | | Because we are using platform_device_probe() to register the driver we do not need to assign driver's probe method. We also can mark ske_keypad_probe(), together with ske_keypad_chip_init(), as __init instead of __devinit. Acked-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: tc3589x-keypad - add missing kerneldocNaga Radhesh2012-01-051-0/+2
| | | | | | | | | | This adds two missing kerneldoc entries for the TC3589x keypad driver. Signed-off-by: Naga Radhesh <naga.radheshy@stericsson.com> Reviewed-by: Srinidhi Kasagar <srinidhi.kasagar@stericsson.com> Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: ucb1400-ts - switch to using dev_xxx() for diagnostic messagesDmitry Torokhov2012-01-051-8/+9
| | | | | Acked-by: Marek Vasut <marek.vasut@gmail.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: ucb1400_ts - convert to threaded IRQDmitry Torokhov2012-01-052-126/+115Star
| | | | | | | | Instead of manually create and handler kernel thread switch to threaded IRQ and let kernel IRQ core manage thread for us. Acked-by: Marek Vasut <marek.vasut@gmail.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: ucb1400_ts - drop inline annotationsDmitry Torokhov2012-01-051-9/+9
| | | | | | | Let compiler figure out which ones makes most sense to inline. Acked-by: Marek Vasut <marek.vasut@gmail.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: usb1400_ts - add __devinit/__devexit section annotationsDmitry Torokhov2012-01-051-5/+5
| | | | | | | | Add __devinit/__devexit sections annotations so parts of code could be discarded after completing driver initialization. Acked-by: Marek Vasut <marek.vasut@gmail.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: ucb1400_ts - set driver ownerDmitry Torokhov2012-01-051-0/+1
| | | | | | | So that it has proper symlink to the containing module in sysfs. Acked-by: Marek Vasut <marek.vasut@gmail.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: ucb1400_ts - convert to use dev_pm_opsDmitry Torokhov2012-01-051-6/+6
| | | | | | | Instead of using legacy PM interfaces switch to using dev_pm_ops. Acked-by: Marek Vasut <marek.vasut@gmail.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: psmouse - make sure we do not use stale methodsDmitry Torokhov2011-12-311-69/+124
| | | | | | | | | | | | | | | | Several protocol initialization routines can fail after they set up psmouse methods, such as reconnect and disconnect. This may lead to these stale methods used with different protocol that they were intended to be used for and may cause unpredictavle behavior and/or crashes. Make sure we start with a clean slate before executing each and every protocol detection and/or initialization routine. Reported-by: Paul Fox <pgf@laptop.org> Acked-by: Tai-hwa Liang <avatar@sentelic.com> Acked-by: Paul Fox <pgf@laptop.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: evdev - do not block waiting for an event if fd is nonblockDima Zavin2011-12-311-8/+7Star
| | | | | | | | | | | If there is a full packet in the buffer, and we overflow that buffer right after checking for that condition, it would have been possible for us to block indefinitely (rather, until the next full packet) even if the file was marked as O_NONBLOCK. Cc: Jeff Brown <jeffbrown@android.com> Signed-off-by: Dima Zavin <dima@android.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: evdev - if no events and non-block, return EAGAIN not 0Dima Zavin2011-12-311-0/+3
| | | | | Signed-off-by: Dima Zavin <dima@android.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: evdev - only allow reading events if a full packet is presentDima Zavin2011-12-311-1/+1
| | | | | | | | | | | | | | Without this, it was possible for the reader to get ahead of packet_head. If the input device generated a partial packet *right* after the reader got ahead, then we can get into a situation where the device is marked readable, but read always returns 0 until the next packet is finished (i.e a SYN is generated by the input driver). This situation can also happen if we overflow the buffer while a reader is trying to read an event out. Signed-off-by: Dima Zavin <dima@android.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: add driver for pixcir i2c touchscreensJianchun Bian2011-12-314-0/+262
| | | | | | | | This patch adds a driver for PIXCIR's I2C connected touchscreens. Signed-off-by: Jianchun <jcbian@pixcir.com.cn> Acked-by: Henrik Rydberg <rydberg@euromail.se> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: samsung-keypad - implement runtime power management supportMark Brown2011-12-301-7/+80
| | | | | | | | | | | | | | | | | | | | | | | | | When runtime power management is enabled put the Samsung keypad driver into suspend mode with wakeups disabled whenever the device is open but a key is not actually been pressed. As well as saving a trivial amount of power this will support the use of SoC wide idle modes which put the entire device into a retention mode and use explicit wakeup sources to exit. Since not all of the interrupt controllers used with the driver support set_irq_wake() (though they all do the right thing) and there's a nasty WARN() when we disable wake after failing to enable it keep track of the current wake status from runtime PM and only disable wake if we managed to enable it; I'm not entirely sure why this doesn't affect the existing uses of the API in the driver. System suspend is unaffected as the driver core will runtime resume any suspended devices prior to system suspend. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru> Conflicts: drivers/input/keyboard/samsung-keypad.c
* Input: tegra-kbc - report wakeup key for some platformsRakesh Iyer2011-12-302-3/+25
| | | | | | | | | Tegra kbc cannot detect exact keypress causing wakeup in interrupt mode. Allow wakeup keypress to be reported for certain platforms. Signed-off-by: Rakesh Iyer <riyer@nvidia.com> Acked-by: Stephen Warren <swarren@nvidia.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: tegra-kbc - add device tree bindingsOlof Johansson2011-12-302-8/+102
| | | | | | | | | | This adds a simple device tree binding to the tegra keyboard controller. Also, mark the default keymap as __devinitdata since it is not referenced after boot. Signed-off-by: Olof Johansson <olof@lixom.net> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: add driver for AUO In-Cell touchscreens using pixcir ICsHeiko Stübner2011-12-284-0/+722
| | | | | | | | | | | | | | | | | | Some displays from AUO have a so called in-cell touchscreen, meaning it is built directly into the display unit. Touchdata is gathered through PIXCIR Tango-ICs and processed in an Atmel ATmega168P with custom firmware. Communication between the host system and ATmega is done via I2C. Devices using this touch solution include the Dell Streak5 and the family of Qisda ebook readers. The driver reports single- and multi-touch events including touch area values. Signed-off-by: Heiko Stuebner <heiko@sntech.de> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: mpu3050 - configure the sampling methodHeikki Krogerus2011-12-241-5/+103
| | | | | | | | | This will improve the output of the sensor. Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com> Signed-off-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com> Signed-off-by: Alan Cox <alan@linux.intel.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: mpu3050 - ensure we enable interruptsHeikki Krogerus2011-12-241-1/+12
| | | | | | | | | | This also changes the devname parameter delivered to request_threaded_irq() from "mpu_int" to "mpu3050". Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com> Signed-off-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com> Signed-off-by: Alan Cox <alan@linux.intel.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: mpu3050 - add of_match table for device-tree probingOlof Johansson2011-12-241-0/+7
| | | | | | | Adding invn,mpu3050 as the initial id. Signed-off-by: Olof Johansson <olof@lixom.net> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: sentelic - document the latest hardwareTai-hwa Liang2011-12-231-31/+333
| | | | | | | | | | - Add documentation for the Cx/Dx hardware release; - Fix wrong register offset for retrieving button information; - Document programming sequence for page register R/W; - Document a couple of supported gesture IDs. Signed-off-by: Tai-hwa Liang <avatar@sentelic.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: wacom - add LED support for Cintiq 24HDJason Gerecke2011-12-122-9/+13
| | | | | | | | | | | The Cintiq 24HD has three LEDs on the left side of the tablet and three LEDs on the right side of the tablet. Switching to LED 0, 1, or 2 will enable the top, middle, or bottom LED for the respective side. Switching to LED 3 turns off the LEDs on the respective side. Signed-off-by: Jason Gerecke <killertofu@gmail.com> Reviewed-by: Ping Cheng <pingc@wacom.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>