Jason Gerecke
e6bd712154
HID: wacom: Fix poor prox handling in 'wacom_pl_irq'
...
commit 282e4637bc1c0b338708bcebd09d31c69abec070 upstream.
Commit 025bcc1 performed cleanup work on the 'wacom_pl_irq' function, making
it follow the standards used in the rest of the codebase. The change
unintiontionally allowed the function to send input events from reports
that are not marked as being in prox. This can cause problems as the
report values for X, Y, etc. are not guaranteed to be correct. In
particular, occasionally the tablet will send a report with these values
set to zero. If such a report is received it can caus an unexpected jump
in the XY position.
This patch surrounds more of the processing code with a proximity check,
preventing these zeroed reports from overwriting the current state. To
be safe, only the tool type and ABS_MISC events should be reported when
the pen is marked as being out of prox.
Fixes: 025bcc1540 ("HID: wacom: Simplify 'wacom_pl_irq'")
Signed-off-by: Jason Gerecke <jason.gerecke@wacom.com>
Reviewed-by: Ping Cheng <pingc@wacom.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-02-09 08:08:29 +01:00
..
i2c-hid
HID: i2c-hid: set power sleep before shutdown
2016-06-21 13:07:15 +02:00
intel-ish-hid
HID: intel-ish-hid: request_irq failure
2016-11-05 15:57:38 +01:00
usbhid
HID: usbhid: Quirk a AMI virtual mouse and keyboard with ALWAYS_POLL
2017-02-09 08:08:29 +01:00
hid-a4tech.c
hid-alps.c
Merge branches 'for-4.8/upstream-fixes', 'for-4.9/alps', 'for-4.9/hid-input', 'for-4.9/intel-ish', 'for-4.9/kye-uclogic-waltop-fixes', 'for-4.9/logitech', 'for-4.9/sony', 'for-4.9/upstream' and 'for-4.9/wacom' into for-linus
2016-10-07 09:59:48 +02:00
hid-apple.c
HID: add usb device id for Apple Magic Keyboard
2016-07-11 17:41:31 +02:00
hid-appleir.c
HID: hid-input: allow input_configured callback return errors
2015-11-05 09:51:50 -08:00
hid-asus.c
HID: asus: add support for VivoBook E200HA
2016-04-04 09:59:21 +02:00
hid-aureal.c
HID: fix some indenting issues
2015-10-21 13:15:53 +02:00
hid-axff.c
hid-belkin.c
hid-betopff.c
HID: betop: add drivers/hid/hid-betopff.c
2014-12-22 15:00:25 +01:00
hid-cherry.c
HID: fix a couple of off-by-ones
2014-08-21 10:43:28 -05:00
hid-chicony.c
HID: chicony: Add support for Acer Aspire Switch 12
2015-07-29 14:12:26 +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-4.8/upstream-fixes', 'for-4.9/alps', 'for-4.9/hid-input', 'for-4.9/intel-ish', 'for-4.9/kye-uclogic-waltop-fixes', 'for-4.9/logitech', 'for-4.9/sony', 'for-4.9/upstream' and 'for-4.9/wacom' into for-linus
2016-10-07 09:59:48 +02:00
hid-corsair.c
HID: corsair: fix control-transfer error handling
2017-01-26 08:24:38 +01:00
hid-cp2112.c
HID: cp2112: fix gpio-callback error handling
2017-02-09 08:08:25 +01:00
hid-cypress.c
HID: hid-cypress: validate length of report
2017-01-15 13:42:56 +01:00
hid-debug.c
HID: debug: improve hid_debug_event()
2015-11-27 00:02:59 +01:00
hid-dr.c
Revert "HID: dragonrise: fix HID Descriptor for 0x0006 PID"
2016-10-10 10:52:01 +02:00
hid-elecom.c
HID: fix some indenting issues
2015-10-21 13:15:53 +02:00
hid-elo.c
HID: elo: kill not flush the work
2016-06-01 14:08:17 +02:00
hid-emsff.c
hid-ezkey.c
hid-gaff.c
hid-gembird.c
HID: gembird: add new driver to fix Gembird JPD-DualForce 2
2015-08-18 15:03:43 +02:00
hid-generic.c
hid-gfrm.c
HID: hid-gfrm: avoid warning for input_configured API change
2015-11-05 10:15:35 -08: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: Add Holtek USB ID 04d9:a0c2 ETEKCITY Scroll
2014-09-08 09:48:56 +02:00
hid-holtekff.c
hid-hyperv.c
HID: hyperv: match wait_for_completion_timeout return type
2015-01-26 14:25:41 +01:00
hid-icade.c
hid-ids.h
HID: usbhid: Quirk a AMI virtual mouse and keyboard with ALWAYS_POLL
2017-02-09 08:08:29 +01:00
hid-input.c
Merge branches 'for-4.8/upstream-fixes', 'for-4.9/alps', 'for-4.9/hid-input', 'for-4.9/intel-ish', 'for-4.9/kye-uclogic-waltop-fixes', 'for-4.9/logitech', 'for-4.9/sony', 'for-4.9/upstream' and 'for-4.9/wacom' into for-linus
2016-10-07 09:59:48 +02:00
hid-kensington.c
hid-keytouch.c
hid-kye.c
HID: kye: Fix MousePen i608X v2 report descriptor
2016-09-19 14:32:22 +02: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: Don't use stack variables for DMA buffers
2016-03-29 15:39:36 +02:00
hid-lg.c
HID: hid-lg: Fix immediate disconnection of Logitech Rumblepad 2
2017-02-09 08:08:29 +01:00
hid-lg.h
HID: hid-lg4ff: Introduce a module parameter to disable automatic switch of compatibility mode
2015-02-18 21:14:54 +01:00
hid-lg2ff.c
hid-lg3ff.c
hid-lg4ff.c
HID: hid-logitech: Improve Wingman Formula Force GP support
2016-09-26 15:39:56 +02:00
hid-lg4ff.h
HID: hid-logitech: Add combined pedal support Logitech wheels
2016-09-26 15:39:54 +02:00
hid-lgff.c
hid-logitech-dj.c
HID: logitech-dj: check report length
2014-12-17 08:50:12 +01:00
hid-logitech-hidpp.c
HID: logitech-hidpp: limit visibility of init/deinit functions
2016-01-28 14:28:39 +01:00
hid-magicmouse.c
HID: magicmouse: make transfer buffers DMA capable
2016-11-23 17:43:25 +01:00
hid-microsoft.c
Merge branches 'for-4.8/upstream-fixes', 'for-4.9/alps', 'for-4.9/hid-input', 'for-4.9/intel-ish', 'for-4.9/kye-uclogic-waltop-fixes', 'for-4.9/logitech', 'for-4.9/sony', 'for-4.9/upstream' and 'for-4.9/wacom' into for-linus
2016-10-07 09:59:48 +02:00
hid-monterey.c
HID: fix a couple of off-by-ones
2014-08-21 10:43:28 -05:00
hid-multitouch.c
HID: multitouch: enable palm rejection for Windows Precision Touchpad
2016-06-28 13:24:14 +02:00
hid-ntrig.c
HID: use to_hid_device()
2015-12-28 13:41:44 +01:00
hid-ortek.c
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: fix a couple of off-by-ones
2014-08-21 10:43:28 -05:00
hid-picolcd.h
hid-picolcd_backlight.c
HID: picoLCD: Deletion of unnecessary checks before three function calls
2015-06-29 14:51:12 +02:00
hid-picolcd_cir.c
HID: picoLCD: Deletion of unnecessary checks before three function calls
2015-06-29 14:51:12 +02:00
hid-picolcd_core.c
HID: picolcd: be more verbose when reporting report size error
2014-08-27 23:27:10 +02:00
hid-picolcd_debugfs.c
HID: picolcd: remove unnecessary NULL test before debugfs_remove
2014-06-30 09:54:22 +02:00
hid-picolcd_fb.c
drivers/hid/hid-picolcd_fb: avoid world-writable sysfs files.
2014-05-14 10:53:56 +09:30
hid-picolcd_lcd.c
HID: picoLCD: Deletion of unnecessary checks before three function calls
2015-06-29 14:51:12 +02:00
hid-picolcd_leds.c
HID: use to_hid_device()
2015-12-28 13:41:44 +01:00
hid-pl.c
hid-plantronics.c
HID: plantronics: Update to map volume up/down controls
2015-06-12 15:04:17 +02:00
hid-primax.c
hid-prodikeys.c
HID: use to_hid_device()
2015-12-28 13:41:44 +01:00
hid-rmi.c
HID: rmi: make transfer buffers DMA capable
2016-11-23 17:43:25 +01: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: use kobj_to_dev()
2015-12-28 13:41:51 +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: use kobj_to_dev()
2015-12-28 13:41:51 +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
HID: roccat: silence an uninitialized variable warning
2016-04-04 09:49:12 +02:00
hid-saitek.c
HID: Add a new Saitek mouse device ID (RAT 9)
2016-08-02 16:45:17 +02:00
hid-samsung.c
hid-sensor-custom.c
HID: sensor: fix attributes in HID sensor interface
2016-11-05 16:56:09 +01:00
hid-sensor-hub.c
HID: sensor-hub: Move the memset to sensor_hub_get_feature()
2017-01-12 11:39:06 +01:00
hid-sjoy.c
HID: sjoy: support Super Joy Box 4
2015-05-07 10:47:53 +02:00
hid-sony.c
Merge branches 'for-4.8/upstream-fixes', 'for-4.9/alps', 'for-4.9/hid-input', 'for-4.9/intel-ish', 'for-4.9/kye-uclogic-waltop-fixes', 'for-4.9/logitech', 'for-4.9/sony', 'for-4.9/upstream' and 'for-4.9/wacom' into for-linus
2016-10-07 09:59:48 +02:00
hid-speedlink.c
hid-steelseries.c
HID: use to_hid_device()
2015-12-28 13:41:44 +01:00
hid-sunplus.c
HID: fix a couple of off-by-ones
2014-08-21 10:43:28 -05:00
hid-tivo.c
HID: tivo: enable all buttons on the TiVo Slide Pro remote
2015-03-15 10:04:27 -04:00
hid-tmff.c
hid-topseed.c
hid-twinhan.c
hid-uclogic.c
HID: uclogic: Add support for UC-Logic TWHA60 v3
2016-09-19 14:32:24 +02: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: replace hid_output_raw_report with hid_hw_output_report for output requests
2014-02-17 14:57:17 +01:00
hid-wiimote-debug.c
hid-wiimote-modules.c
HID: wiimote: Fix wiimote mp scale linearization
2016-03-18 17:31:38 +01:00
hid-wiimote.h
HID: use to_hid_device()
2015-12-28 13:41:44 +01:00
hid-xinmo.c
hid-zpff.c
hid-zydacron.c
hidraw.c
Merge branch 'for-4.7/upstream' into for-linus
2016-05-17 12:41:22 +02:00
Kconfig
Merge branches 'for-4.8/upstream-fixes', 'for-4.9/alps', 'for-4.9/hid-input', 'for-4.9/intel-ish', 'for-4.9/kye-uclogic-waltop-fixes', 'for-4.9/logitech', 'for-4.9/sony', 'for-4.9/upstream' and 'for-4.9/wacom' into for-linus
2016-10-07 09:59:48 +02:00
Makefile
HID: intel_ish-hid: ISH Transport layer
2016-08-17 11:13:07 +02:00
uhid.c
miscdevice: Add helper macro for misc device boilerplate
2016-08-31 14:12:35 +02:00
wacom.h
HID: wacom: power_supply: provide the actual model_name
2016-08-05 13:39:23 +02:00
wacom_sys.c
HID: wacom: Augment 'oVid' and 'oPid' with heuristics for HID_GENERIC
2016-08-10 11:44:28 +02:00
wacom_wac.c
HID: wacom: Fix poor prox handling in 'wacom_pl_irq'
2017-02-09 08:08:29 +01:00
wacom_wac.h
Merge branches 'for-4.8/upstream-fixes', 'for-4.9/alps', 'for-4.9/hid-input', 'for-4.9/intel-ish', 'for-4.9/kye-uclogic-waltop-fixes', 'for-4.9/logitech', 'for-4.9/sony', 'for-4.9/upstream' and 'for-4.9/wacom' into for-linus
2016-10-07 09:59:48 +02:00