Annotation of sys/dev/usb/ugraphire_rdesc.h, Revision 1.1.1.1
1.1 nbrk 1: /* $OpenBSD: ugraphire_rdesc.h,v 1.3 2006/01/06 03:36:32 brad Exp $ */
2: /* $NetBSD: ugraphire_rdesc.h,v 1.1 2000/12/29 01:47:49 augustss Exp $ */
3: /*
4: * Copyright (c) 2000 Nick Hibma <n_hibma@freebsd.org>
5: * All rights reserved.
6: *
7: * Redistribution and use in source and binary forms, with or without
8: * modification, are permitted provided that the following conditions
9: * are met:
10: * 1. Redistributions of source code must retain the above copyright
11: * notice, this list of conditions and the following disclaimer.
12: * 2. Redistributions in binary form must reproduce the above copyright
13: * notice, this list of conditions and the following disclaimer in the
14: * documentation and/or other materials provided with the distribution.
15: *
16: * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
17: * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
18: * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
19: * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
20: * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
21: * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
22: * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
23: * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
24: * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
25: * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
26: * SUCH DAMAGE.
27: */
28:
29: static uByte uhid_graphire_report_descr[] = {
30: 0x05, 0x0d, /* USAGE_PAGE (Digitizers) */
31: 0x09, 0x01, /* USAGE (Digitizer) */
32: 0xa1, 0x01, /* COLLECTION (Application) */
33: 0x85, 0x02, /* REPORT_ID (2) */
34: 0x05, 0x0d, /* USAGE_PAGE (Digitizers) */
35: 0x09, 0x01, /* USAGE (Digitizer) */
36: 0xa1, 0x00, /* COLLECTION (Physical) */
37: 0x15, 0x00, /* LOGICAL_MINIMUM (0) */
38: 0x25, 0x01, /* LOGICAL_MAXIMUM (1) */
39: 0x09, 0x33, /* USAGE (Touch) */
40: 0x95, 0x01, /* REPORT_COUNT (1) */
41: 0x75, 0x01, /* REPORT_SIZE (1) */
42: 0x81, 0x02, /* INPUT (Data,Var,Abs) */
43: 0x09, 0x44, /* USAGE (Barrel Switch) */
44: 0x95, 0x02, /* REPORT_COUNT (2) */
45: 0x75, 0x01, /* REPORT_SIZE (1) */
46: 0x81, 0x02, /* INPUT (Data,Var,Abs) */
47: 0x09, 0x00, /* USAGE (Undefined) */
48: 0x95, 0x02, /* REPORT_COUNT (2) */
49: 0x75, 0x01, /* REPORT_SIZE (1) */
50: 0x81, 0x03, /* INPUT (Cnst,Var,Abs) */
51: 0x09, 0x3c, /* USAGE (Invert) */
52: 0x95, 0x01, /* REPORT_COUNT (1) */
53: 0x75, 0x01, /* REPORT_SIZE (1) */
54: 0x81, 0x02, /* INPUT (Data,Var,Abs) */
55: 0x09, 0x38, /* USAGE (Transducer Index) */
56: 0x95, 0x01, /* REPORT_COUNT (1) */
57: 0x75, 0x01, /* REPORT_SIZE (1) */
58: 0x81, 0x02, /* INPUT (Data,Var,Abs) */
59: 0x09, 0x32, /* USAGE (In Range) */
60: 0x95, 0x01, /* REPORT_COUNT (1) */
61: 0x75, 0x01, /* REPORT_SIZE (1) */
62: 0x81, 0x02, /* INPUT (Data,Var,Abs) */
63: 0x05, 0x01, /* USAGE_PAGE (Generic Desktop) */
64: 0x09, 0x30, /* USAGE (X) */
65: 0x15, 0x00, /* LOGICAL_MINIMUM (0) */
66: 0x26, 0xde, 0x27, /* LOGICAL_MAXIMUM (10206) */
67: 0x95, 0x01, /* REPORT_COUNT (1) */
68: 0x75, 0x10, /* REPORT_SIZE (16) */
69: 0x81, 0x02, /* INPUT (Data,Var,Abs) */
70: 0x09, 0x31, /* USAGE (Y) */
71: 0x26, 0xfe, 0x1c, /* LOGICAL_MAXIMUM (7422) */
72: 0x95, 0x01, /* REPORT_COUNT (1) */
73: 0x75, 0x10, /* REPORT_SIZE (16) */
74: 0x81, 0x02, /* INPUT (Data,Var,Abs) */
75: 0x05, 0x0d, /* USAGE_PAGE (Digitizers) */
76: 0x09, 0x30, /* USAGE (Tip Pressure) */
77: 0x26, 0xff, 0x01, /* LOGICAL_MAXIMUM (511) */
78: 0x95, 0x01, /* REPORT_COUNT (1) */
79: 0x75, 0x10, /* REPORT_SIZE (16) */
80: 0x81, 0x02, /* INPUT (Data,Var,Abs) */
81: 0xc0, /* END_COLLECTION */
82: 0x05, 0x0d, /* USAGE_PAGE (Digitizers) */
83: 0x09, 0x00, /* USAGE (Undefined) */
84: 0x85, 0x02, /* REPORT_ID (2) */
85: 0x95, 0x01, /* REPORT_COUNT (1) */
86: 0xb1, 0x02, /* FEATURE (Data,Var,Abs) */
87: 0x09, 0x00, /* USAGE (Undefined) */
88: 0x85, 0x03, /* REPORT_ID (3) */
89: 0x95, 0x01, /* REPORT_COUNT (1) */
90: 0xb1, 0x02, /* FEATURE (Data,Var,Abs) */
91: 0xc0, /* END_COLLECTION */
92: };
93:
94: static uByte uhid_graphire3_4x5_report_descr[] = {
95: 0x05, 0x01, /* USAGE_PAGE (Generic Desktop) */
96: 0x09, 0x02, /* USAGE (Mouse) */
97: 0xa1, 0x01, /* COLLECTION (Application) */
98: 0x85, 0x01, /* REPORT_ID (1) */
99: 0x09, 0x01, /* USAGE (Pointer) */
100: 0xa1, 0x00, /* COLLECTION (Physical) */
101: 0x05, 0x09, /* USAGE_PAGE (Button) */
102: 0x19, 0x01, /* USAGE_MINIMUM (Button 1) */
103: 0x29, 0x03, /* USAGE_MAXIMUM (Button 3) */
104: 0x15, 0x00, /* LOGICAL_MINIMUM (0) */
105: 0x25, 0x01, /* LOGICAL_MAXIMUM (1) */
106: 0x95, 0x03, /* REPORT_COUNT (3) */
107: 0x75, 0x01, /* REPORT_SIZE (1) */
108: 0x81, 0x02, /* INPUT (Data,Var,Abs) */
109: 0x95, 0x01, /* REPORT_COUNT (1) */
110: 0x75, 0x05, /* REPORT_SIZE (5) */
111: 0x81, 0x01, /* INPUT (Cnst,Ary,Abs) */
112: 0x05, 0x01, /* USAGE_PAGE (Generic Desktop) */
113: 0x09, 0x30, /* USAGE (X) */
114: 0x09, 0x31, /* USAGE (Y) */
115: 0x09, 0x38, /* USAGE (Wheel) */
116: 0x15, 0x81, /* LOGICAL_MINIMUM (-127) */
117: 0x25, 0x7f, /* LOGICAL_MAXIMUM (127) */
118: 0x75, 0x08, /* REPORT_SIZE (8) */
119: 0x95, 0x03, /* REPORT_COUNT (3) */
120: 0x81, 0x06, /* INPUT (Data,Var,Rel) */
121: 0xc0, /* END_COLLECTION */
122: 0xc0, /* END_COLLECTION */
123: 0x05, 0x0d, /* USAGE_PAGE (Digitizers) */
124: 0x09, 0x01, /* USAGE (Pointer) */
125: 0xa1, 0x01, /* COLLECTION (Application) */
126: 0x85, 0x02, /* REPORT_ID (2) */
127: 0x05, 0x0d, /* USAGE_PAGE (Digitizers) */
128: 0x09, 0x01, /* USAGE (Digitizer) */
129: 0xa1, 0x00, /* COLLECTION (Physical) */
130: 0x09, 0x33, /* USAGE (Touch) */
131: 0x09, 0x44, /* USAGE (Barrel Switch) */
132: 0x09, 0x44, /* USAGE (Barrel Switch) */
133: 0x15, 0x00, /* LOGICAL_MINIMUM (0) */
134: 0x25, 0x01, /* LOGICAL_MAXIMUM (1) */
135: 0x75, 0x01, /* REPORT_SIZE (1) */
136: 0x95, 0x03, /* REPORT_COUNT (3) */
137: 0x81, 0x02, /* INPUT (Data,Var,Abs) */
138: 0x75, 0x01, /* REPORT_SIZE (1) */
139: 0x95, 0x02, /* REPORT_COUNT (2) */
140: 0x81, 0x01, /* INPUT (Cnst,Ary,Abs) */
141: 0x09, 0x3c, /* USAGE (Invert) */
142: 0x09, 0x38, /* USAGE (Transducer Index) */
143: 0x09, 0x32, /* USAGE (In Range) */
144: 0x75, 0x01, /* REPORT_SIZE (1) */
145: 0x95, 0x03, /* REPORT_COUNT (3) */
146: 0x81, 0x02, /* INPUT (Data,Var,Abs) */
147: 0x05, 0x01, /* USAGE_PAGE (Generic Desktop) */
148: 0x09, 0x30, /* USAGE (X) */
149: 0x15, 0x00, /* LOGICAL_MINIMUM (0) */
150: 0x26, 0xde, 0x27, /* LOGICAL_MAXIMUM (10206) */
151: 0x75, 0x10, /* REPORT_SIZE (16) */
152: 0x95, 0x01, /* REPORT_COUNT (1) */
153: 0x81, 0x02, /* INPUT (Data,Var,Abs) */
154: 0x09, 0x31, /* USAGE (Y) */
155: 0x26, 0xfe, 0x1c, /* LOGICAL_MAXIMUM (7422) */
156: 0x75, 0x10, /* REPORT_SIZE (16) */
157: 0x95, 0x01, /* REPORT_COUNT (1) */
158: 0x81, 0x02, /* INPUT (Data,Var,Abs) */
159: 0x05, 0x0d, /* USAGE_PAGE (Digitizers) */
160: 0x09, 0x30, /* USAGE (Tip Pressure) */
161: 0x26, 0xff, 0x01, /* LOGICAL_MAXIMUM (511) */
162: 0x75, 0x10, /* REPORT_SIZE (16) */
163: 0x95, 0x01, /* REPORT_COUNT (1) */
164: 0x81, 0x02, /* INPUT (Data,Var,Abs) */
165: 0xc0, /* END_COLLECTION */
166: 0x05, 0x0d, /* USAGE_PAGE (Digitizers) */
167: 0x09, 0x00, /* USAGE (Undefined) */
168: 0x85, 0x02, /* REPORT_ID (2) */
169: 0x95, 0x01, /* REPORT_COUNT (1) */
170: 0xb1, 0x02, /* FEATURE (Data,Var,Abs) */
171: 0x09, 0x00, /* USAGE (Undefined) */
172: 0x85, 0x03, /* REPORT_ID (3) */
173: 0x95, 0x01, /* REPORT_COUNT (1) */
174: 0xb1, 0x02, /* FEATURE (Data,Var,Abs) */
175: 0xc0 /* END_COLLECTION */
176: };
177:
CVSweb