linux-brain/drivers/input/mouse
jingle.wu 9e4815cf17 Input: elantech - fix protocol errors for some trackpoints in SMBus mode
commit e4c9062717feda88900b566463228d1c4910af6d upstream.

There are some version of Elan trackpads that send incorrect data when
in SMbus mode, unless they are switched to use 0x5f reports instead of
standard 0x5e. This patch implements querying device to retrieve chips
identifying data, and switching it, when needed to the alternative
report.

Signed-off-by: Jingle Wu <jingle.wu@emc.com.tw>
Link: https://lore.kernel.org/r/20201211071531.32413-1-jingle.wu@emc.com.tw
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Cc: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-03-07 12:20:41 +01:00
..
Kconfig treewide: Add SPDX license identifier - Makefile/Kconfig 2019-05-21 10:50:46 +02:00
Makefile
alps.c Input: alps - fix a mismatch between a condition check and its comment 2019-07-19 12:40:35 +03:00
alps.h Input: psmouse - drop all unneeded functions from mouse headers 2019-08-20 14:15:36 -07:00
amimouse.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
appletouch.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 61 2019-05-24 17:36:45 +02:00
atarimouse.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
bcm5974.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 61 2019-05-24 17:36:45 +02:00
byd.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
byd.h Input: psmouse - drop all unneeded functions from mouse headers 2019-08-20 14:15:36 -07:00
cyapa.c Input: cyapa - switch to using devm_device_add_group() 2019-07-24 12:59:01 +03:00
cyapa.h
cyapa_gen3.c Input: cyapa - mark expected switch fall-throughs 2018-10-15 11:24:10 -07:00
cyapa_gen5.c Input: mark expected switch fall-throughs 2018-08-08 11:23:27 -07:00
cyapa_gen6.c Input: cyapa_gen6 - fix out-of-bounds stack access 2020-12-30 11:51:32 +01:00
cypress_ps2.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
cypress_ps2.h Input: psmouse - drop all unneeded functions from mouse headers 2019-08-20 14:15:36 -07:00
elan_i2c.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
elan_i2c_core.c Input: elan_i2c - only increment wakeup count on touch 2020-07-29 10:18:38 +02:00
elan_i2c_i2c.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
elan_i2c_smbus.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
elantech.c Input: elantech - fix protocol errors for some trackpoints in SMBus mode 2021-03-07 12:20:41 +01:00
elantech.h Input: elantech - fix protocol errors for some trackpoints in SMBus mode 2021-03-07 12:20:41 +01:00
focaltech.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
focaltech.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
gpio_mouse.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
hgpk.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
hgpk.h Input: psmouse - drop all unneeded functions from mouse headers 2019-08-20 14:15:36 -07:00
inport.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
lifebook.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
lifebook.h Input: psmouse - drop all unneeded functions from mouse headers 2019-08-20 14:15:36 -07:00
logibm.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
logips2pp.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
logips2pp.h Input: psmouse - drop all unneeded functions from mouse headers 2019-08-20 14:15:36 -07:00
maplemouse.c treewide: Add SPDX license identifier for more missed files 2019-05-21 10:50:45 +02:00
navpoint.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
pc110pad.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
psmouse-base.c Input: psmouse - add a newline when printing 'proto' by sysfs 2020-08-26 10:40:55 +02:00
psmouse-smbus.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
psmouse.h Input: psmouse-smbus - allow to control psmouse_deactivate 2018-05-23 16:49:22 -07:00
pxa930_trkball.c Input: remove dev_err() usage after platform_get_irq() 2019-08-14 10:49:01 -07:00
rpcmouse.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
sentelic.c Input: sentelic - fix error return when fsp_reg_write fails 2020-08-21 13:05:36 +02:00
sentelic.h Input: psmouse - drop all unneeded functions from mouse headers 2019-08-20 14:15:36 -07:00
sermouse.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
synaptics.c Input: synaptics - enable InterTouch for ThinkPad X1E 1st gen 2020-07-29 10:18:37 +02:00
synaptics.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
synaptics_i2c.c Input: synaptics_i2c - remove redundant spinlock 2019-02-16 22:57:31 -08:00
synaptics_usb.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
touchkit_ps2.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 61 2019-05-24 17:36:45 +02:00
touchkit_ps2.h Input: psmouse - drop all unneeded functions from mouse headers 2019-08-20 14:15:36 -07:00
trackpoint.c Input: trackpoint - enable Synaptics trackpoints 2020-10-07 08:01:29 +02:00
trackpoint.h Input: trackpoint - add new trackpoint variant IDs 2020-09-23 12:40:45 +02:00
vmmouse.c input/vmmouse: Update the backdoor call with support for new instructions 2019-08-28 13:43:01 +02:00
vmmouse.h Input: psmouse - drop all unneeded functions from mouse headers 2019-08-20 14:15:36 -07:00
vsxxxaa.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00