diff options
author | Benjamin Tissoires <benjamin.tissoires@enac.fr> | 2012-03-06 04:53:47 -0500 |
---|---|---|
committer | Jiri Kosina <jkosina@suse.cz> | 2012-03-06 08:09:24 -0500 |
commit | fd1d152583e6ce02b47cb7315295ab58014aa26d (patch) | |
tree | d7f167abf33d1adf727c5a02317ebd9eb5e6049f | |
parent | 71078b0deba8420e00b0c5e39ea359dbcaa11114 (diff) |
HID: multitouch: add more eGalax devices
This is a list of devices that should be handled by hid-multitouch. They all
present the HID usage "Contact ID" and won't be handled by hid-input. Some of
them have _not_ been tested (though I have their report descriptors), but I've
been guaranted by eeti that they follow the same protocol. The tested ones are
also blacklisted in hid-core.c.
Signed-off-by: Benjamin Tissoires <benjamin.tissoires@enac.fr>
Acked-by: Henrik Rydberg <rydberg@euromail.se>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
-rw-r--r-- | drivers/hid/hid-core.c | 2 | ||||
-rw-r--r-- | drivers/hid/hid-ids.h | 6 | ||||
-rw-r--r-- | drivers/hid/hid-multitouch.c | 18 |
3 files changed, 26 insertions, 0 deletions
diff --git a/drivers/hid/hid-core.c b/drivers/hid/hid-core.c index bb710a6a079d..4f4143cc789b 100644 --- a/drivers/hid/hid-core.c +++ b/drivers/hid/hid-core.c | |||
@@ -1409,6 +1409,8 @@ static const struct hid_device_id hid_have_special_driver[] = { | |||
1409 | { HID_USB_DEVICE(USB_VENDOR_ID_DWAV, USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_480D) }, | 1409 | { HID_USB_DEVICE(USB_VENDOR_ID_DWAV, USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_480D) }, |
1410 | { HID_USB_DEVICE(USB_VENDOR_ID_DWAV, USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_480E) }, | 1410 | { HID_USB_DEVICE(USB_VENDOR_ID_DWAV, USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_480E) }, |
1411 | { HID_USB_DEVICE(USB_VENDOR_ID_DWAV, USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_720C) }, | 1411 | { HID_USB_DEVICE(USB_VENDOR_ID_DWAV, USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_720C) }, |
1412 | { HID_USB_DEVICE(USB_VENDOR_ID_DWAV, USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_7224) }, | ||
1413 | { HID_USB_DEVICE(USB_VENDOR_ID_DWAV, USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_725E) }, | ||
1412 | { HID_USB_DEVICE(USB_VENDOR_ID_DWAV, USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_726B) }, | 1414 | { HID_USB_DEVICE(USB_VENDOR_ID_DWAV, USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_726B) }, |
1413 | { HID_USB_DEVICE(USB_VENDOR_ID_DWAV, USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_72A1) }, | 1415 | { HID_USB_DEVICE(USB_VENDOR_ID_DWAV, USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_72A1) }, |
1414 | { HID_USB_DEVICE(USB_VENDOR_ID_DWAV, USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_7302) }, | 1416 | { HID_USB_DEVICE(USB_VENDOR_ID_DWAV, USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_7302) }, |
diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h index 10a9ca99e3f8..e5e32864d55d 100644 --- a/drivers/hid/hid-ids.h +++ b/drivers/hid/hid-ids.h | |||
@@ -238,11 +238,17 @@ | |||
238 | #define USB_DEVICE_ID_EGALAX_TOUCHCONTROLLER 0x0001 | 238 | #define USB_DEVICE_ID_EGALAX_TOUCHCONTROLLER 0x0001 |
239 | #define USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_480D 0x480d | 239 | #define USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_480D 0x480d |
240 | #define USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_480E 0x480e | 240 | #define USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_480E 0x480e |
241 | #define USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_7207 0x7207 | ||
241 | #define USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_720C 0x720c | 242 | #define USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_720C 0x720c |
243 | #define USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_7224 0x7224 | ||
244 | #define USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_725E 0x725e | ||
245 | #define USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_7262 0x7262 | ||
242 | #define USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_726B 0x726b | 246 | #define USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_726B 0x726b |
247 | #define USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_72AA 0x72aa | ||
243 | #define USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_72A1 0x72a1 | 248 | #define USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_72A1 0x72a1 |
244 | #define USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_72FA 0x72fa | 249 | #define USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_72FA 0x72fa |
245 | #define USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_7302 0x7302 | 250 | #define USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_7302 0x7302 |
251 | #define USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_7349 0x7349 | ||
246 | #define USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_A001 0xa001 | 252 | #define USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_A001 0xa001 |
247 | 253 | ||
248 | #define USB_VENDOR_ID_ELECOM 0x056e | 254 | #define USB_VENDOR_ID_ELECOM 0x056e |
diff --git a/drivers/hid/hid-multitouch.c b/drivers/hid/hid-multitouch.c index c7ee03503ec7..0eda37f03c30 100644 --- a/drivers/hid/hid-multitouch.c +++ b/drivers/hid/hid-multitouch.c | |||
@@ -788,12 +788,27 @@ static const struct hid_device_id mt_devices[] = { | |||
788 | { .driver_data = MT_CLS_EGALAX, | 788 | { .driver_data = MT_CLS_EGALAX, |
789 | HID_USB_DEVICE(USB_VENDOR_ID_DWAV, | 789 | HID_USB_DEVICE(USB_VENDOR_ID_DWAV, |
790 | USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_720C) }, | 790 | USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_720C) }, |
791 | { .driver_data = MT_CLS_EGALAX_SERIAL, | ||
792 | HID_USB_DEVICE(USB_VENDOR_ID_DWAV, | ||
793 | USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_7207) }, | ||
794 | { .driver_data = MT_CLS_EGALAX_SERIAL, | ||
795 | HID_USB_DEVICE(USB_VENDOR_ID_DWAV, | ||
796 | USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_725E) }, | ||
797 | { .driver_data = MT_CLS_EGALAX_SERIAL, | ||
798 | HID_USB_DEVICE(USB_VENDOR_ID_DWAV, | ||
799 | USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_7224) }, | ||
791 | { .driver_data = MT_CLS_EGALAX, | 800 | { .driver_data = MT_CLS_EGALAX, |
792 | HID_USB_DEVICE(USB_VENDOR_ID_DWAV, | 801 | HID_USB_DEVICE(USB_VENDOR_ID_DWAV, |
793 | USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_726B) }, | 802 | USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_726B) }, |
803 | { .driver_data = MT_CLS_EGALAX_SERIAL, | ||
804 | HID_USB_DEVICE(USB_VENDOR_ID_DWAV, | ||
805 | USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_7262) }, | ||
794 | { .driver_data = MT_CLS_EGALAX, | 806 | { .driver_data = MT_CLS_EGALAX, |
795 | HID_USB_DEVICE(USB_VENDOR_ID_DWAV, | 807 | HID_USB_DEVICE(USB_VENDOR_ID_DWAV, |
796 | USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_72A1) }, | 808 | USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_72A1) }, |
809 | { .driver_data = MT_CLS_EGALAX_SERIAL, | ||
810 | HID_USB_DEVICE(USB_VENDOR_ID_DWAV, | ||
811 | USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_72AA) }, | ||
797 | { .driver_data = MT_CLS_EGALAX, | 812 | { .driver_data = MT_CLS_EGALAX, |
798 | HID_USB_DEVICE(USB_VENDOR_ID_DWAV, | 813 | HID_USB_DEVICE(USB_VENDOR_ID_DWAV, |
799 | USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_72FA) }, | 814 | USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_72FA) }, |
@@ -802,6 +817,9 @@ static const struct hid_device_id mt_devices[] = { | |||
802 | USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_7302) }, | 817 | USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_7302) }, |
803 | { .driver_data = MT_CLS_EGALAX_SERIAL, | 818 | { .driver_data = MT_CLS_EGALAX_SERIAL, |
804 | HID_USB_DEVICE(USB_VENDOR_ID_DWAV, | 819 | HID_USB_DEVICE(USB_VENDOR_ID_DWAV, |
820 | USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_7349) }, | ||
821 | { .driver_data = MT_CLS_EGALAX_SERIAL, | ||
822 | HID_USB_DEVICE(USB_VENDOR_ID_DWAV, | ||
805 | USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_A001) }, | 823 | USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_A001) }, |
806 | 824 | ||
807 | /* Elo TouchSystems IntelliTouch Plus panel */ | 825 | /* Elo TouchSystems IntelliTouch Plus panel */ |