android_kernel_xiaomi_sm8350/drivers/usb/input
Adam Kropelin bc5d04822b Input: HID - only report events coming from interrupts to hiddev
Currently hid-core follows the same code path for input reports
regardless of whether they are a result of interrupt transfers or
control transfers. That leads to interrupt events erroneously being
reported to hiddev for regular control transfers.

Prior to 2.6.12 the problem was mitigated by the fact that
reporting to hiddev is supressed if the field value has not changed,
which is often the case. Said filtering was removed in 2.6.12-rc1 which
means any input reports fetched via control transfers result in hiddev
interrupt events. This behavior can quickly lead to a feedback loop
where a userspace app, in response to interrupt events, issues control
transfers which in turn create more interrupt events.

This patch prevents input reports that arrive via control transfers from
being reported to hiddev as interrupt events.

Signed-off-by: Adam Kropelin <akropel1@rochester.rr.com>
Signed-off-by: Vojtech Pavlik <vojtech@suse.cz>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2005-07-11 01:09:32 -05:00
..
acecad.c Input: introduce usb_to_input_id() to uniformly produce 2005-06-30 00:49:08 -05:00
aiptek.c Input: introduce usb_to_input_id() to uniformly produce 2005-06-30 00:49:08 -05:00
ati_remote.c Input: introduce usb_to_input_id() to uniformly produce 2005-06-30 00:49:08 -05:00
fixp-arith.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
hid-core.c Input: HID - only report events coming from interrupts to hiddev 2005-07-11 01:09:32 -05:00
hid-debug.h Input: whitespace fixes in drivers/usb/input 2005-05-29 02:29:01 -05:00
hid-ff.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
hid-input.c Input: introduce usb_to_input_id() to uniformly produce 2005-06-30 00:49:08 -05:00
hid-lgff.c Input: whitespace fixes in drivers/usb/input 2005-05-29 02:29:01 -05:00
hid-tmff.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
hid.h Input: whitespace fixes in drivers/usb/input 2005-05-29 02:29:01 -05:00
hiddev.c Input: whitespace fixes in drivers/usb/input 2005-05-29 02:29:01 -05:00
itmtouch.c Input: introduce usb_to_input_id() to uniformly produce 2005-06-30 00:49:08 -05:00
kbtab.c Input: introduce usb_to_input_id() to uniformly produce 2005-06-30 00:49:08 -05:00
Kconfig Input: add driver for Acecad Flair USB tablets 2005-06-06 02:22:37 -05:00
Makefile Input: add driver for Acecad Flair USB tablets 2005-06-06 02:22:37 -05:00
mtouchusb.c Input: introduce usb_to_input_id() to uniformly produce 2005-06-30 00:49:08 -05:00
pid.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
pid.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
powermate.c Input: introduce usb_to_input_id() to uniformly produce 2005-06-30 00:49:08 -05:00
touchkitusb.c Input: introduce usb_to_input_id() to uniformly produce 2005-06-30 00:49:08 -05:00
usbkbd.c Input: introduce usb_to_input_id() to uniformly produce 2005-06-30 00:49:08 -05:00
usbmouse.c Input: introduce usb_to_input_id() to uniformly produce 2005-06-30 00:49:08 -05:00
wacom.c Input: introduce usb_to_input_id() to uniformly produce 2005-06-30 00:49:08 -05:00
xpad.c Input: introduce usb_to_input_id() to uniformly produce 2005-06-30 00:49:08 -05:00