Signed-off-by: Aaron Armstrong Skomra <[email protected]>
Reviewed-by: Ping Cheng <[email protected]>
---
2.6.32/wacom_wac.c | 12 +++++++++++-
2.6.32/wacom_wac.h | 1 +
2.6.38/wacom_wac.c | 12 +++++++++++-
2.6.38/wacom_wac.h | 1 +
3.7/wacom_wac.c | 12 +++++++++++-
3.7/wacom_wac.h | 1 +
6 files changed, 36 insertions(+), 3 deletions(-)
diff --git a/2.6.32/wacom_wac.c b/2.6.32/wacom_wac.c
index c4705f839173..c5744573b085 100644
--- a/2.6.32/wacom_wac.c
+++ b/2.6.32/wacom_wac.c
@@ -1935,6 +1935,7 @@ void wacom_wac_irq(struct wacom_wac *wacom_wac, size_t
len)
case WACOM_MSPRO:
case INTUOSP2:
+ case CINTIQ_16:
if (len == WACOM_PKGLEN_INTUOSP2T &&
wacom_wac->data[0] == WACOM_REPORT_VENDOR_DEF_TOUCH)
sync = wacom_multitouch_generic(wacom_wac);
@@ -2232,10 +2233,12 @@ void wacom_setup_input_capabilities(struct input_dev
*input_dev,
break;
case WACOM_MSPRO:
+ case CINTIQ_16:
input_set_abs_params(input_dev, ABS_Z, -900, 899, 0, 0);
__set_bit(BTN_STYLUS3, input_dev->keybit);
- if (features->numbered_buttons == 0) { /* Cintiq Pro */
+ if (features->type == WACOM_MSPRO &&
+ features->numbered_buttons == 0) { /* Cintiq Pro */
__set_bit(KEY_CONTROLPANEL, input_dev->keybit);
__set_bit(KEY_ONSCREEN_KEYBOARD, input_dev->keybit);
__set_bit(KEY_BUTTONCONFIG, input_dev->keybit);
@@ -3057,6 +3060,12 @@ static const struct wacom_features wacom_features_0x382 =
0, DTK2451, WACOM_INTUOS_RES, WACOM_INTUOS_RES, 4,
WACOM_DTU_OFFSET, WACOM_DTU_OFFSET,
WACOM_DTU_OFFSET, WACOM_DTU_OFFSET };
+static const struct wacom_features wacom_features_0x390 =
+ { "Wacom Cintiq 16", WACOM_PKGLEN_MSPRO, 69632, 39518, 8191, 63,
+ CINTIQ_16, WACOM_INTUOS3_RES, WACOM_INTUOS3_RES, 0,
+ WACOM_CINTIQ_OFFSET, WACOM_CINTIQ_OFFSET,
+ WACOM_CINTIQ_OFFSET, WACOM_CINTIQ_OFFSET,
+ .oVid = USB_VENDOR_ID_WACOM };
#define USB_DEVICE_WACOM(prod) \
USB_DEVICE(USB_VENDOR_ID_WACOM, prod), \
@@ -3238,6 +3247,7 @@ const struct usb_device_id wacom_ids[] = {
{ USB_DEVICE_WACOM(0x37D) },
{ USB_DEVICE_WACOM(0x37E) },
{ USB_DEVICE_WACOM(0x382) },
+ { USB_DEVICE_DETAILED(0x390, USB_CLASS_HID, 0, 0) },
{ USB_DEVICE_WACOM(0x4001) },
{ USB_DEVICE_WACOM(0x4004) },
{ USB_DEVICE_WACOM(0x5000) },
diff --git a/2.6.32/wacom_wac.h b/2.6.32/wacom_wac.h
index 56dcea362f13..45e865bbf5ac 100755
--- a/2.6.32/wacom_wac.h
+++ b/2.6.32/wacom_wac.h
@@ -115,6 +115,7 @@ enum {
DTK,
WACOM_24HD,
WACOM_MSPRO,
+ CINTIQ_16,
CINTIQ,
WACOM_BEE,
WACOM_13HD,
diff --git a/2.6.38/wacom_wac.c b/2.6.38/wacom_wac.c
index 2e090cf9a06f..a985a21c6c07 100644
--- a/2.6.38/wacom_wac.c
+++ b/2.6.38/wacom_wac.c
@@ -2139,6 +2139,7 @@ void wacom_wac_irq(struct wacom_wac *wacom_wac, size_t
len)
case WACOM_MSPRO:
case INTUOSP2:
+ case CINTIQ_16:
if (len == WACOM_PKGLEN_INTUOSP2T &&
wacom_wac->data[0] == WACOM_REPORT_VENDOR_DEF_TOUCH)
sync = wacom_multitouch_generic(wacom_wac);
@@ -2479,11 +2480,13 @@ int wacom_setup_input_capabilities(struct input_dev
*input_dev,
break;
case WACOM_MSPRO:
+ case CINTIQ_16:
input_set_abs_params(input_dev, ABS_Z, -900, 899, 0, 0);
__set_bit(BTN_STYLUS3, input_dev->keybit);
__set_bit(INPUT_PROP_DIRECT, input_dev->propbit);
- if (features->numbered_buttons == 0) { /* Cintiq Pro */
+ if (features->type == WACOM_MSPRO &&
+ features->numbered_buttons == 0) { /* Cintiq Pro */
__set_bit(KEY_CONTROLPANEL, input_dev->keybit);
__set_bit(KEY_ONSCREEN_KEYBOARD, input_dev->keybit);
__set_bit(KEY_BUTTONCONFIG, input_dev->keybit);
@@ -3410,6 +3413,12 @@ static const struct wacom_features wacom_features_0x382 =
0, DTK2451, WACOM_INTUOS_RES, WACOM_INTUOS_RES, 4,
WACOM_DTU_OFFSET, WACOM_DTU_OFFSET,
WACOM_DTU_OFFSET, WACOM_DTU_OFFSET };
+static const struct wacom_features wacom_features_0x390 =
+ { "Wacom Cintiq 16", WACOM_PKGLEN_MSPRO, 69632, 39518, 8191, 63,
+ CINTIQ_16, WACOM_INTUOS3_RES, WACOM_INTUOS3_RES, 0,
+ WACOM_CINTIQ_OFFSET, WACOM_CINTIQ_OFFSET,
+ WACOM_CINTIQ_OFFSET, WACOM_CINTIQ_OFFSET,
+ .oVid = USB_VENDOR_ID_WACOM };
#define USB_DEVICE_WACOM(prod) \
USB_DEVICE(USB_VENDOR_ID_WACOM, prod), \
@@ -3599,6 +3608,7 @@ const struct usb_device_id wacom_ids[] = {
{ USB_DEVICE_WACOM(0x37D) },
{ USB_DEVICE_WACOM(0x37E) },
{ USB_DEVICE_WACOM(0x382) },
+ { USB_DEVICE_DETAILED(0x390, USB_CLASS_HID, 0, 0) },
{ USB_DEVICE_WACOM(0x4001) },
{ USB_DEVICE_WACOM(0x4004) },
{ USB_DEVICE_WACOM(0x5000) },
diff --git a/2.6.38/wacom_wac.h b/2.6.38/wacom_wac.h
index 08e826143050..c2e337d41427 100644
--- a/2.6.38/wacom_wac.h
+++ b/2.6.38/wacom_wac.h
@@ -130,6 +130,7 @@ enum {
CINTIQ_HYBRID,
CINTIQ_COMPANION_2,
WACOM_MSPRO,
+ CINTIQ_16,
CINTIQ,
WACOM_BEE,
WACOM_13HD,
diff --git a/3.7/wacom_wac.c b/3.7/wacom_wac.c
index f255f8cfabf5..8dbb9eac513d 100644
--- a/3.7/wacom_wac.c
+++ b/3.7/wacom_wac.c
@@ -2121,6 +2121,7 @@ void wacom_wac_irq(struct wacom_wac *wacom_wac, size_t
len)
case WACOM_MSPRO:
case INTUOSP2:
+ case CINTIQ_16:
if (len == WACOM_PKGLEN_INTUOSP2T &&
wacom_wac->data[0] == WACOM_REPORT_VENDOR_DEF_TOUCH)
sync = wacom_multitouch_generic(wacom_wac);
@@ -2450,11 +2451,13 @@ int wacom_setup_input_capabilities(struct input_dev
*input_dev,
break;
case WACOM_MSPRO:
+ case CINTIQ_16:
input_set_abs_params(input_dev, ABS_Z, -900, 899, 0, 0);
__set_bit(BTN_STYLUS3, input_dev->keybit);
__set_bit(INPUT_PROP_DIRECT, input_dev->propbit);
- if (features->numbered_buttons == 0) { /* Cintiq Pro */
+ if (features->type == WACOM_MSPRO &&
+ features->numbered_buttons == 0) { /* Cintiq Pro */
__set_bit(KEY_CONTROLPANEL, input_dev->keybit);
__set_bit(KEY_ONSCREEN_KEYBOARD, input_dev->keybit);
__set_bit(KEY_BUTTONCONFIG, input_dev->keybit);
@@ -3340,6 +3343,12 @@ static const struct wacom_features wacom_features_0x382 =
0, DTK2451, WACOM_INTUOS_RES, WACOM_INTUOS_RES, 4,
WACOM_DTU_OFFSET, WACOM_DTU_OFFSET,
WACOM_DTU_OFFSET, WACOM_DTU_OFFSET };
+static const struct wacom_features wacom_features_0x390 =
+ { "Wacom Cintiq 16", WACOM_PKGLEN_MSPRO, 69632, 39518, 8191, 63,
+ CINTIQ_16, WACOM_INTUOS3_RES, WACOM_INTUOS3_RES, 0,
+ WACOM_CINTIQ_OFFSET, WACOM_CINTIQ_OFFSET,
+ WACOM_CINTIQ_OFFSET, WACOM_CINTIQ_OFFSET,
+ .oVid = USB_VENDOR_ID_WACOM };
#define USB_DEVICE_WACOM(prod) \
USB_DEVICE(USB_VENDOR_ID_WACOM, prod), \
@@ -3529,6 +3538,7 @@ const struct usb_device_id wacom_ids[] = {
{ USB_DEVICE_WACOM(0x37D) },
{ USB_DEVICE_WACOM(0x37E) },
{ USB_DEVICE_WACOM(0x382) },
+ { USB_DEVICE_DETAILED(0x390, USB_CLASS_HID, 0, 0) },
{ USB_DEVICE_WACOM(0x4001) },
{ USB_DEVICE_WACOM(0x4004) },
{ USB_DEVICE_WACOM(0x5000) },
diff --git a/3.7/wacom_wac.h b/3.7/wacom_wac.h
index 1a8714f9febe..da7387a3bee2 100644
--- a/3.7/wacom_wac.h
+++ b/3.7/wacom_wac.h
@@ -130,6 +130,7 @@ enum {
CINTIQ_HYBRID,
CINTIQ_COMPANION_2,
WACOM_MSPRO,
+ CINTIQ_16,
CINTIQ,
WACOM_BEE,
WACOM_13HD,
--
2.7.4
_______________________________________________
Linuxwacom-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel