diff options
Diffstat (limited to 'hid-multitouch-add-support-for-elo-touchsystems.patch')
-rw-r--r-- | hid-multitouch-add-support-for-elo-touchsystems.patch | 80 |
1 files changed, 80 insertions, 0 deletions
diff --git a/hid-multitouch-add-support-for-elo-touchsystems.patch b/hid-multitouch-add-support-for-elo-touchsystems.patch new file mode 100644 index 000000000..320379920 --- /dev/null +++ b/hid-multitouch-add-support-for-elo-touchsystems.patch @@ -0,0 +1,80 @@ +From: Benjamin Tissoires <benjamin.tissoires@enac.fr> +Date: Thu, 19 May 2011 09:37:29 +0000 (+0200) +Subject: HID: hid-multitouch: add support for Elo TouchSystems 2515 IntelliTouch Plus +X-Git-Url: http://git.kernel.org/?p=linux%2Fkernel%2Fgit%2Fjikos%2Fhid.git;a=commitdiff_plain;h=c04abeeff9d76a703cac1e6d312853b0fc8136f5 + +HID: hid-multitouch: add support for Elo TouchSystems 2515 IntelliTouch Plus + +This patch adds support for Elo TouchSystems 2515 IntelliTouch Plus +that can be found in Lenovo A700 all-in-one. + +Signed-off-by: Benjamin Tissoires <benjamin.tissoires@enac.fr> +Tested-by: Bastien Nocera <hadess@hadess.net> +Signed-off-by: Jiri Kosina <jkosina@suse.cz> + +--- linux-2.6.39.x86_64/drivers/hid/Kconfig 2011-05-19 00:06:34.000000000 -0400 ++++ linux-2.6.39.x86_64/drivers/hid/Kconfig 2011-05-24 10:17:13.007752208 -0400 +@@ -321,6 +321,7 @@ + + Say Y here if you have one of the following devices: + - Cypress TrueTouch panels ++ - Elo TouchSystems IntelliTouch Plus panels + - Hanvon dual touch panels + - IrTouch Infrared USB panels + - Pixcir dual touch panels +--- linux-2.6.39.x86_64/drivers/hid/hid-core.c 2011-05-24 10:14:17.000000000 -0400 ++++ linux-2.6.39.x86_64/drivers/hid/hid-core.c 2011-05-24 10:17:47.418905357 -0400 +@@ -1367,6 +1367,7 @@ + { HID_USB_DEVICE(USB_VENDOR_ID_DWAV, USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH3) }, + { HID_USB_DEVICE(USB_VENDOR_ID_DWAV, USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH4) }, + { HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_ELECOM, USB_DEVICE_ID_ELECOM_BM084) }, ++ { HID_USB_DEVICE(USB_VENDOR_ID_ELO, USB_DEVICE_ID_ELO_TS2515) }, + { HID_USB_DEVICE(USB_VENDOR_ID_EMS, USB_DEVICE_ID_EMS_TRIO_LINKER_PLUS_II) }, + { HID_USB_DEVICE(USB_VENDOR_ID_EZKEY, USB_DEVICE_ID_BTC_8193) }, + { HID_USB_DEVICE(USB_VENDOR_ID_GAMERON, USB_DEVICE_ID_GAMERON_DUAL_PSX_ADAPTOR) }, +--- linux-2.6.39.x86_64/drivers/hid/hid-ids.h 2011-05-24 10:14:17.000000000 -0400 ++++ linux-2.6.39.x86_64/drivers/hid/hid-ids.h 2011-05-24 10:19:25.946345418 -0400 +@@ -223,6 +223,7 @@ + #define USB_VENDOR_ID_DREAM_CHEEKY 0x1d34 + + #define USB_VENDOR_ID_ELO 0x04E7 ++#define USB_DEVICE_ID_ELO_TS2515 0x0022 + #define USB_DEVICE_ID_ELO_TS2700 0x0020 + + #define USB_VENDOR_ID_EMS 0x2006 +--- linux-2.6.39.x86_64/drivers/hid/hid-multitouch.c 2011-05-19 00:06:34.000000000 -0400 ++++ linux-2.6.39.x86_64/drivers/hid/hid-multitouch.c 2011-05-24 10:22:32.505183658 -0400 +@@ -78,6 +78,7 @@ + #define MT_CLS_DUAL_INRANGE_CONTACTNUMBER 3 + #define MT_CLS_CYPRESS 4 + #define MT_CLS_EGALAX 5 ++#define MT_CLS_DUAL_NSMU_CONTACTID 6 + + /* + * these device-dependent functions determine what slot corresponds +@@ -136,6 +137,13 @@ + .sn_move = 4096, + .sn_pressure = 32, + }, ++ ++ { .name = MT_CLS_DUAL_NSMU_CONTACTID, ++ .quirks = MT_QUIRK_NOT_SEEN_MEANS_UP | ++ MT_QUIRK_SLOT_IS_CONTACTID, ++ .maxcontacts = 2 ++ }, ++ + { } + }; + +@@ -493,6 +501,11 @@ + HID_USB_DEVICE(USB_VENDOR_ID_CYPRESS, + USB_DEVICE_ID_CYPRESS_TRUETOUCH) }, + ++ /* Elo TouchSystems IntelliTouch Plus panel */ ++ { .driver_data = MT_CLS_DUAL_NSMU_CONTACTID, ++ HID_USB_DEVICE(USB_VENDOR_ID_ELO, ++ USB_DEVICE_ID_ELO_TS2515) }, ++ + /* GeneralTouch panel */ + { .driver_data = MT_CLS_DUAL_INRANGE_CONTACTNUMBER, + HID_USB_DEVICE(USB_VENDOR_ID_GENERAL_TOUCH, |