aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2014-09-11Input: i8042 - also set the firmware id for MUXed portsHans de Goede1-0/+2
So that firmware-id matching can be used with multiplexed aux ports too. Signed-off-by: Hans de Goede <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-09-11Input: i8042 - add nomux quirk for Avatar AVIU-145A6Hans de Goede1-0/+7
The sys_vendor / product_name are somewhat generic unfortunately, so this may lead to some false positives. But nomux usually does no harm, where as not having it clearly is causing problems on the Avatar AVIU-145A6. https://bugzilla.kernel.org/show_bug.cgi?id=77391 Cc: [email protected] Reported-by: Hugo P <[email protected]> Signed-off-by: Hans de Goede <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-09-11Input: i8042 - add Fujitsu U574 to no_timeout dmi tableHans de Goede1-0/+8
https://bugzilla.kernel.org/show_bug.cgi?id=69731 Cc: [email protected] Reported-by: Jason Robinson <[email protected]> Signed-off-by: Hans de Goede <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-09-11Input: atkbd - do not try 'deactivate' keyboard on any LG laptopsDmitry Torokhov1-8/+0
We are getting more and more reports about LG laptops not having functioning keyboard if we try to deactivate keyboard during probe. Given that having keyboard deactivated is merely "nice to have" instead of a hard requirement for probing, let's disable it on all LG boxes instead of trying to hunt down particular models. This change is prompted by patches trying to add "LG Electronics"/"ROCKY" and "LG Electronics"/"LW60-F27B" to the DMI list. https://bugzilla.kernel.org/show_bug.cgi?id=77051 Cc: [email protected] Reported-by: Jaime Velasco Juan <[email protected]> Reported-by: Georgios Tsalikis <[email protected]> Tested-by: Jaime Velasco Juan <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-09-10Input: serport - add compat handling for SPIOCSTYPE ioctlJohn Sung1-7/+38
When running a 32-bit inputattach utility in a 64-bit system, there will be error code "inputattach: can't set device type". This is caused by the serport device driver not supporting compat_ioctl, so that SPIOCSTYPE ioctl fails. Cc: [email protected] Signed-off-by: John Sung <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-09-10Input: atmel_mxt_ts - fix double free of input deviceStephen Warren1-5/+13
[Nick Dyer: reworked to move free of input device into separate function and only call in paths that require it.] Signed-off-by: Nick Dyer <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-09-09Input: synaptics - add support for ForcePadsDmitry Torokhov2-16/+63
ForcePads are found on HP EliteBook 1040 laptops. They lack any kind of physical buttons, instead they generate primary button click when user presses somewhat hard on the surface of the touchpad. Unfortunately they also report primary button click whenever there are 2 or more contacts on the pad, messing up all multi-finger gestures (2-finger scrolling, multi-finger tapping, etc). To cope with this behavior we introduce a delay (currently 50 msecs) in reporting primary press in case more contacts appear. Cc: [email protected] Reviewed-by: Hans de Goede <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-09-09Input: matrix_keypad - use request_any_context_irq()Lothar Waßmann1-4/+5
When trying to use the matrix-keypad driver with GPIO drivers that require nested irq handlers (e.g. I2C GPIO adapters like PCA9554), request_irq() fails because the GPIO driver requires a threaded interrupt handler. Use request_any_context_irq() to be able to use any GPIO driver as keypad driver. Signed-off-by: Lothar Waßmann <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-09-09Input: atmel_mxt_ts - downgrade warning about empty interruptsNick Dyer1-1/+6
In the case where the CHG/interrupt line mode is not configured correctly, this warning is output to dmesg output for each interrupt. Downgrade the message to debug. Signed-off-by: Nick Dyer <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-09-09Input: wm971x - fix typo in module parameter descriptionMasanari Iida2-2/+2
Signed-off-by: Masanari Iida <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-09-08Input: cap1106 - fix register definitionKlaus Goger1-2/+2
Use the correct register address for Calibration Active and Interrupt Enable. Signed-off-by: Klaus Goger <[email protected]> Acked-by: Daniel Mack <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-09-08Input: add missing POINTER / DIRECT properties to a bunch of driversHans de Goede5-0/+10
I've not done a full audit of all mouse drivers, I noticed these ones were missing the POINTER property while working on the POINTING_STICK property. Signed-off-by: Hans de Goede <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-09-08Input: add INPUT_PROP_POINTING_STICK propertyHans de Goede5-0/+10
It is useful for userspace to know that there not dealing with a regular mouse but rather with a pointing stick (e.g. a trackpoint) so that userspace can e.g. automatically enable middle button scrollwheel emulation. It is impossible to tell the difference from the evdev info without resorting to putting a list of device / driver names in userspace, this is undesirable. Add a property which allows userspace to see if a device is a pointing stick, and set it on all the pointing stick drivers. Signed-off-by: Hans de Goede <[email protected]> Acked-by: Benjamin Tissoires <[email protected]> Acked-by: Peter Hutterer <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-09-08Input: elantech - fix detection of touchpad on ASUS s301lHans de Goede1-0/+7
Adjust Elantech signature validation to account fo rnewer models of touchpads. Cc: [email protected] Reported-and-tested-by: Màrius Monton <[email protected]> Signed-off-by: Hans de Goede <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-08-26Input: elantech - add support for trackpoint found on some v3 modelsUlrik De Bie2-9/+130
Some elantech v3 touchpad equipped laptops also have a trackpoint, before this commit, these give sync errors. With this patch, the trackpoint is provided as another input device: 'Elantech PS/2 TrackPoint' The patch will also output messages that do not follow the expected pattern. In the mean time I've seen 2 unknown packets occasionally: 0x04 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 0x00 , 0x00 , 0x00 , 0x02 , 0x00 , 0x00 I don't know what those are for, but they can be safely ignored. Currently all packets that are not known to v3 touchpad and where packet[3] (the fourth byte) lowest nibble is 6 are now recognized as PACKET_TRACKPOINT and processed by the new elantech_report_trackpoint. This has been verified to work on a laptop Lenovo L530 where the touchpad/trackpoint combined identify themselves as: psmouse serio1: elantech: assuming hardware version 3 (with firmware version 0x350f02) psmouse serio1: elantech: Synaptics capabilities query result 0xb9, 0x15, 0x0c. Reviewed-by: David Herrmann <[email protected]> Reviewed-by: Hans de Goede <[email protected]> Signed-off-by: Ulrik De Bie <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-08-26Input: elantech - reset the device when elantech probe failsUlrik De Bie1-0/+1
elantech_init() calls elantech_set_absolute_mode which sets the driver in an absolute mode. When after this the elantech_init fails, it is best to turn the ps/2 mouse emulation mode back on by calling psmouse_reset() so that it can work as a regular mouse. Reviewed-by: Hans de Goede <[email protected]> Signed-off-by: Ulrik De Bie <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-08-26Input: ALPS - suppress message about 'Unknown touchpad'Dmitry Torokhov1-2/+2
When we fail to match data returned by E7 and EC reports we state that we found "Unknown ALPS touchpad" whereas it is most likely it is not ALPS touchpad at all. Change wording a bit and reduce the message to debug so that it does not litter users logs and confuse them. Reported-by: Paul Menzel <[email protected]> Acked-by: Hans de Goede <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-08-25Input: fix used slots detection breakageDmitry Torokhov1-12/+18
Commit f8ec894945e7d205ce62be59e55e72c4304e4739 allowed external callers use slot dropping logic, unfortunately it also broke external users of input_mt_is_used() as we stopped incrementing frame count unless input device was set up to automatically drop unused slots. Fixes: f8ec894945e7d ("Input: MT - make slot cleanup callable outside mt_sync_frame()") Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=83081 Reported-by: Gabriele Mazzotta <[email protected]> Tested-by: Gabriele Mazzotta <[email protected]> Reviewed-by: Henrik Rydberg <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-08-19Input: sparc - i8042-sparcio.h: fix unused kbd_res warningVincent Stehlé1-1/+2
kbd_res is used only when CONFIG_PCI is defined; condition its declaration as well. This fixes the following compilation warning: drivers/input/serio/i8042-sparcio.h:20:25: warning: ‘kbd_res’ defined but not used [-Wunused-variable] Signed-off-by: Vincent Stehlé <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-08-19Input: atmel_mxt_ts - improve description of gpio-keymap propertyNick Dyer1-0/+11
The below patch improves the documentation for the gpio-property. Stephen Warren has a good example here: https://github.com/swarren/linux-tegra/commit/09789801 trackpad@4b { compatible = "atmel,maxtouch"; reg = <0x4b>; interrupt-parent = <&gpio>; interrupts = <TEGRA_GPIO(W, 3) IRQ_TYPE_LEVEL_LOW>; linux,gpio-keymap = <0 0 0 BTN_LEFT>; }; This maps BTN_LEFT to the 4th bit of the T19 message. Signed-off-by: Nick Dyer <[email protected]> Acked-by: Stephen Warren <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-08-14Merge branch 'next' into for-linusDmitry Torokhov7-201/+459
Prepare second round of input updates for 3.17.
2014-08-13Input: edt-ft5x06 - remove superfluous assignmentMaks Naumov1-1/+0
Somehow we ended up with a duplicate line in edt_ft5x06_register_write() Signed-off-by: Maks Naumov <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-08-13Input: xpad - add support for Xbox One controllersTed Mielczarek1-17/+157
Xbox One controllers require an initialization message to start sending data, so xpad_init_output becomes a required function. The Xbox One controller does not have LEDs like the Xbox 360 controller, so that functionality is not implemented. The format of messages controlling rumble is currently undocumented, so rumble support is not yet implemented. Note that Xbox One controller advertises three interfaces with the same interface class, subclass and protocol, so we have to also match against interface number. Signed-off-by: Ted Mielczarek <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-08-13Input: atmel_mxt_ts - fix a few issues reported by CoverityDmitry Torokhov1-6/+11
This should fix the following issues reported by Coverity: *** CID 1230625: Logically dead code (DEADCODE) /drivers/input/touchscreen/atmel_mxt_ts.c: 1692 in mxt_initialize() *** CID 1230627: Missing break in switch (MISSING_BREAK) /drivers/input/touchscreen/atmel_mxt_ts.c: 1436 in mxt_get_object_table() *** CID 1230629: Out-of-bounds write (OVERRUN) /drivers/input/touchscreen/atmel_mxt_ts.c: 1267 in mxt_update_cfg() *** CID 1230632: Unused pointer value (UNUSED_VALUE) /drivers/input/touchscreen/atmel_mxt_ts.c: 1211 in mxt_update_cfg() Acked-by: Nick Dyer <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-08-13Input: atmel_mxt_ts - split config update a bitDmitry Torokhov1-125/+145
Let's split config update code a bit so it is hopefully a bit easier to read. Also, the firmware update callback should be the entity releasing firmware blob, not lower layers. Signed-off-by: Dmitry Torokhov <[email protected]> Signed-off-by: Nick Dyer <[email protected]>
2014-08-13Input: atmel_mxt_ts - simplify mxt_initialize a bitDmitry Torokhov1-39/+42
I think having control flow with 2 goto/labels/flags is quite hard to read, this version is a bit more readable IMO. Signed-off-by: Dmitry Torokhov <[email protected]> Signed-off-by: Nick Dyer <[email protected]>
2014-08-12Input: joystick - use get_cycles on ARMv8Mark Brown1-1/+1
As with ARM the ARMv8 architecture provides a cycle counter which can be used to provide a high resolution time for the joystick driver and silence the build warning that results from not having a precise timer on ARMv8, making allmodconfig and allyesconfig quieter. Signed-off-by: Mark Brown <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-08-12Input: wacom - fix compiler warning if !CONFIG_PMGeert Uytterhoeven1-0/+2
If CONFIG_PM is not set: drivers/hid/wacom_sys.c:1436: warning: ‘wacom_reset_resume’ defined but not used Protect the unused functions by #ifdef CONFIG_PM to fix this. Signed-off-by: Geert Uytterhoeven <[email protected]> Reviewed-by: Benjamin Tissoires <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-08-08Input: cap1106 - allow changing key mapping from userspaceDmitry Torokhov1-1/+7
Wire up support for EVIOC{G|S}KEYCODE to allow users change key mappings from userspace. Reviewed-by: Daniel Mack <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-08-08Input: synaptics - use firmware data for Cr-48Henrik Rydberg1-2/+68
The profile sensor clickpad in a Cr-48 Chromebook does a reasonable job of tracking individual fingers. This tracking isn't perfect, but, experiments show that it works better than just passing "semi-mt" data to userspace, and making userspace try to deduce where the fingers are given a bounding box. This patch tries to report correct two-finger positions instead of the {(min_x, min_y), (max_x, max_y)} for profile sensor clickpads on Cr-48 chromebooks. Note that this device's firmware always reports the higher (smaller y) finger in the "sgm" packet, and the lower (larger y) finger in the "agm" packet. Thus, when a new finger arrives on the pad, the kernel driver uses input core's contact tracking facilities to match contacts with slots. Inspired by patch by Daniel Kurtz <[email protected]> and Chung-yih Wang <[email protected]> Signed-off-by: Henrik Rydberg <[email protected]> Reviewed-by: Benson Leung <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-08-07Input: synaptics - properly initialize slots for semi-MTDmitry Torokhov1-3/+3
Semi-MT devices are pointers too, so let's tell that to input_mt_init_slots(), as well as let it set up the devices as semi-MT, instead of us doing it manually. Reviewed-by: Daniel Kurtz <[email protected]> Reviewed-by: Benson Leung <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-08-07Input: MT - make slot cleanup callable outside mt_sync_frame()Henrik Rydberg2-11/+28
Some semi-mt drivers use the slots in a manual way, but may still want to call parts of the frame synchronization logic. This patch makes input_mt_drop_unused callable from those drivers. Signed-off-by: Henrik Rydberg <[email protected]> Reviewed-by: Benson Leung <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-08-07Input: atmel_mxt_ts - mXT224 DMA quirk was fixed in firmware v2.0.AANick Dyer1-3/+5
Signed-off-by: Nick Dyer <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-08-07Input: wacom - update the ABI doc according to latest changesBenjamin Tissoires1-43/+27
Now the devices show up under hid no matter the connection (for USB and Bluetooth, not serial nor i2c). The USB devices can now be easily found under /sys/bus/hid/devices/<bus>:<vid>:<pid>.<n> The Bluetooth devices could also be found under this path since their inclusion (April 2010), so this patch fixes the non-precise "hidraw*" path for them. The ABI has been unified while setting the LEDs and OLEDs. So Bluetooth devices lost their own LED selector but use the USB sysfs attribute. For OLEDs, Bluetooth devices handle only 1-bit images instead of 4 for USB. The documentation has been updated to match this. Signed-off-by: Benjamin Tissoires <[email protected]> Reviewed-by: Ping Cheng <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-08-06Merge branch 'next' into for-linusDmitry Torokhov9844-252603/+502307
Prepare first round of input updates for 3.17.
2014-08-06Merge branch 'wacom' into nextDmitry Torokhov11-2119/+1361
Merge large update to Wacom driver, converting it from USB to a HID driver and unifying wired and bluetooth support, from Benjamin Tissoires.
2014-08-06Input: wacom - only register once the MODULE_* macrosBenjamin Tissoires2-4/+5
Putting the various MODULE_* makes them appear several times in modinfo because wacom.h is used both in wacom_sys.c and wacom_wac.h. Having the macros near the module declaration makes them appear only once. Add also MODULE_VERSION(DRIVER_VERSION) to export the current version number. Signed-off-by: Benjamin Tissoires <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-08-06Input: HID - remove hid-wacom Bluetooth driverBenjamin Tissoires3-982/+2
Bluetooth Wacom tablets are now handled by the regular wacom.ko driver. Remove the now useless hid-wacom driver. Signed-off-by: Benjamin Tissoires <[email protected]> Reviewed-by: Ping Cheng <[email protected]> Tested-by: Przemo Firszt <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-08-06Input: wacom - add copyright note and bump version to 2.0Benjamin Tissoires1-1/+4
Reviewed-by: Ping Cheng <[email protected]> Tested-by: Przemo Firszt <[email protected]> Signed-off-by: Benjamin Tissoires <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-08-06Input: wacom - remove passing id for wacom_set_reportPrzemo Firszt1-18/+17
Every call of wacom_set_report was passing "id" as a separate parameter and buffer also passed the same information. We can use first u8 of the buffer instead of "id" Signed-off-by: Przemo Firszt <[email protected]> Signed-off-by: Benjamin Tissoires <[email protected]> Reviewed-by: Ping Cheng <[email protected]> Tested-by: Przemo Firszt <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-08-06Input: wacom - check for bluetooth protocol while setting OLEDsBenjamin Tissoires1-8/+21
Bluetooth Intuos 4 use 1-bit definition while the USB ones use a 4-bits definition. This changes the size of the raw image we receive, and thus the kernel will only accept 1-bit images for Bluetooth and 4-bits for USB. Signed-off-by: Benjamin Tissoires <[email protected]> Signed-off-by: Przemo Firszt <[email protected]> Reviewed-by: Ping Cheng <[email protected]> Tested-by: Przemo Firszt <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-08-06Input: wacom - handle Intuos 4 BT in wacom.koBenjamin Tissoires5-2/+92
A good point of this change is that now, the Intuos4 bluetooth can handle the different tools (artpen, airbrush, mice), and we get a common interface between USB and BT for accessing the LEDs/OLEDs. Signed-off-by: Benjamin Tissoires <[email protected]> Reviewed-by: Ping Cheng <[email protected]> Tested-by: Przemo Firszt <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-08-06Input: wacom - handle Graphire BT tablets in wacom.koBenjamin Tissoires5-5/+132
First, merge the Graphire BT tablet. Signed-off-by: Benjamin Tissoires <[email protected]> Reviewed-by: Ping Cheng <[email protected]> Tested-by: Przemo Firszt <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-08-06Input: wacom - prepare the driver to include BT devicesBenjamin Tissoires2-3/+69
Now that wacom is a hid driver, there is no point in having a separate driver for bluetooth devices. This patch prepares the common paths of Bluetooth devices in the common wacom driver. It also adds the sysfs file "speed" used by Bluetooth devices. Signed-off-by: Benjamin Tissoires <[email protected]> Reviewed-by: Ping Cheng <[email protected]> Tested-by: Przemo Firszt <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-08-06Input: hyperv-keyboard - register as a wakeup sourceDexuan Cui1-0/+13
With this patch, we can press a key to wake up the VM after the VM executes "echo freeze > /sys/power/state". Signed-off-by: Dexuan Cui <[email protected]> Signed-off-by: K. Y. Srinivasan <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-07-31Input: imx_keypad - remove ifdef round PM methodsFabio Estevam1-4/+2
We can annotate the suspend/resume functions with '__maybe_unused' and get rid of the ifdef, which makes the code smaller and simpler. Signed-off-by: Fabio Estevam <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-07-31Input: jornada720_ts - get rid of space indentation and use tabPramod Gurav1-13/+12
Signed-off-by: Pramod Gurav <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-07-31Input: jornada720_ts - switch to using managed resourcesPramod Gurav1-32/+13
This switches the driver to using managed resources to simplify error handling and to do away with remove function. Signed-off-by: Pramod Gurav <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-07-30Input: alps - Rushmore and v7 resolution supportHans de Goede2-0/+50
Add support for querying the physical size from the touchpad for Rushmore and v7 touchpads, and use that to tell userspace the device resolution. Signed-off-by: Hans de Goede <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-07-30Input: mcs5000_ts - remove ifdef around power management methodsFabio Estevam1-4/+2
We can annonate the suspend/resume functions with '__maybe_unused' and get rid of the ifdef, which makes the code smaller and simpler. Signed-off-by: Fabio Estevam <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>