aboutsummaryrefslogtreecommitdiff
path: root/drivers/input/tablet/wacom_wac.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/input/tablet/wacom_wac.h')
-rw-r--r--drivers/input/tablet/wacom_wac.h68
1 files changed, 64 insertions, 4 deletions
diff --git a/drivers/input/tablet/wacom_wac.h b/drivers/input/tablet/wacom_wac.h
index 835f756b150..b2c9a9c1b55 100644
--- a/drivers/input/tablet/wacom_wac.h
+++ b/drivers/input/tablet/wacom_wac.h
@@ -12,7 +12,9 @@
#include <linux/types.h>
/* maximum packet length for USB devices */
-#define WACOM_PKGLEN_MAX 32
+#define WACOM_PKGLEN_MAX 68
+
+#define WACOM_NAME_MAX 64
/* packet length for individual models */
#define WACOM_PKGLEN_PENPRTN 7
@@ -20,8 +22,20 @@
#define WACOM_PKGLEN_BBFUN 9
#define WACOM_PKGLEN_INTUOS 10
#define WACOM_PKGLEN_TPC1FG 5
+#define WACOM_PKGLEN_TPC1FG_B 10
#define WACOM_PKGLEN_TPC2FG 14
#define WACOM_PKGLEN_BBTOUCH 20
+#define WACOM_PKGLEN_BBTOUCH3 64
+#define WACOM_PKGLEN_BBPEN 10
+#define WACOM_PKGLEN_WIRELESS 32
+#define WACOM_PKGLEN_MTOUCH 62
+#define WACOM_PKGLEN_MTTPC 40
+#define WACOM_PKGLEN_DTUS 68
+#define WACOM_PKGLEN_PENABLED 8
+
+/* wacom data size per MT contact */
+#define WACOM_BYTES_PER_MT_PACKET 11
+#define WACOM_BYTES_PER_24HDT_PACKET 14
/* device IDs */
#define STYLUS_DEVICE_ID 0x02
@@ -35,12 +49,25 @@
#define WACOM_REPORT_INTUOSREAD 5
#define WACOM_REPORT_INTUOSWRITE 6
#define WACOM_REPORT_INTUOSPAD 12
+#define WACOM_REPORT_INTUOS5PAD 3
+#define WACOM_REPORT_DTUSPAD 21
#define WACOM_REPORT_TPC1FG 6
#define WACOM_REPORT_TPC2FG 13
+#define WACOM_REPORT_TPCMT 13
+#define WACOM_REPORT_TPCMT2 3
+#define WACOM_REPORT_TPCHID 15
+#define WACOM_REPORT_TPCST 16
+#define WACOM_REPORT_DTUS 17
+#define WACOM_REPORT_TPC1FGE 18
+#define WACOM_REPORT_24HDT 1
+#define WACOM_REPORT_WL 128
+#define WACOM_REPORT_USB 192
/* device quirks */
#define WACOM_QUIRK_MULTI_INPUT 0x0001
#define WACOM_QUIRK_BBTOUCH_LOWRES 0x0002
+#define WACOM_QUIRK_NO_INPUT 0x0004
+#define WACOM_QUIRK_MONITOR 0x0008
enum {
PENPARTNER = 0,
@@ -49,7 +76,7 @@ enum {
PTU,
PL,
DTU,
- BAMBOO_PT,
+ DTUS,
INTUOS,
INTUOS3S,
INTUOS3,
@@ -57,12 +84,31 @@ enum {
INTUOS4S,
INTUOS4,
INTUOS4L,
+ INTUOS5S,
+ INTUOS5,
+ INTUOS5L,
+ INTUOSPS,
+ INTUOSPM,
+ INTUOSPL,
+ INTUOSHT,
WACOM_21UX2,
+ WACOM_22HD,
+ DTK,
+ WACOM_24HD,
+ CINTIQ_HYBRID,
CINTIQ,
WACOM_BEE,
+ WACOM_13HD,
WACOM_MO,
- TABLETPC,
+ WIRELESS,
+ BAMBOO_PT,
+ WACOM_24HDT,
+ TABLETPC, /* add new TPC below */
+ TABLETPCE,
TABLETPC2FG,
+ MTSCREEN,
+ MTTPC,
+ MTTPC_B,
MAX_TYPE
};
@@ -74,6 +120,10 @@ struct wacom_features {
int pressure_max;
int distance_max;
int type;
+ int x_resolution;
+ int y_resolution;
+ int x_min;
+ int y_min;
int device_type;
int x_phy;
int y_phy;
@@ -84,15 +134,22 @@ struct wacom_features {
int pressure_fuzz;
int distance_fuzz;
unsigned quirks;
+ unsigned touch_max;
+ int oVid;
+ int oPid;
};
struct wacom_shared {
bool stylus_in_proximity;
bool touch_down;
+ /* for wireless device to access USB interfaces */
+ unsigned touch_max;
+ int type;
+ struct input_dev *touch_input;
};
struct wacom_wac {
- char name[64];
+ char name[WACOM_NAME_MAX];
unsigned char *data;
int tool[2];
int id[2];
@@ -100,6 +157,9 @@ struct wacom_wac {
struct wacom_features features;
struct wacom_shared *shared;
struct input_dev *input;
+ int pid;
+ int battery_capacity;
+ int num_contacts_left;
};
#endif