linux/drivers/hid
Benjamin Tissoires 81bcbad53b HID: multitouch: handle faulty Elo touch device
Since kernel v5.0, one single win8 touchscreen device failed.
And it turns out this is because it reports 2 InRange usage per touch.

It's a first, and I *really* wonder how this was allowed by Microsoft in
the first place. But IIRC, Breno told me this happened *after* a firmware
upgrade...

Anyway, better be safe for those crappy devices, and make sure we have
a full slot before jumping to the next.
This won't prevent all crappy devices to fail here, but at least we will
have a safeguard as long as the contact ID and the X and Y coordinates
are placed in the report after the grabage.

Fixes: 01eaac7e57 ("HID: multitouch: remove one copy of values")
CC: stable@vger.kernel.org # v5.0+
Reported-and-tested-by: Breno Leitao <leitao@debian.org>
Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
2019-05-22 12:37:37 +02:00
..
i2c-hid HID: i2c-hid: add iBall Aer3 to descriptor override 2019-05-09 21:27:27 +02:00
intel-ish-hid Merge branches 'for-5.1/upstream-fixes', 'for-5.2/core', 'for-5.2/ish', 'for-5.2/logitech', 'for-5.2/macally', 'for-5.2/picolcd', 'for-5.2/sensor' and 'for-5.2/u2fzero' into for-linus 2019-05-06 15:45:18 +02:00
usbhid HID: hiddev: fix potential Spectre v1 2018-10-26 17:06:24 +02:00
hid-a4tech.c
hid-accutouch.c HID: Accutouch: Add driver for ELO Accutouch 2216 USB Touchscreens 2017-03-21 15:03:55 +01:00
hid-alps.c HID: alps: allow incoming reports when only the trackstick is opened 2018-10-26 17:27:13 +02:00
hid-apple.c HID: add support for Apple Magic Keyboards 2018-08-28 13:52:50 +02:00
hid-appleir.c treewide: setup_timer() -> timer_setup() 2017-11-21 15:57:07 -08:00
hid-asus.c HID: hid-asus: Add BT keyboard dock battery monitoring support 2019-02-14 00:01:30 +01:00
hid-aureal.c
hid-axff.c
hid-belkin.c
hid-betopff.c
hid-bigbenff.c HID: hid-bigbenff: driver for BigBen Interactive PS3OFMINIPAD gamepad 2018-09-24 11:49:32 +02:00
hid-cherry.c
hid-chicony.c HID: move Asus keyboard support from hid-chicony to hid-asus 2017-06-08 13:47:52 +02:00
hid-cmedia.c HID: Support for CMedia CM6533 HID audio jack controls 2016-03-02 10:31:36 +01:00
hid-core.c Merge branches 'for-5.1/upstream-fixes', 'for-5.2/core', 'for-5.2/ish', 'for-5.2/logitech', 'for-5.2/macally', 'for-5.2/picolcd', 'for-5.2/sensor' and 'for-5.2/u2fzero' into for-linus 2019-05-06 15:45:18 +02:00
hid-corsair.c HID: corsair: Add K70 Vengeance and K70 RAPIDFIRE to 2018-02-16 13:38:16 +01:00
hid-cougar.c HID: cougar: Add support for Cougar 700K Gaming Keyboard 2018-11-21 14:41:43 +01:00
hid-cp2112.c gpio: Pass a flag to gpiochip_request_own_desc() 2018-12-14 14:24:33 +01:00
hid-cypress.c HID: hid-cypress: validate length of report 2017-01-06 16:06:43 +01:00
hid-debug.c HID: debug: fix race condition with between rdesc_show() and device removal 2019-03-19 15:41:08 +01:00
hid-dr.c Revert "HID: dragonrise: fix HID Descriptor for 0x0006 PID" 2016-10-10 10:52:01 +02:00
hid-elan.c HID: elan: Make array buf static, shrinks object size 2019-01-28 21:49:12 +01:00
hid-elecom.c HID: elecom: add support for EX-G M-XT4DRBK trackball 2018-03-06 15:15:47 +01:00
hid-elo.c HID: elo: clear BTN_LEFT mapping 2017-11-24 14:40:23 +01:00
hid-emsff.c
hid-ezkey.c
hid-gaff.c
hid-gembird.c
hid-generic.c HID: generic: create one input report per application type 2018-04-26 14:17:31 +02:00
hid-gfrm.c HID: generic: create one input report per application type 2018-04-26 14:17:31 +02:00
hid-google-hammer.c HID: google: drop superfluous const before SIMPLE_DEV_PM_OPS() 2018-10-09 10:43:39 +02:00
hid-gt683r.c HID: use to_hid_device() 2015-12-28 13:41:44 +01:00
hid-gyration.c
hid-holtek-kbd.c
hid-holtek-mouse.c
hid-holtekff.c HID: holtekff: move MODULE_* parameters out of #ifdef block 2017-12-01 09:31:36 +01:00
hid-hyperv.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input 2018-12-04 08:47:04 -08:00
hid-icade.c
hid-ids.h HID: rmi: Use SET_REPORT request on control endpoint for Acer Switch 3 and 5 2019-05-09 21:36:22 +02:00
hid-input.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/hid/hid 2019-05-07 08:52:04 -07:00
hid-ite.c HID: ite: Add USB id match for another ITE based keyboard rfkill key quirk 2018-11-30 14:12:07 +01:00
hid-jabra.c HID: Add special driver for Jabra devices 2017-11-21 12:54:58 +01:00
hid-kensington.c
hid-keytouch.c
hid-kye.c HID: kye: Add support for EasyPen M406XE 2019-02-21 12:00:53 +01:00
hid-lcpower.c
hid-led.c HID: hid-led: fix issue with transfer buffer not being dma capable 2016-10-10 10:47:03 +02:00
hid-lenovo.c HID: lenovo: Add checks to fix of_led_classdev_register 2019-01-03 11:30:08 +01:00
hid-lg2ff.c
hid-lg3ff.c
hid-lg4ff.c HID: fix Logitech WingMan Formula GP joined axes 2019-02-14 00:21:29 +01:00
hid-lg4ff.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
hid-lg.c HID: logitech-dj: add support for 27 MHz receivers 2019-04-23 18:01:31 +02:00
hid-lg.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
hid-lgff.c
hid-logitech-dj.c HID: logitech-dj: add support for the Logitech MX5500's Bluetooth Mini-Receiver 2019-05-09 21:31:22 +02:00
hid-logitech-hidpp.c HID: logitech-hidpp: add support for the MX5500 keyboard 2019-05-09 21:31:22 +02:00
hid-macally.c HID: macally: Add support for Macally ikey keyboard 2019-04-03 17:14:13 +02:00
hid-magicmouse.c HID: magicmouse: add support for Apple Magic Trackpad 2 2018-10-03 10:57:58 +02:00
hid-maltron.c Support for Maltron L90 keyboard media keys 2019-01-14 20:11:01 +01:00
hid-mf.c HID: hid-mf: add force feedback support for Mayflash DolphinBar and GameCube 2017-01-11 22:12:44 +01:00
hid-microsoft.c HID: microsoft: Add rumble support for Xbox One S controller 2018-09-05 10:19:43 +02:00
hid-monterey.c
hid-multitouch.c HID: multitouch: handle faulty Elo touch device 2019-05-22 12:37:37 +02:00
hid-nti.c HID: Add quirk driver for NTI USB-SUN adapter 2017-03-06 13:16:33 +01:00
hid-ntrig.c HID: hid-ntrig: add error handling for sysfs_create_group 2018-06-25 15:16:11 +02:00
hid-ortek.c HID: ortek: add one more buggy device 2017-07-24 17:38:21 +02:00
hid-penmount.c HID: penmount: report only one button for PenMount 6000 USB touchscreen controller 2016-03-10 17:17:26 +01:00
hid-petalynx.c
hid-picolcd_backlight.c
hid-picolcd_cir.c media: rc: Remove init_ir_raw_event and DEFINE_IR_RAW_EVENT macros 2018-10-04 14:22:27 -04:00
hid-picolcd_core.c HID: picolcd: Convert to use sysfs_streq() 2019-03-27 14:14:29 +01:00
hid-picolcd_debugfs.c HID: picoLCD: Spelling s/REPORT_WRTIE_MEMORY/REPORT_WRITE_MEMORY/ 2017-03-24 15:45:04 +01:00
hid-picolcd_fb.c treewide: kmalloc() -> kmalloc_array() 2018-06-12 16:19:22 -07:00
hid-picolcd_lcd.c
hid-picolcd_leds.c HID: use to_hid_device() 2015-12-28 13:41:44 +01:00
hid-picolcd.h
hid-pl.c
hid-plantronics.c HID: hid-plantronics: Re-resend Update to map button for PTT products 2018-05-16 11:06:40 +02:00
hid-primax.c
hid-prodikeys.c treewide: setup_timer() -> timer_setup() 2017-11-21 15:57:07 -08:00
hid-quirks.c HID: logitech-dj: add support for 27 MHz receivers 2019-04-23 18:01:31 +02:00
hid-redragon.c HID: redragon: fix num lock and caps lock LEDs 2018-06-25 15:23:40 +02:00
hid-retrode.c HID: Add driver for Retrode2 joypad adapter 2017-06-22 14:44:11 +02:00
hid-rmi.c HID: rmi: Use SET_REPORT request on control endpoint for Acer Switch 3 and 5 2019-05-09 21:36:22 +02:00
hid-roccat-arvo.c HID: use kobj_to_dev() 2015-12-28 13:41:51 +01:00
hid-roccat-arvo.h
hid-roccat-common.c HID: use kobj_to_dev() 2015-12-28 13:41:51 +01:00
hid-roccat-common.h
hid-roccat-isku.c HID: use kobj_to_dev() 2015-12-28 13:41:51 +01:00
hid-roccat-isku.h
hid-roccat-kone.c HID: roccat: Mark expected switch fall-through 2019-02-20 09:39:15 +01:00
hid-roccat-kone.h
hid-roccat-koneplus.c HID: use kobj_to_dev() 2015-12-28 13:41:51 +01:00
hid-roccat-koneplus.h
hid-roccat-konepure.c
hid-roccat-kovaplus.c HID: roccat: prevent an out of bounds read in kovaplus_profile_activated() 2018-01-23 15:46:58 +01:00
hid-roccat-kovaplus.h
hid-roccat-lua.c HID: use kobj_to_dev() 2015-12-28 13:41:51 +01:00
hid-roccat-lua.h
hid-roccat-pyra.c HID: use kobj_to_dev() 2015-12-28 13:41:51 +01:00
hid-roccat-pyra.h
hid-roccat-ryos.c
hid-roccat-savu.c
hid-roccat-savu.h
hid-roccat.c vfs: do bulk POLL* -> EPOLL* replacement 2018-02-11 14:34:03 -08:00
hid-saitek.c HID: hid-saitek: Add device ID for RAT 7 Contagion 2018-08-30 10:58:44 +02:00
hid-samsung.c
hid-sensor-custom.c HID: hid-sensor-custom: simplify getting .driver_data 2019-03-27 14:06:19 +01:00
hid-sensor-hub.c iio/hid-sensors: Fix IIO_CHAN_INFO_RAW returning wrong values for signed numbers 2018-11-16 11:42:12 +00:00
hid-sjoy.c
hid-sony.c HID: sony: Fix SHANWAN PS3 GamePad rumble and led settings support 2019-01-09 14:56:30 +01:00
hid-speedlink.c
hid-steam.c HID: steam: fix deadlock with input devices. 2019-03-18 14:44:20 +01:00
hid-steelseries.c HID: use to_hid_device() 2015-12-28 13:41:44 +01:00
hid-sunplus.c
hid-tivo.c
hid-tmff.c HID: Add ID 044f:b605 ThrustMaster, Inc. force feedback Racing Wheel 2017-11-07 10:04:46 +01:00
hid-topseed.c HID: Add support for Toshiba WT10A tablet bluetooth keyboard 2019-02-07 16:44:46 +01:00
hid-twinhan.c
hid-u2fzero.c HID: u2fzero: fail probe if not using USB transport 2019-04-17 16:39:43 +02:00
hid-uclogic-core.c HID: uclogic: Add support for Ugee G5 2019-02-21 12:00:54 +01:00
hid-uclogic-params.c HID: uclogic: remove redudant duplicated null check on ver_ptr 2019-03-11 14:43:14 +01:00
hid-uclogic-params.h HID: uclogic: Support Gray-coded rotary encoders 2019-02-21 12:00:54 +01:00
hid-uclogic-rdesc.c HID: uclogic: Add support for Ugee G5 2019-02-21 12:00:54 +01:00
hid-uclogic-rdesc.h HID: uclogic: Add support for Ugee G5 2019-02-21 12:00:54 +01:00
hid-udraw-ps3.c HID: udraw-ps3: accel_limits is local to the driver 2016-11-15 14:23:17 +01:00
hid-viewsonic.c HID: viewsonic: Support PD1011 signature pad 2019-02-21 12:00:53 +01:00
hid-waltop.c HID: Remove broken links to tablet descriptions 2016-09-19 14:32:21 +02:00
hid-wiimote-core.c HID: wiimote: add support for Guitar-Hero devices 2018-06-25 15:26:06 +02:00
hid-wiimote-debug.c
hid-wiimote-modules.c HID: wiimote: add support for Guitar-Hero devices 2018-06-25 15:26:06 +02:00
hid-wiimote.h HID: wiimote: add support for Guitar-Hero devices 2018-06-25 15:26:06 +02:00
hid-xinmo.c HID: xinmo: fix for out of range for THT 2P arcade controller. 2017-03-24 15:43:03 +01:00
hid-zpff.c
hid-zydacron.c
hidraw.c HID: hidraw: enforce minors_lock locking via lockdep 2018-11-12 12:44:03 +01:00
Kconfig Merge branches 'for-5.1/upstream-fixes', 'for-5.2/core', 'for-5.2/ish', 'for-5.2/logitech', 'for-5.2/macally', 'for-5.2/picolcd', 'for-5.2/sensor' and 'for-5.2/u2fzero' into for-linus 2019-05-06 15:45:18 +02:00
Makefile Merge branches 'for-5.1/upstream-fixes', 'for-5.2/core', 'for-5.2/ish', 'for-5.2/logitech', 'for-5.2/macally', 'for-5.2/picolcd', 'for-5.2/sensor' and 'for-5.2/u2fzero' into for-linus 2019-05-06 15:45:18 +02:00
uhid.c Revert "HID: uhid: use strlcpy() instead of strncpy()" 2018-11-19 14:32:27 +01:00
wacom_sys.c HID: wacom: Move HID fix for AES serial number into wacom_hid_usage_quirk 2019-01-29 11:14:57 +01:00
wacom_wac.c HID: wacom: Sync INTUOSP2_BT touch state after each frame if necessary 2019-05-17 18:21:56 +02:00
wacom_wac.h HID: wacom: generic: add the "Report Valid" usage 2018-03-07 15:21:44 +01:00
wacom.h HID: wacom: Add ability to provide explicit battery status info 2017-05-05 21:46:10 +02:00