aboutsummaryrefslogtreecommitdiff
path: root/drivers/input
AgeCommit message (Collapse)AuthorFilesLines
2014-05-29Input: max8925_onkey - switch to using managed resourcesHimangi Saraogi1-37/+18
Let's switch the driver to use managed resources, this will simplify error handling and driver unbinding logic. Signed-off-by: Himangi Saraogi <[email protected]> Acked-by: Julia Lawall <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-29Input: 88pm860x-ts - switch to using managed resourcesHimangi Saraogi1-28/+13
Let's switch the driver to use managed resources, this will simplify error handling and driver unbinding logic. Signed-off-by: Himangi Saraogi <[email protected]> Acked-by: Julia Lawall <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-29Input: 88pm860x_onkey - switch to using managed resourcesHimangi Saraogi1-30/+10
Let's switch the driver to use managed resources, this will simplify error handling and driver unbinding logic. Signed-off-by: Himangi Saraogi <[email protected]> Acked-by: Julia Lawall <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-29Input: intel-mid-touch - switch to using managed resourcesHimangi Saraogi1-30/+17
Let's switch the driver to use managed resources, this will simplify error handling and driver unbinding logic. Signed-off-by: Himangi Saraogi <[email protected]> Acked-by: Julia Lawall <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-29Input: wacom - process outbound for newer CintiqsPing Cheng2-22/+24
New Cintiq tablets have a 200 tablet counts outside of screen area. Add x/y_min for ABS_X/Y to pass this information to userland. Signed-off-by: Ping Cheng <[email protected]> Reviewed-by: Jason Gerecke <[email protected]> Tested-by: Jason Gerecke <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-29Input: wacom - set stylus_in_proximity when pen is in rangePing Cheng1-0/+2
Signed-off-by: Ping Cheng <[email protected]> Reviewed-by: Jason Gerecke <[email protected]> Tested-by: Jason Gerecke <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-29Input: tsc2005 - add DT supportSebastian Reichel1-20/+104
This adds DT support to the tsc2005 touchscreen driver. It also adds regulator support to the driver if booted via DT. Reviewed-by: Pavel Machek <[email protected]> Acked-by: Aaro Koskinen <[email protected]> Signed-off-by: Sebastian Reichel <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-29Input: add common DT binding for touchscreensSebastian Reichel3-0/+50
Add common DT binding documentation for touchscreen devices and implement input_parse_touchscreen_of_params, which parses the common properties and configures the input device accordingly. The method currently does not interpret the axis inversion properties, since there is no matching flag in the generic linux input device. Reviewed-by: Pavel Machek <[email protected]> Acked-by: Aaro Koskinen <[email protected]> Signed-off-by: Sebastian Reichel <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-28Input: jornada680_kbd - switch top using managed resourcesHimangi Saraogi1-26/+10
Let's switch the driver to use managed resources, this will simplify error handling and driver unbinding logic. Signed-off-by: Himangi Saraogi <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-28Input: adp5520-keys - switch to using managed resourcesHimangi Saraogi1-22/+10
Let's switch the driver to use managed resources, this will simplify error handling and driver unbinding logic. Signed-off-by: Himangi Saraogi <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-28Input: da9034-ts - switch to using managed resourcesHimangi Saraogi1-28/+11
Let's switch the driver to use managed resources, this will simplify error handling and allows us to get rid of da9034_touch_remove(). Signed-off-by: Himangi Saraogi <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-28Input: mcs5000_ts - switch to using managed resourcesBeomho Seo1-47/+34
Let's switch the driver to use managed resources, this will simplify error handling and driver unbinding logic. Signed-off-by: Beomho Seo <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-28Input: mcs5000_ts - fix incorrect input device nameBeomho Seo1-1/+1
This patch fix a typo error in MELFAS MCS-5000 controller driver. Signed-off-by: Beomho Seo <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-28Input: mms114 - fix incorrect input device nameBeomho Seo1-1/+1
This patch fix a typo error in mms114 touchscreen driver. Signed-off-by: Beomho Seo <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-28Input: mcs_touchkey - fix incorrect input device nameBeomho Seo1-1/+1
This patch fix a typo error in MELFAS 5000/5080 controller driver. Signed-off-by: Beomho Seo <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-28Input: soc_button_array - remove duplicate inclusion of input.hSachin Kamat1-1/+0
input.h was included twice. Signed-off-by: Sachin Kamat <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-26Input: atmel_mxt_ts - handle multiple input reports in one messageNick Dyer1-8/+28
Signed-off-by: Nick Dyer <[email protected]> Acked-by: Benson Leung <[email protected]> Acked-by: Yufeng Shen <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-26Input: atmel_mxt_ts - rename touchscreen defines to include T9Nick Dyer1-23/+23
This avoids confusion with the newer T100 touchscreen object. Signed-off-by: Nick Dyer <[email protected]> Acked-by: Benson Leung <[email protected]> Acked-by: Yufeng Shen <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-26Input: atmel_mxt_ts - rename pressure to amplitude to match specNick Dyer1-4/+4
Signed-off-by: Nick Dyer <[email protected]> Acked-by: Benson Leung <[email protected]> Acked-by: Yufeng Shen <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-26Input: atmel_mxt_ts - read screen config from chipNick Dyer1-71/+65
By reading the touchscreen configuration from the settings that the maXTouch chip is actually using, we can remove some platform data. The matrix size is not used for anything, and results in some rather confusing code to re-read it because it may change when configuration is downloaded, so don't print it out. Signed-off-by: Nick Dyer <[email protected]> Acked-by: Benson Leung <[email protected]> Acked-by: Yufeng Shen <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-26Input: synaptics - change min/max quirk table to pnp-id matchingHans de Goede1-113/+36
Most of the affected models share pnp-ids for the touchpad. So switching to pnp-ids give us 2 advantages: 1) It shrinks the quirk list 2) It will lower the new quirk addition frequency, ie the recently added W540 quirk would not have been necessary since it uses the same LEN0034 pnp ids as other models already added before it As an added bonus it actually puts the quirk on the actual psmouse, rather then on the machine, which is technically more correct. Cc: [email protected] Signed-off-by: Hans de Goede <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-26Input: synaptics - add a matches_pnp_id helper functionHans de Goede1-11/+14
This is a preparation patch for simplifying the min/max quirk table. Cc: [email protected] Signed-off-by: Hans de Goede <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-26Input: synaptics - T540p - unify with other LEN0034 modelsHans de Goede1-1/+1
The T540p has a touchpad with pnp-id LEN0034, all the models with this pnp-id have the same min/max values, except the T540p where the values are slightly off. Fix them to be identical. This is a preparation patch for simplifying the quirk table. Cc: [email protected] Signed-off-by: Hans de Goede <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-18Input: atmel_mxt_ts - add check for incorrect firmware file formatNick Dyer1-0/+29
Atmel supplies firmware files in ASCII HEX format (.enc) which must be converted before they can be loaded by kernel driver. Try to detect the error and print a friendly error message rather than feeding junk to the bootloader. Signed-off-by: Nick Dyer <[email protected]> Acked-by: Benson Leung <[email protected]> Acked-by: Yufeng Shen <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-18Input: atmel_mxt_ts - improve bootloader progress outputNick Dyer1-1/+7
By implementing a frame counter, print out fewer debug messages (the firmware may contain hundreds of frames). Signed-off-by: Nick Dyer <[email protected]> Acked-by: Benson Leung <[email protected]> Acked-by: Yufeng Shen <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-18Input: atmel_mxt_ts - implement bootloader frame retriesNick Dyer1-7/+20
Signed-off-by: Nick Dyer <[email protected]> Acked-by: Benson Leung <[email protected]> Acked-by: Yufeng Shen <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-18Input: atmel_mxt_ts - read and report bootloader versionNick Dyer1-0/+26
Signed-off-by: Nick Dyer <[email protected]> Acked-by: Benson Leung <[email protected]> Acked-by: Yufeng Shen <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-18Input: atmel_mxt_ts - add additional bootloader addressesNick Dyer1-45/+93
Move bootloaders reads/writes into separate functions. Instead of switching client->addr, define new field bootloader_addr in mxt_data. Implement lookup calculation for bootloader addresses. Signed-off-by: Nick Dyer <[email protected]> Acked-by: Benson Leung <[email protected]> Acked-by: Yufeng Shen <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-18Input: atmel_mxt_ts - implement CRC check for configuration dataNick Dyer1-8/+52
The configuration is stored in NVRAM on the maXTouch chip. When the device is reset it reports a CRC of the stored configuration values. Therefore it isn't necessary to send the configuration on each probe - we can check the CRC matches and avoid a timeconsuming backup/reset cycle. Signed-off-by: Nick Dyer <[email protected]> Acked-by: Benson Leung <[email protected]> Acked-by: Yufeng Shen <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-18Input: atmel_mxt_ts - improve error reporting and debugNick Dyer1-10/+23
- Add error messages for probe errors - Report type in invalid object type - Tweak some other debug output messages Signed-off-by: Nick Dyer <[email protected]> Acked-by: Benson Leung <[email protected]> Acked-by: Yufeng Shen <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-18Input: atmel_mxt_ts - make wait-after-reset period compatible with all chipsIiro Valkonen1-22/+87
The delay before the chip can be accessed after reset varies between different chips in maXTouch family. Waiting for an interrupt and a T6 status message with the RESET bit set is a better behaviour. Signed-off-by: Nick Dyer <[email protected]> Acked-by: Benson Leung <[email protected]> Acked-by: Yufeng Shen <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-18Input: atmel_mxt_ts - wait for CHG after bootloader resetsBenson Leung1-7/+15
Rather than msleep for MXT_RESET_TIME and MXT_FWRESET_TIME during the transition to bootloader mode and the transition back from app, wait for the CHG assert to indicate that the transition is done. This change replaces the msleep with a wait for completion that the mxt_interrupt handler signals. Also add CHG poll after last firmware frame - some bootloader versions will assert the interrupt line after the final frame, in testing this meant that the driver attempts to read the info block too early whilst the chip is still resetting. This improves firmware update time as we no longer wait longer than necessary for each reset. Signed-off-by: Benson Leung <[email protected]> Signed-off-by: Daniel Kurtz <[email protected]> Signed-off-by: Nick Dyer <[email protected]> Acked-by: Yufeng Shen <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-18Input: atmel_mxt_ts - wait for CHG assert in mxt_check_bootloaderBenson Leung1-21/+81
The driver should not immediately read bootloader status when in Application Update Mode. The CHG line will assert when the device has made a state transition and is ready to report a new status via i2c. This change adds a wait for completion in mxt_check_bootloader, and changes the mxt_interrupt handler to signal the completion. Signed-off-by: Benson Leung <[email protected]> Signed-off-by: Daniel Kurtz <[email protected]> Signed-off-by: Nick Dyer <[email protected]> Acked-by: Yufeng Shen <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-18Input: atmel_mxt_ts - select FW_LOADER for firmware codeNick Dyer1-0/+1
Signed-off-by: Nick Dyer <[email protected]> Acked-by: Benson Leung <[email protected]> Acked-by: Yufeng Shen <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-18Input: atmel_mxt_ts - define helper functions for size and instancesDaniel Kurtz1-12/+25
These two object table entry fields are reported 1 less than their value. When used, however, we always want the actual size and instances. To keep the object size and instances 1-byte fields, and thus preserve the object-table struct's 6-byte packed alignment, add some convenient accessor functions that do the +1 every time these fields are accessed. Signed-off-by: Daniel Kurtz <[email protected]> Signed-off-by: Nick Dyer <[email protected]> Acked-by: Benson Leung <[email protected]> Acked-by: Yufeng Shen <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-18Input: atmel_mxt_ts - return IRQ_NONE when interrupt handler failsNick Dyer1-2/+1
Signed-off-by: Nick Dyer <[email protected]> Acked-by: Benson Leung <[email protected]> Acked-by: Yufeng Shen <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-18Input: atmel_mxt_ts - improve T19 GPIO keys handlingNick Dyer1-27/+17
* The mapping of the GPIO numbers into the T19 status byte varies between different maXTouch chips. Some have up to 7 GPIOs. Allowing a keycode array of up to 8 items is simpler and more generic. So replace #define with configurable number of keys which also allows the removal of is_tp. * Rename platform data parameters to include "t19" to prevent confusion with T15 key array. * Probe aborts early on when pdata is NULL, so no need to check. * Move "int i" to beginning of function (mixed declarations and code) * Use API calls rather than __set_bit() * Remove unused dev variable. Signed-off-by: Nick Dyer <[email protected]> Acked-by: Yufeng Shen <[email protected]> Reviewed-by: Henrik Rydberg <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-18Input: atmel_mxt_ts - remove unnecessary platform dataNick Dyer1-50/+0
It is not necessary to download these values to the maXTouch chip on every probe, since they are stored in NVRAM. It makes life difficult when tuning the device to keep them in sync with the config array/file, and requires a new kernel build for minor tweaks. These parameters only represent a tiny subset of the available configuration options, tracking all of these options in platform data would be a endless task. In addition, different versions of maXTouch chips may have these values in different places or may not even have them at all. Having these values also makes life more complex for device tree and other platforms where having to define a static configuration isn't helpful. Signed-off-by: Nick Dyer <[email protected]> Acked-by: Benson Leung <[email protected]> Acked-by: Yufeng Shen <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-18Input: pixcir_i2c_ts - implement wakeup from suspendRoger Quadros1-4/+43
Improve the suspend and resume handlers to allow the device to wakeup the system from suspend. Signed-off-by: Roger Quadros <[email protected]> Acked-by: Mugunthan V N <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-18Input: pixcir_i2c_ts - get rid of pdata->attb_read_val()Roger Quadros1-1/+15
Get rid of the attb_read_val() platform hook. Instead, read the ATTB gpio directly from the driver. Fail if valid ATTB gpio is not provided by patform data. Signed-off-by: Roger Quadros <[email protected]> Acked-by: Mugunthan V N <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-18Input: pixcir_i2c_ts - initialize interrupt mode and power modeRoger Quadros1-8/+174
Introduce helper functions to configure power and interrupt registers. Default to IDLE mode on probe as device supports auto wakeup to ACVIE mode on detecting finger touch. Configure interrupt mode and polarity on start up. Power down on device closure or module removal. Signed-off-by: Roger Quadros <[email protected]> Acked-by: Mugunthan V N <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-18Input: pixcir_i2c_ts - use devres managed resource allocationsRoger Quadros1-23/+15
Use devm_() and friends for allocating memory, input device and IRQ. Signed-off-by: Roger Quadros <[email protected]> Acked-by: Mugunthan V N <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-18Input: ims-pcu - fix uninitialized use of 'error' in ims_pcu_buffers_alloc()Christian Engelmayer1-0/+1
In case allocation via usb_alloc_coherent() fails in ims_pcu_buffers_alloc(), the function jumps to the exit path without initializing local variable 'error' that is used as return value. Detected by Coverity - CID 1016531. Signed-off-by: Christian Engelmayer <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-14Input: wacom - add support for three new ISDv4 sensorsJason Gerecke3-1/+41
This patch adds support for the 0x4004, 0x5000, and 0x5002 sensors found on what should be the Motion R12, Fujitsu Q704, and Fujitsu T904. These tablets use a new report ID (3) for their touch packets and a slightly different HID descriptor format, but are otherwise largely identical in protocol to the "MTTPC" tablets. Note: * The R12 uses its 0x4004 sensor for touch input only. A pen interface is not present in its HID descriptor, though its possible a 0x4004 may be used for pen input by other tablet PCs in the future. * The 0x5002 sensor appears to use a new report ID (8) for its pen packets. The other sensors continue to use the traditional report ID (2). Signed-off-by: Jason Gerecke <[email protected]> Reviewed-by: Ping Cheng <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-14Input: wacom - use unaligned access where necessaryJason Gerecke1-9/+9
A few cases of incorrectly using 'le16_to_cpup' instead of 'get_unaligned_le16' have been noticed and fixed. Signed-off-by: Jason Gerecke <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-14Merge tag 'v3.15-rc5' into nextDmitry Torokhov23-212/+450
Merge with Linux 3.15-rc5 to sync up Wacom and other changes.
2014-05-14Input: pmic8xxx-pwrkey - set sane default for debounce timeStephen Boyd1-4/+4
If the debounce time is 0 our usage of ilog2() later on in this driver will cause undefined behavior. If CONFIG_OF=n this fact is evident to the compiler, and it emits a call to ____ilog2_NaN() which doesn't exist. Fix this by setting a sane default for debounce and failing to probe if debounce is 0 in the DT. Reported-by: Arnd Bergmann <[email protected]> Signed-off-by: Stephen Boyd <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-14Input: wacom - add support for 0x116 sensor on Win8 Panasonic CF-H2Jason Gerecke2-0/+9
The Win8 version of the Panasonic CF-H2 includes a new Wacom device. The pen interface appears to use the same protocol as before, but the touch interface has been tweaked to send Win8-compatible reports. Signed-off-by: Jason Gerecke <[email protected]> Reviewed-by: Ping Cheng <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-14Input: sun4i-ts - add support for temperature sensorHans de Goede2-31/+109
The sun4i resisitive touchscreen controller also comes with a built-in temperature sensor. This commit adds support for it. This commit also introduces a new "ts-attached" device-tree property, when this is not set, the input part of the driver won't register. This way the internal temperature sensor can be used to measure the SoC temperature independent of there actually being a touchscreen attached to the controller. Signed-off-by: Hans de Goede <[email protected]> Reviewed-by: Guenter Roeck <[email protected]> Acked-by: Maxime Ripard <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-14Input: add driver for Allwinner sunxi SoC's rtp controllerHans de Goede3-0/+273
Note the sun4i-ts controller is capable of detecting a second touch, but when a second touch is present then the accuracy becomes so bad the reported touch location is not useable. The original android driver contains some complicated heuristics using the aprox. distance between the 2 touches to see if the user is making a pinch open / close movement, and then reports emulated multi-touch events around the last touch coordinate (as the dual-touch coordinates are worthless). These kinds of heuristics are just asking for trouble (and don't belong in the kernel). So this driver offers straight forward, reliable single touch functionality only. Signed-off-by: Hans de Goede <[email protected]> Acked-by: Maxime Ripard <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>