diff options
| -rw-r--r-- | drivers/input/tablet/wacom_wac.c | 36 | ||||
| -rw-r--r-- | drivers/input/tablet/wacom_wac.h | 1 |
2 files changed, 37 insertions, 0 deletions
diff --git a/drivers/input/tablet/wacom_wac.c b/drivers/input/tablet/wacom_wac.c index 0bfd8cf25200..afe4fe0a9060 100644 --- a/drivers/input/tablet/wacom_wac.c +++ b/drivers/input/tablet/wacom_wac.c | |||
| @@ -546,6 +546,16 @@ static int wacom_intuos_irq(struct wacom_wac *wacom) | |||
| 546 | input_report_key(input, BTN_3, (data[6] & 0x08)); | 546 | input_report_key(input, BTN_3, (data[6] & 0x08)); |
| 547 | input_report_key(input, BTN_4, (data[6] & 0x10)); | 547 | input_report_key(input, BTN_4, (data[6] & 0x10)); |
| 548 | input_report_key(input, BTN_5, (data[6] & 0x20)); | 548 | input_report_key(input, BTN_5, (data[6] & 0x20)); |
| 549 | } else if (features->type == WACOM_13HD) { | ||
| 550 | input_report_key(input, BTN_0, (data[3] & 0x01)); | ||
| 551 | input_report_key(input, BTN_1, (data[4] & 0x01)); | ||
| 552 | input_report_key(input, BTN_2, (data[4] & 0x02)); | ||
| 553 | input_report_key(input, BTN_3, (data[4] & 0x04)); | ||
| 554 | input_report_key(input, BTN_4, (data[4] & 0x08)); | ||
| 555 | input_report_key(input, BTN_5, (data[4] & 0x10)); | ||
| 556 | input_report_key(input, BTN_6, (data[4] & 0x20)); | ||
| 557 | input_report_key(input, BTN_7, (data[4] & 0x40)); | ||
| 558 | input_report_key(input, BTN_8, (data[4] & 0x80)); | ||
| 549 | } else if (features->type == WACOM_24HD) { | 559 | } else if (features->type == WACOM_24HD) { |
| 550 | input_report_key(input, BTN_0, (data[6] & 0x01)); | 560 | input_report_key(input, BTN_0, (data[6] & 0x01)); |
| 551 | input_report_key(input, BTN_1, (data[6] & 0x02)); | 561 | input_report_key(input, BTN_1, (data[6] & 0x02)); |
| @@ -1301,6 +1311,7 @@ void wacom_wac_irq(struct wacom_wac *wacom_wac, size_t len) | |||
| 1301 | case INTUOS4L: | 1311 | case INTUOS4L: |
| 1302 | case CINTIQ: | 1312 | case CINTIQ: |
| 1303 | case WACOM_BEE: | 1313 | case WACOM_BEE: |
| 1314 | case WACOM_13HD: | ||
| 1304 | case WACOM_21UX2: | 1315 | case WACOM_21UX2: |
| 1305 | case WACOM_22HD: | 1316 | case WACOM_22HD: |
| 1306 | case WACOM_24HD: | 1317 | case WACOM_24HD: |
| @@ -1579,6 +1590,15 @@ int wacom_setup_input_capabilities(struct input_dev *input_dev, | |||
| 1579 | wacom_setup_cintiq(wacom_wac); | 1590 | wacom_setup_cintiq(wacom_wac); |
| 1580 | break; | 1591 | break; |
| 1581 | 1592 | ||
| 1593 | case WACOM_13HD: | ||
| 1594 | for (i = 0; i < 9; i++) | ||
| 1595 | __set_bit(BTN_0 + i, input_dev->keybit); | ||
| 1596 | |||
| 1597 | input_set_abs_params(input_dev, ABS_Z, -900, 899, 0, 0); | ||
| 1598 | __set_bit(INPUT_PROP_DIRECT, input_dev->propbit); | ||
| 1599 | wacom_setup_cintiq(wacom_wac); | ||
| 1600 | break; | ||
| 1601 | |||
| 1582 | case INTUOS3: | 1602 | case INTUOS3: |
| 1583 | case INTUOS3L: | 1603 | case INTUOS3L: |
| 1584 | __set_bit(BTN_4, input_dev->keybit); | 1604 | __set_bit(BTN_4, input_dev->keybit); |
| @@ -1950,6 +1970,9 @@ static const struct wacom_features wacom_features_0xC5 = | |||
| 1950 | static const struct wacom_features wacom_features_0xC6 = | 1970 | static const struct wacom_features wacom_features_0xC6 = |
| 1951 | { "Wacom Cintiq 12WX", WACOM_PKGLEN_INTUOS, 53020, 33440, 1023, | 1971 | { "Wacom Cintiq 12WX", WACOM_PKGLEN_INTUOS, 53020, 33440, 1023, |
| 1952 | 63, WACOM_BEE, WACOM_INTUOS3_RES, WACOM_INTUOS3_RES }; | 1972 | 63, WACOM_BEE, WACOM_INTUOS3_RES, WACOM_INTUOS3_RES }; |
| 1973 | static const struct wacom_features wacom_features_0x304 = | ||
| 1974 | { "Wacom Cintiq 13HD", WACOM_PKGLEN_INTUOS, 59552, 33848, 1023, | ||
| 1975 | 63, WACOM_13HD, WACOM_INTUOS3_RES, WACOM_INTUOS3_RES }; | ||
| 1953 | static const struct wacom_features wacom_features_0xC7 = | 1976 | static const struct wacom_features wacom_features_0xC7 = |
| 1954 | { "Wacom DTU1931", WACOM_PKGLEN_GRAPHIRE, 37832, 30305, 511, | 1977 | { "Wacom DTU1931", WACOM_PKGLEN_GRAPHIRE, 37832, 30305, 511, |
| 1955 | 0, PL, WACOM_INTUOS_RES, WACOM_INTUOS_RES }; | 1978 | 0, PL, WACOM_INTUOS_RES, WACOM_INTUOS_RES }; |
| @@ -1959,6 +1982,9 @@ static const struct wacom_features wacom_features_0xCE = | |||
| 1959 | static const struct wacom_features wacom_features_0xF0 = | 1982 | static const struct wacom_features wacom_features_0xF0 = |
| 1960 | { "Wacom DTU1631", WACOM_PKGLEN_GRAPHIRE, 34623, 19553, 511, | 1983 | { "Wacom DTU1631", WACOM_PKGLEN_GRAPHIRE, 34623, 19553, 511, |
| 1961 | 0, DTU, WACOM_INTUOS_RES, WACOM_INTUOS_RES }; | 1984 | 0, DTU, WACOM_INTUOS_RES, WACOM_INTUOS_RES }; |
| 1985 | static const struct wacom_features wacom_features_0x57 = | ||
| 1986 | { "Wacom DTK2241", WACOM_PKGLEN_INTUOS, 95840, 54260, 2047, | ||
| 1987 | 63, DTK, WACOM_INTUOS3_RES, WACOM_INTUOS3_RES}; | ||
| 1962 | static const struct wacom_features wacom_features_0x59 = /* Pen */ | 1988 | static const struct wacom_features wacom_features_0x59 = /* Pen */ |
| 1963 | { "Wacom DTH2242", WACOM_PKGLEN_INTUOS, 95840, 54260, 2047, | 1989 | { "Wacom DTH2242", WACOM_PKGLEN_INTUOS, 95840, 54260, 2047, |
| 1964 | 63, DTK, WACOM_INTUOS3_RES, WACOM_INTUOS3_RES, | 1990 | 63, DTK, WACOM_INTUOS3_RES, WACOM_INTUOS3_RES, |
| @@ -1972,6 +1998,12 @@ static const struct wacom_features wacom_features_0xCC = | |||
| 1972 | static const struct wacom_features wacom_features_0xFA = | 1998 | static const struct wacom_features wacom_features_0xFA = |
| 1973 | { "Wacom Cintiq 22HD", WACOM_PKGLEN_INTUOS, 95840, 54260, 2047, | 1999 | { "Wacom Cintiq 22HD", WACOM_PKGLEN_INTUOS, 95840, 54260, 2047, |
| 1974 | 63, WACOM_22HD, WACOM_INTUOS3_RES, WACOM_INTUOS3_RES }; | 2000 | 63, WACOM_22HD, WACOM_INTUOS3_RES, WACOM_INTUOS3_RES }; |
| 2001 | static const struct wacom_features wacom_features_0x5B = | ||
| 2002 | { "Wacom Cintiq 22HDT", WACOM_PKGLEN_INTUOS, 95840, 54260, 2047, | ||
| 2003 | 63, WACOM_24HD, WACOM_INTUOS3_RES, WACOM_INTUOS3_RES, .oVid = USB_VENDOR_ID_WACOM, .oPid = 0x5e }; | ||
| 2004 | static const struct wacom_features wacom_features_0x5E = | ||
| 2005 | { "Wacom Cintiq 22HDT", .type = WACOM_24HDT, | ||
| 2006 | .oVid = USB_VENDOR_ID_WACOM, .oPid = 0x5b, .touch_max = 10 }; | ||
| 1975 | static const struct wacom_features wacom_features_0x90 = | 2007 | static const struct wacom_features wacom_features_0x90 = |
| 1976 | { "Wacom ISDv4 90", WACOM_PKGLEN_GRAPHIRE, 26202, 16325, 255, | 2008 | { "Wacom ISDv4 90", WACOM_PKGLEN_GRAPHIRE, 26202, 16325, 255, |
| 1977 | 0, TABLETPC, WACOM_INTUOS_RES, WACOM_INTUOS_RES }; | 2009 | 0, TABLETPC, WACOM_INTUOS_RES, WACOM_INTUOS_RES }; |
| @@ -2143,8 +2175,11 @@ const struct usb_device_id wacom_ids[] = { | |||
| 2143 | { USB_DEVICE_WACOM(0x43) }, | 2175 | { USB_DEVICE_WACOM(0x43) }, |
| 2144 | { USB_DEVICE_WACOM(0x44) }, | 2176 | { USB_DEVICE_WACOM(0x44) }, |
| 2145 | { USB_DEVICE_WACOM(0x45) }, | 2177 | { USB_DEVICE_WACOM(0x45) }, |
| 2178 | { USB_DEVICE_WACOM(0x57) }, | ||
| 2146 | { USB_DEVICE_WACOM(0x59) }, | 2179 | { USB_DEVICE_WACOM(0x59) }, |
| 2147 | { USB_DEVICE_DETAILED(0x5D, USB_CLASS_HID, 0, 0) }, | 2180 | { USB_DEVICE_DETAILED(0x5D, USB_CLASS_HID, 0, 0) }, |
| 2181 | { USB_DEVICE_WACOM(0x5B) }, | ||
| 2182 | { USB_DEVICE_DETAILED(0x5E, USB_CLASS_HID, 0, 0) }, | ||
| 2148 | { USB_DEVICE_WACOM(0xB0) }, | 2183 | { USB_DEVICE_WACOM(0xB0) }, |
| 2149 | { USB_DEVICE_WACOM(0xB1) }, | 2184 | { USB_DEVICE_WACOM(0xB1) }, |
| 2150 | { USB_DEVICE_WACOM(0xB2) }, | 2185 | { USB_DEVICE_WACOM(0xB2) }, |
| @@ -2205,6 +2240,7 @@ const struct usb_device_id wacom_ids[] = { | |||
| 2205 | { USB_DEVICE_WACOM(0x100) }, | 2240 | { USB_DEVICE_WACOM(0x100) }, |
| 2206 | { USB_DEVICE_WACOM(0x101) }, | 2241 | { USB_DEVICE_WACOM(0x101) }, |
| 2207 | { USB_DEVICE_WACOM(0x10D) }, | 2242 | { USB_DEVICE_WACOM(0x10D) }, |
| 2243 | { USB_DEVICE_WACOM(0x304) }, | ||
| 2208 | { USB_DEVICE_WACOM(0x4001) }, | 2244 | { USB_DEVICE_WACOM(0x4001) }, |
| 2209 | { USB_DEVICE_WACOM(0x47) }, | 2245 | { USB_DEVICE_WACOM(0x47) }, |
| 2210 | { USB_DEVICE_WACOM(0xF4) }, | 2246 | { USB_DEVICE_WACOM(0xF4) }, |
diff --git a/drivers/input/tablet/wacom_wac.h b/drivers/input/tablet/wacom_wac.h index 5f9a7721e16c..dfc9e08e7f70 100644 --- a/drivers/input/tablet/wacom_wac.h +++ b/drivers/input/tablet/wacom_wac.h | |||
| @@ -82,6 +82,7 @@ enum { | |||
| 82 | WACOM_24HD, | 82 | WACOM_24HD, |
| 83 | CINTIQ, | 83 | CINTIQ, |
| 84 | WACOM_BEE, | 84 | WACOM_BEE, |
| 85 | WACOM_13HD, | ||
| 85 | WACOM_MO, | 86 | WACOM_MO, |
| 86 | WIRELESS, | 87 | WIRELESS, |
| 87 | BAMBOO_PT, | 88 | BAMBOO_PT, |
