aboutsummaryrefslogtreecommitdiff
path: root/kernel
diff options
context:
space:
mode:
authorDavid Herrmann <dh.herrmann@gmail.com>2013-07-15 19:10:12 +0200
committerMister Oyster <oysterized@gmail.com>2017-04-13 12:35:27 +0200
commit40888dd78bb19386f1cdb871581484043d304402 (patch)
treeda652236cab819044ad30bc79ddc761bf1ca7451 /kernel
parent55600fbf6fbcb6e8e2dfcc8b671c5a730628a780 (diff)
BACKPORT: HID: input: generic hidinput_input_event handler
The hidinput_input_event() callback converts input events written from userspace into HID reports and sends them to the device. We currently implement this in every HID transport driver, even though most of them do the same. This provides a generic hidinput_input_event() implementation which is mostly copied from usbhid. It uses a delayed worker to allow multiple LED events to be collected into a single output event. We use the custom ->request() transport driver callback to allow drivers to adjust the outgoing report and handle the request asynchronously. If no custom ->request() callback is available, we fall back to the generic raw output report handler (which is synchronous). Drivers can still provide custom hidinput_input_event() handlers (see logitech-dj) if the generic implementation doesn't fit their needs. Conflicts: drivers/hid/hid-input.c Signed-off-by: David Herrmann <dh.herrmann@gmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz> Signed-off-by: Michael Wright <michaelwr@google.com> Change-Id: Iccb0b1de6460f6854b3d55d4008cc1d744472a06
Diffstat (limited to 'kernel')
0 files changed, 0 insertions, 0 deletions