]> git.baikalelectronics.ru Git - kernel.git/commit
Input: usbtouchscreen - initialize eGalax devices
authorForest Bond <forest.bond@rapidrollout.com>
Wed, 5 Sep 2012 03:27:37 +0000 (20:27 -0700)
committerDmitry Torokhov <dmitry.torokhov@gmail.com>
Wed, 5 Sep 2012 05:17:56 +0000 (22:17 -0700)
commit0c893bfd8628a9e65ecd651a172f801868cf560c
treef8350bd3b8f43218374342544a1427d1e66a9bb7
parentccab6fa20efb195734bac6ce0ea0c2fa0ffd8d71
Input: usbtouchscreen - initialize eGalax devices

Certain eGalax devices expose an interface with class HID and protocol
None.  Some work with usbhid and some work with usbtouchscreen, but
there is no easy way to differentiate.  Sending an eGalax diagnostic
packet seems to kick them all into using the right protocol for
usbtouchscreen, so we can continue to bind them all there (as opposed to
handing some off to usbhid).

This fixes a regression for devices that were claimed by (and worked
with) usbhid prior to commit ffbd6dd306695ebee62ab48588b234cb1b761a8b
("Input: usbtouchscreen - fix eGalax HID ignoring"), which made
usbtouchscreen claim them instead.  With this patch they will still be
claimed by usbtouchscreen, but they will actually report events
usbtouchscreen can understand.  Note that these devices will be limited
to the usbtouchscreen feature set so e.g. dual touch features are not
supported.

I have the distinct pleasure of needing to support devices of both types
and have tested accordingly.

Signed-off-by: Forest Bond <forest.bond@rapidrollout.com>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
drivers/input/touchscreen/usbtouchscreen.c