aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBenjamin Tissoires <benjamin.tissoires@enac.fr>2012-03-06 04:53:47 -0500
committerJiri Kosina <jkosina@suse.cz>2012-03-06 08:09:24 -0500
commitfd1d152583e6ce02b47cb7315295ab58014aa26d (patch)
treed7f167abf33d1adf727c5a02317ebd9eb5e6049f
parent71078b0deba8420e00b0c5e39ea359dbcaa11114 (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.c2
-rw-r--r--drivers/hid/hid-ids.h6
-rw-r--r--drivers/hid/hid-multitouch.c18
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 */