From f5e849eee199e22c2765e8d17388b80f825e7d6b Mon Sep 17 00:00:00 2001 From: Henrik Rydberg Date: Sun, 22 Aug 2010 20:58:10 +0200 Subject: initial version with Bamboo Touch support --- usr/src/dkms_source_tree/wacom_wac.h | 100 +++++++++++++++++++++++++++++++++++ 1 file changed, 100 insertions(+) create mode 100644 usr/src/dkms_source_tree/wacom_wac.h (limited to 'usr/src/dkms_source_tree/wacom_wac.h') diff --git a/usr/src/dkms_source_tree/wacom_wac.h b/usr/src/dkms_source_tree/wacom_wac.h new file mode 100644 index 0000000..770909c --- /dev/null +++ b/usr/src/dkms_source_tree/wacom_wac.h @@ -0,0 +1,100 @@ +/* + * drivers/input/tablet/wacom_wac.h + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + */ +#ifndef WACOM_WAC_H +#define WACOM_WAC_H + +#include + +/* maximum packet length for USB devices */ +#define WACOM_PKGLEN_MAX 32 + +/* packet length for individual models */ +#define WACOM_PKGLEN_PENPRTN 7 +#define WACOM_PKGLEN_GRAPHIRE 8 +#define WACOM_PKGLEN_BBFUN 9 +#define WACOM_PKGLEN_INTUOS 10 +#define WACOM_PKGLEN_TPC1FG 5 +#define WACOM_PKGLEN_TPC2FG 14 +#define WACOM_PKGLEN_BBTOUCH 20 + +/* device IDs */ +#define STYLUS_DEVICE_ID 0x02 +#define TOUCH_DEVICE_ID 0x03 +#define CURSOR_DEVICE_ID 0x06 +#define ERASER_DEVICE_ID 0x0A +#define PAD_DEVICE_ID 0x0F + +/* wacom data packet report IDs */ +#define WACOM_REPORT_PENABLED 2 +#define WACOM_REPORT_INTUOSREAD 5 +#define WACOM_REPORT_INTUOSWRITE 6 +#define WACOM_REPORT_INTUOSPAD 12 +#define WACOM_REPORT_TPC1FG 6 +#define WACOM_REPORT_TPC2FG 13 + +/* largest reported tracking id */ +#define MAX_TRACKING_ID 0xfff + +enum { + PENPARTNER = 0, + GRAPHIRE, + WACOM_G4, + PTU, + PL, + DTU, + INTUOS, + INTUOS3S, + INTUOS3, + INTUOS3L, + INTUOS4S, + INTUOS4, + INTUOS4L, + WACOM_21UX2, + CINTIQ, + WACOM_BEE, + WACOM_MO, + TABLETPC, + TABLETPC2FG, + BAMBOO_TOUCH, + BAMBOO_BOOT, + MAX_TYPE +}; + +struct wacom_features { + const char *name; + int pktlen; + int x_max; + int y_max; + int pressure_max; + int distance_max; + int type; + int device_type; + int x_phy; + int y_phy; + unsigned char unit; + unsigned char unitExpo; +}; + +struct wacom_shared { + bool stylus_in_proximity; +}; + +struct wacom_wac { + char name[64]; + unsigned char *data; + int tool[3]; + int id[3]; + __u32 serial[2]; + int last_finger; + struct wacom_features features; + struct wacom_shared *shared; + struct input_dev *input; +}; + +#endif -- cgit v1.2.3