Commit ac173837 authored by Ping Cheng's avatar Ping Cheng Committed by Dmitry Torokhov

Input: wacom - add two new devices (0xed and 0xef)

0xed supports pen and one finger touch; 0xef is pen only.
Signed-off-by: default avatarPing Cheng <pingc@wacom.com>
Acked-by: default avatarChris Bagwell <chris@cnpbagwell.com>
Reviewed-by: default avatarJason Gerecke <killertofu@gmail.com>
Signed-off-by: default avatarDmitry Torokhov <dtor@mail.ru>
parent ea2e6024
...@@ -888,7 +888,7 @@ static int wacom_tpc_single_touch(struct wacom_wac *wacom, size_t len) ...@@ -888,7 +888,7 @@ static int wacom_tpc_single_touch(struct wacom_wac *wacom, size_t len)
prox = data[0] & 0x01; prox = data[0] & 0x01;
x = get_unaligned_le16(&data[1]); x = get_unaligned_le16(&data[1]);
y = get_unaligned_le16(&data[3]); y = get_unaligned_le16(&data[3]);
} else { /* with capacity */ } else {
prox = data[1] & 0x01; prox = data[1] & 0x01;
x = le16_to_cpup((__le16 *)&data[2]); x = le16_to_cpup((__le16 *)&data[2]);
y = le16_to_cpup((__le16 *)&data[4]); y = le16_to_cpup((__le16 *)&data[4]);
...@@ -961,6 +961,7 @@ static int wacom_tpc_irq(struct wacom_wac *wacom, size_t len) ...@@ -961,6 +961,7 @@ static int wacom_tpc_irq(struct wacom_wac *wacom, size_t len)
case WACOM_REPORT_TPC1FG: case WACOM_REPORT_TPC1FG:
case WACOM_REPORT_TPCHID: case WACOM_REPORT_TPCHID:
case WACOM_REPORT_TPCST: case WACOM_REPORT_TPCST:
case WACOM_REPORT_TPC1FGE:
return wacom_tpc_single_touch(wacom, len); return wacom_tpc_single_touch(wacom, len);
case WACOM_REPORT_TPCMT: case WACOM_REPORT_TPCMT:
...@@ -1244,6 +1245,7 @@ void wacom_wac_irq(struct wacom_wac *wacom_wac, size_t len) ...@@ -1244,6 +1245,7 @@ void wacom_wac_irq(struct wacom_wac *wacom_wac, size_t len)
break; break;
case TABLETPC: case TABLETPC:
case TABLETPCE:
case TABLETPC2FG: case TABLETPC2FG:
case MTSCREEN: case MTSCREEN:
sync = wacom_tpc_irq(wacom_wac, len); sync = wacom_tpc_irq(wacom_wac, len);
...@@ -1569,6 +1571,7 @@ int wacom_setup_input_capabilities(struct input_dev *input_dev, ...@@ -1569,6 +1571,7 @@ int wacom_setup_input_capabilities(struct input_dev *input_dev,
/* fall through */ /* fall through */
case TABLETPC: case TABLETPC:
case TABLETPCE:
__clear_bit(ABS_MISC, input_dev->absbit); __clear_bit(ABS_MISC, input_dev->absbit);
__set_bit(INPUT_PROP_DIRECT, input_dev->propbit); __set_bit(INPUT_PROP_DIRECT, input_dev->propbit);
...@@ -1886,6 +1889,12 @@ static const struct wacom_features wacom_features_0xE6 = ...@@ -1886,6 +1889,12 @@ static const struct wacom_features wacom_features_0xE6 =
static const struct wacom_features wacom_features_0xEC = static const struct wacom_features wacom_features_0xEC =
{ "Wacom ISDv4 EC", WACOM_PKGLEN_GRAPHIRE, 25710, 14500, 255, { "Wacom ISDv4 EC", WACOM_PKGLEN_GRAPHIRE, 25710, 14500, 255,
0, TABLETPC, WACOM_INTUOS_RES, WACOM_INTUOS_RES }; 0, TABLETPC, WACOM_INTUOS_RES, WACOM_INTUOS_RES };
static const struct wacom_features wacom_features_0xED =
{ "Wacom ISDv4 ED", WACOM_PKGLEN_GRAPHIRE, 26202, 16325, 255,
0, TABLETPCE, WACOM_INTUOS_RES, WACOM_INTUOS_RES };
static const struct wacom_features wacom_features_0xEF =
{ "Wacom ISDv4 EF", WACOM_PKGLEN_GRAPHIRE, 26202, 16325, 255,
0, TABLETPC, WACOM_INTUOS_RES, WACOM_INTUOS_RES };
static const struct wacom_features wacom_features_0x47 = static const struct wacom_features wacom_features_0x47 =
{ "Wacom Intuos2 6x8", WACOM_PKGLEN_INTUOS, 20320, 16240, 1023, { "Wacom Intuos2 6x8", WACOM_PKGLEN_INTUOS, 20320, 16240, 1023,
31, INTUOS, WACOM_INTUOS_RES, WACOM_INTUOS_RES }; 31, INTUOS, WACOM_INTUOS_RES, WACOM_INTUOS_RES };
...@@ -2060,6 +2069,8 @@ const struct usb_device_id wacom_ids[] = { ...@@ -2060,6 +2069,8 @@ const struct usb_device_id wacom_ids[] = {
{ USB_DEVICE_WACOM(0xE5) }, { USB_DEVICE_WACOM(0xE5) },
{ USB_DEVICE_WACOM(0xE6) }, { USB_DEVICE_WACOM(0xE6) },
{ USB_DEVICE_WACOM(0xEC) }, { USB_DEVICE_WACOM(0xEC) },
{ USB_DEVICE_WACOM(0xED) },
{ USB_DEVICE_WACOM(0xEF) },
{ USB_DEVICE_WACOM(0x47) }, { USB_DEVICE_WACOM(0x47) },
{ USB_DEVICE_WACOM(0xF4) }, { USB_DEVICE_WACOM(0xF4) },
{ USB_DEVICE_LENOVO(0x6004) }, { USB_DEVICE_LENOVO(0x6004) },
......
...@@ -48,6 +48,7 @@ ...@@ -48,6 +48,7 @@
#define WACOM_REPORT_TPCMT 13 #define WACOM_REPORT_TPCMT 13
#define WACOM_REPORT_TPCHID 15 #define WACOM_REPORT_TPCHID 15
#define WACOM_REPORT_TPCST 16 #define WACOM_REPORT_TPCST 16
#define WACOM_REPORT_TPC1FGE 18
/* device quirks */ /* device quirks */
#define WACOM_QUIRK_MULTI_INPUT 0x0001 #define WACOM_QUIRK_MULTI_INPUT 0x0001
...@@ -80,6 +81,7 @@ enum { ...@@ -80,6 +81,7 @@ enum {
WIRELESS, WIRELESS,
BAMBOO_PT, BAMBOO_PT,
TABLETPC, /* add new TPC below */ TABLETPC, /* add new TPC below */
TABLETPCE,
TABLETPC2FG, TABLETPC2FG,
MTSCREEN, MTSCREEN,
MAX_TYPE MAX_TYPE
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment