wacom_wac.h 1.6 KB
Newer Older
1
/*
2
 * drivers/input/tablet/wacom_wac.h
3 4 5 6 7 8 9 10 11
 *
 * 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

12 13 14 15 16 17 18 19 20 21
/* 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_PENABLED	 8
#define WACOM_PKGLEN_TPC1FG	 5
22
#define WACOM_PKGLEN_TPC2FG 	14
23

24
/* device IDs */
25
#define STYLUS_DEVICE_ID	0x02
26
#define TOUCH_DEVICE_ID		0x03
27 28
#define CURSOR_DEVICE_ID	0x06
#define ERASER_DEVICE_ID	0x0A
P
Ping Cheng 已提交
29
#define PAD_DEVICE_ID		0x0F
30

31 32 33 34 35 36 37 38
/* 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

39 40 41 42 43 44 45
enum {
	PENPARTNER = 0,
	GRAPHIRE,
	WACOM_G4,
	PTU,
	PL,
	INTUOS,
P
Ping Cheng 已提交
46
	INTUOS3S,
47 48
	INTUOS3,
	INTUOS3L,
49 50 51
	INTUOS4S,
	INTUOS4,
	INTUOS4L,
52
	CINTIQ,
53
	WACOM_BEE,
54
	WACOM_MO,
55
	TABLETPC,
56
	TABLETPC2FG,
57 58 59 60 61 62 63 64 65 66 67
	MAX_TYPE
};

struct wacom_features {
	char *name;
	int pktlen;
	int x_max;
	int y_max;
	int pressure_max;
	int distance_max;
	int type;
68 69 70 71 72
	int device_type;
	int x_phy;
	int y_phy;
	unsigned char unit;
	unsigned char unitExpo;
73 74 75
};

struct wacom_wac {
76
	unsigned char *data;
77 78 79 80 81 82 83
        int tool[2];
        int id[2];
        __u32 serial[2];
	struct wacom_features *features;
};

#endif