| @@ -1,426 +1,426 @@ | | | @@ -1,426 +1,426 @@ |
1 | /* $NetBSD: hid.h,v 1.4 2020/03/02 18:15:28 christos Exp $ */ | | 1 | /* $NetBSD: hid.h,v 1.5 2020/03/08 14:09:32 msaitoh Exp $ */ |
2 | /* $FreeBSD: src/sys/dev/usb/hid.h,v 1.7 1999/11/17 22:33:40 n_hibma Exp $ */ | | 2 | /* $FreeBSD: src/sys/dev/usb/hid.h,v 1.7 1999/11/17 22:33:40 n_hibma Exp $ */ |
3 | | | 3 | |
4 | /* | | 4 | /* |
5 | * Copyright (c) 1998 The NetBSD Foundation, Inc. | | 5 | * Copyright (c) 1998 The NetBSD Foundation, Inc. |
6 | * All rights reserved. | | 6 | * All rights reserved. |
7 | * | | 7 | * |
8 | * This code is derived from software contributed to The NetBSD Foundation | | 8 | * This code is derived from software contributed to The NetBSD Foundation |
9 | * by Lennart Augustsson (lennart@augustsson.net) at | | 9 | * by Lennart Augustsson (lennart@augustsson.net) at |
10 | * Carlstedt Research & Technology. | | 10 | * Carlstedt Research & Technology. |
11 | * | | 11 | * |
12 | * Redistribution and use in source and binary forms, with or without | | 12 | * Redistribution and use in source and binary forms, with or without |
13 | * modification, are permitted provided that the following conditions | | 13 | * modification, are permitted provided that the following conditions |
14 | * are met: | | 14 | * are met: |
15 | * 1. Redistributions of source code must retain the above copyright | | 15 | * 1. Redistributions of source code must retain the above copyright |
16 | * notice, this list of conditions and the following disclaimer. | | 16 | * notice, this list of conditions and the following disclaimer. |
17 | * 2. Redistributions in binary form must reproduce the above copyright | | 17 | * 2. Redistributions in binary form must reproduce the above copyright |
18 | * notice, this list of conditions and the following disclaimer in the | | 18 | * notice, this list of conditions and the following disclaimer in the |
19 | * documentation and/or other materials provided with the distribution. | | 19 | * documentation and/or other materials provided with the distribution. |
20 | * | | 20 | * |
21 | * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS | | 21 | * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS |
22 | * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED | | 22 | * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED |
23 | * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR | | 23 | * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR |
24 | * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS | | 24 | * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS |
25 | * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR | | 25 | * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR |
26 | * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF | | 26 | * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
27 | * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS | | 27 | * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS |
28 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN | | 28 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
29 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) | | 29 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) |
30 | * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE | | 30 | * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE |
31 | * POSSIBILITY OF SUCH DAMAGE. | | 31 | * POSSIBILITY OF SUCH DAMAGE. |
32 | */ | | 32 | */ |
33 | | | 33 | |
34 | #ifndef _HIDHID_H_ | | 34 | #ifndef _HIDHID_H_ |
35 | #define _HIDHID_H_ | | 35 | #define _HIDHID_H_ |
36 | | | 36 | |
37 | #if defined(_KERNEL) || defined(_RUMPKERNEL) | | 37 | #if defined(_KERNEL) || defined(_RUMPKERNEL) |
38 | | | 38 | |
39 | enum hid_kind { | | 39 | enum hid_kind { |
40 | hid_input, | | 40 | hid_input, |
41 | hid_output, | | 41 | hid_output, |
42 | hid_feature, | | 42 | hid_feature, |
43 | hid_collection, | | 43 | hid_collection, |
44 | hid_endcollection, | | 44 | hid_endcollection, |
45 | hid_none | | 45 | hid_none |
46 | }; | | 46 | }; |
47 | | | 47 | |
48 | struct hid_location { | | 48 | struct hid_location { |
49 | uint32_t size; | | 49 | uint32_t size; |
50 | uint32_t count; | | 50 | uint32_t count; |
51 | uint32_t pos; | | 51 | uint32_t pos; |
52 | }; | | 52 | }; |
53 | | | 53 | |
54 | struct hid_item { | | 54 | struct hid_item { |
55 | /* Global */ | | 55 | /* Global */ |
56 | uint32_t _usage_page; | | 56 | uint32_t _usage_page; |
57 | int32_t logical_minimum; | | 57 | int32_t logical_minimum; |
58 | int32_t logical_maximum; | | 58 | int32_t logical_maximum; |
59 | int32_t physical_minimum; | | 59 | int32_t physical_minimum; |
60 | int32_t physical_maximum; | | 60 | int32_t physical_maximum; |
61 | uint32_t unit_exponent; | | 61 | uint32_t unit_exponent; |
62 | uint32_t unit; | | 62 | uint32_t unit; |
63 | uint32_t report_ID; | | 63 | uint32_t report_ID; |
64 | /* Local */ | | 64 | /* Local */ |
65 | uint32_t usage; | | 65 | uint32_t usage; |
66 | uint32_t usage_minimum; | | 66 | uint32_t usage_minimum; |
67 | uint32_t usage_maximum; | | 67 | uint32_t usage_maximum; |
68 | uint32_t designator_index; | | 68 | uint32_t designator_index; |
69 | uint32_t designator_minimum; | | 69 | uint32_t designator_minimum; |
70 | uint32_t designator_maximum; | | 70 | uint32_t designator_maximum; |
71 | uint32_t string_index; | | 71 | uint32_t string_index; |
72 | uint32_t string_minimum; | | 72 | uint32_t string_minimum; |
73 | uint32_t string_maximum; | | 73 | uint32_t string_maximum; |
74 | uint32_t set_delimiter; | | 74 | uint32_t set_delimiter; |
75 | /* Misc */ | | 75 | /* Misc */ |
76 | uint32_t collection; | | 76 | uint32_t collection; |
77 | int collevel; | | 77 | int collevel; |
78 | enum hid_kind kind; | | 78 | enum hid_kind kind; |
79 | uint32_t flags; | | 79 | uint32_t flags; |
80 | /* Location */ | | 80 | /* Location */ |
81 | struct hid_location loc; | | 81 | struct hid_location loc; |
82 | /* */ | | 82 | /* */ |
83 | struct hid_item *next; | | 83 | struct hid_item *next; |
84 | }; | | 84 | }; |
85 | | | 85 | |
86 | struct hid_data *hid_start_parse(const void *, int, enum hid_kind); | | 86 | struct hid_data *hid_start_parse(const void *, int, enum hid_kind); |
87 | void hid_end_parse(struct hid_data *); | | 87 | void hid_end_parse(struct hid_data *); |
88 | int hid_get_item(struct hid_data *, struct hid_item *); | | 88 | int hid_get_item(struct hid_data *, struct hid_item *); |
89 | int hid_report_size(const void *, int, enum hid_kind, uint8_t); | | 89 | int hid_report_size(const void *, int, enum hid_kind, uint8_t); |
90 | int hid_locate(const void *, int, uint32_t, uint8_t, enum hid_kind, | | 90 | int hid_locate(const void *, int, uint32_t, uint8_t, enum hid_kind, |
91 | struct hid_location *, uint32_t *); | | 91 | struct hid_location *, uint32_t *); |
92 | long hid_get_data(const u_char *, const struct hid_location *); | | 92 | long hid_get_data(const u_char *, const struct hid_location *); |
93 | u_long hid_get_udata(const u_char *, const struct hid_location *); | | 93 | u_long hid_get_udata(const u_char *, const struct hid_location *); |
94 | int hid_is_collection(const void *, int, uint8_t, uint32_t); | | 94 | int hid_is_collection(const void *, int, uint8_t, uint32_t); |
95 | | | 95 | |
96 | #endif /* _KERNEL || _RUMPKERNEL */ | | 96 | #endif /* _KERNEL || _RUMPKERNEL */ |
97 | | | 97 | |
98 | /* Usage pages */ | | 98 | /* Usage pages */ |
99 | #define HUP_UNDEFINED 0x0000 | | 99 | #define HUP_UNDEFINED 0x0000 |
100 | #define HUP_GENERIC_DESKTOP 0x0001 | | 100 | #define HUP_GENERIC_DESKTOP 0x0001 |
101 | #define HUP_SIMULATION 0x0002 | | 101 | #define HUP_SIMULATION 0x0002 |
102 | #define HUP_VR_CONTROLS 0x0003 | | 102 | #define HUP_VR_CONTROLS 0x0003 |
103 | #define HUP_SPORTS_CONTROLS 0x0004 | | 103 | #define HUP_SPORTS_CONTROLS 0x0004 |
104 | #define HUP_GAMING_CONTROLS 0x0005 | | 104 | #define HUP_GAMING_CONTROLS 0x0005 |
105 | #define HUP_KEYBOARD 0x0007 | | 105 | #define HUP_KEYBOARD 0x0007 |
106 | #define HUP_LEDS 0x0008 | | 106 | #define HUP_LEDS 0x0008 |
107 | #define HUP_BUTTON 0x0009 | | 107 | #define HUP_BUTTON 0x0009 |
108 | #define HUP_ORDINALS 0x000a | | 108 | #define HUP_ORDINALS 0x000a |
109 | #define HUP_TELEPHONY 0x000b | | 109 | #define HUP_TELEPHONY 0x000b |
110 | #define HUP_CONSUMER 0x000c | | 110 | #define HUP_CONSUMER 0x000c |
111 | #define HUP_DIGITIZERS 0x000d | | 111 | #define HUP_DIGITIZERS 0x000d |
112 | #define HUP_PHYSICAL_IFACE 0x000e | | 112 | #define HUP_PHYSICAL_IFACE 0x000e |
113 | #define HUP_UNICODE 0x0010 | | 113 | #define HUP_UNICODE 0x0010 |
114 | #define HUP_ALPHANUM_DISPLAY 0x0014 | | 114 | #define HUP_ALPHANUM_DISPLAY 0x0014 |
115 | #define HUP_MONITOR 0x0080 | | 115 | #define HUP_MONITOR 0x0080 |
116 | #define HUP_MONITOR_ENUM_VAL 0x0081 | | 116 | #define HUP_MONITOR_ENUM_VAL 0x0081 |
117 | #define HUP_VESA_VC 0x0082 | | 117 | #define HUP_VESA_VC 0x0082 |
118 | #define HUP_VESA_CMD 0x0083 | | 118 | #define HUP_VESA_CMD 0x0083 |
119 | #define HUP_POWER 0x0084 | | 119 | #define HUP_POWER 0x0084 |
120 | #define HUP_BATTERY 0x0085 | | 120 | #define HUP_BATTERY 0x0085 |
121 | #define HUP_BARCODE_SCANNER 0x008b | | 121 | #define HUP_BARCODE_SCANNER 0x008b |
122 | #define HUP_SCALE 0x008c | | 122 | #define HUP_SCALE 0x008c |
123 | #define HUP_CAMERA_CONTROL 0x0090 | | 123 | #define HUP_CAMERA_CONTROL 0x0090 |
124 | #define HUP_ARCADE 0x0091 | | 124 | #define HUP_ARCADE 0x0091 |
125 | #define HUP_VENDOR 0x00ff | | 125 | #define HUP_VENDOR 0x00ff |
126 | #define HUP_FIDO 0xf1d0 | | 126 | #define HUP_FIDO 0xf1d0U |
127 | #define HUP_MICROSOFT 0xff00 | | 127 | #define HUP_MICROSOFT 0xff00U |
128 | /* XXX compat */ | | 128 | /* XXX compat */ |
129 | #define HUP_APPLE 0x00ff | | 129 | #define HUP_APPLE 0x00ff |
130 | #define HUP_WACOM 0xff00 | | 130 | #define HUP_WACOM 0xff00 |
131 | | | 131 | |
132 | /* Usages, Power Device */ | | 132 | /* Usages, Power Device */ |
133 | #define HUP_INAME 0x0001 | | 133 | #define HUP_INAME 0x0001 |
134 | #define HUP_PRESENT_STATUS 0x0002 | | 134 | #define HUP_PRESENT_STATUS 0x0002 |
135 | #define HUP_CHANGED_STATUS 0x0003 | | 135 | #define HUP_CHANGED_STATUS 0x0003 |
136 | #define HUP_UPS 0x0004 | | 136 | #define HUP_UPS 0x0004 |
137 | #define HUP_POWER_SUPPLY 0x0005 | | 137 | #define HUP_POWER_SUPPLY 0x0005 |
138 | #define HUP_BATTERY_SYSTEM 0x0010 | | 138 | #define HUP_BATTERY_SYSTEM 0x0010 |
139 | #define HUP_BATTERY_SYSTEM_ID 0x0011 | | 139 | #define HUP_BATTERY_SYSTEM_ID 0x0011 |
140 | #define HUP_PD_BATTERY 0x0012 | | 140 | #define HUP_PD_BATTERY 0x0012 |
141 | #define HUP_BATTERY_ID 0x0013 | | 141 | #define HUP_BATTERY_ID 0x0013 |
142 | #define HUP_CHARGER 0x0014 | | 142 | #define HUP_CHARGER 0x0014 |
143 | #define HUP_CHARGER_ID 0x0015 | | 143 | #define HUP_CHARGER_ID 0x0015 |
144 | #define HUP_POWER_CONVERTER 0x0016 | | 144 | #define HUP_POWER_CONVERTER 0x0016 |
145 | #define HUP_POWER_CONVERTER_ID 0x0017 | | 145 | #define HUP_POWER_CONVERTER_ID 0x0017 |
146 | #define HUP_OUTLET_SYSTEM 0x0018 | | 146 | #define HUP_OUTLET_SYSTEM 0x0018 |
147 | #define HUP_OUTLET_SYSTEM_ID 0x0019 | | 147 | #define HUP_OUTLET_SYSTEM_ID 0x0019 |
148 | #define HUP_INPUT 0x001a | | 148 | #define HUP_INPUT 0x001a |
149 | #define HUP_INPUT_ID 0x001b | | 149 | #define HUP_INPUT_ID 0x001b |
150 | #define HUP_OUTPUT 0x001c | | 150 | #define HUP_OUTPUT 0x001c |
151 | #define HUP_OUTPUT_ID 0x001d | | 151 | #define HUP_OUTPUT_ID 0x001d |
152 | #define HUP_FLOW 0x001e | | 152 | #define HUP_FLOW 0x001e |
153 | #define HUP_FLOW_ID 0x001f | | 153 | #define HUP_FLOW_ID 0x001f |
154 | #define HUP_OUTLET 0x0020 | | 154 | #define HUP_OUTLET 0x0020 |
155 | #define HUP_OUTLET_ID 0x0021 | | 155 | #define HUP_OUTLET_ID 0x0021 |
156 | #define HUP_GANG 0x0022 | | 156 | #define HUP_GANG 0x0022 |
157 | #define HUP_GANG_ID 0x0023 | | 157 | #define HUP_GANG_ID 0x0023 |
158 | #define HUP_POWER_SUMMARY 0x0024 | | 158 | #define HUP_POWER_SUMMARY 0x0024 |
159 | #define HUP_POWER_SUMMARY_ID 0x0025 | | 159 | #define HUP_POWER_SUMMARY_ID 0x0025 |
160 | #define HUP_VOLTAGE 0x0030 | | 160 | #define HUP_VOLTAGE 0x0030 |
161 | #define HUP_CURRENT 0x0031 | | 161 | #define HUP_CURRENT 0x0031 |
162 | #define HUP_FREQUENCY 0x0032 | | 162 | #define HUP_FREQUENCY 0x0032 |
163 | #define HUP_APPARENT_POWER 0x0033 | | 163 | #define HUP_APPARENT_POWER 0x0033 |
164 | #define HUP_ACTIVE_POWER 0x0034 | | 164 | #define HUP_ACTIVE_POWER 0x0034 |
165 | #define HUP_PERCENT_LOAD 0x0035 | | 165 | #define HUP_PERCENT_LOAD 0x0035 |
166 | #define HUP_TEMPERATURE 0x0036 | | 166 | #define HUP_TEMPERATURE 0x0036 |
167 | #define HUP_HUMIDITY 0x0037 | | 167 | #define HUP_HUMIDITY 0x0037 |
168 | #define HUP_BADCOUNT 0x0038 | | 168 | #define HUP_BADCOUNT 0x0038 |
169 | #define HUP_CONFIG_VOLTAGE 0x0040 | | 169 | #define HUP_CONFIG_VOLTAGE 0x0040 |
170 | #define HUP_CONFIG_CURRENT 0x0041 | | 170 | #define HUP_CONFIG_CURRENT 0x0041 |
171 | #define HUP_CONFIG_FREQUENCY 0x0042 | | 171 | #define HUP_CONFIG_FREQUENCY 0x0042 |
172 | #define HUP_CONFIG_APP_POWER 0x0043 | | 172 | #define HUP_CONFIG_APP_POWER 0x0043 |
173 | #define HUP_CONFIG_ACT_POWER 0x0044 | | 173 | #define HUP_CONFIG_ACT_POWER 0x0044 |
174 | #define HUP_CONFIG_PERCENT_LOAD 0x0045 | | 174 | #define HUP_CONFIG_PERCENT_LOAD 0x0045 |
175 | #define HUP_CONFIG_TEMPERATURE 0x0046 | | 175 | #define HUP_CONFIG_TEMPERATURE 0x0046 |
176 | #define HUP_CONFIG_HUMIDITY 0x0047 | | 176 | #define HUP_CONFIG_HUMIDITY 0x0047 |
177 | #define HUP_SWITCHON_CONTROL 0x0050 | | 177 | #define HUP_SWITCHON_CONTROL 0x0050 |
178 | #define HUP_SWITCHOFF_CONTROL 0x0051 | | 178 | #define HUP_SWITCHOFF_CONTROL 0x0051 |
179 | #define HUP_TOGGLE_CONTROL 0x0052 | | 179 | #define HUP_TOGGLE_CONTROL 0x0052 |
180 | #define HUP_LOW_VOLT_TRANSF 0x0053 | | 180 | #define HUP_LOW_VOLT_TRANSF 0x0053 |
181 | #define HUP_HIGH_VOLT_TRANSF 0x0054 | | 181 | #define HUP_HIGH_VOLT_TRANSF 0x0054 |
182 | #define HUP_DELAYBEFORE_REBOOT 0x0055 | | 182 | #define HUP_DELAYBEFORE_REBOOT 0x0055 |
183 | #define HUP_DELAYBEFORE_STARTUP 0x0056 | | 183 | #define HUP_DELAYBEFORE_STARTUP 0x0056 |
184 | #define HUP_DELAYBEFORE_SHUTDWN 0x0057 | | 184 | #define HUP_DELAYBEFORE_SHUTDWN 0x0057 |
185 | #define HUP_TEST 0x0058 | | 185 | #define HUP_TEST 0x0058 |
186 | #define HUP_MODULE_RESET 0x0059 | | 186 | #define HUP_MODULE_RESET 0x0059 |
187 | #define HUP_AUDIBLE_ALRM_CTL 0x005a | | 187 | #define HUP_AUDIBLE_ALRM_CTL 0x005a |
188 | #define HUP_PRESENT 0x0060 | | 188 | #define HUP_PRESENT 0x0060 |
189 | #define HUP_GOOD 0x0061 | | 189 | #define HUP_GOOD 0x0061 |
190 | #define HUP_INTERNAL_FAILURE 0x0062 | | 190 | #define HUP_INTERNAL_FAILURE 0x0062 |
191 | #define HUP_PD_VOLT_OUTOF_RANGE 0x0063 | | 191 | #define HUP_PD_VOLT_OUTOF_RANGE 0x0063 |
192 | #define HUP_FREQ_OUTOFRANGE 0x0064 | | 192 | #define HUP_FREQ_OUTOFRANGE 0x0064 |
193 | #define HUP_OVERLOAD 0x0065 | | 193 | #define HUP_OVERLOAD 0x0065 |
194 | #define HUP_OVERCHARGED 0x0066 | | 194 | #define HUP_OVERCHARGED 0x0066 |
195 | #define HUP_OVERTEMPERATURE 0x0067 | | 195 | #define HUP_OVERTEMPERATURE 0x0067 |
196 | #define HUP_SHUTDOWN_REQUESTED 0x0068 | | 196 | #define HUP_SHUTDOWN_REQUESTED 0x0068 |
197 | #define HUP_SHUTDOWN_IMMINENT 0x0069 | | 197 | #define HUP_SHUTDOWN_IMMINENT 0x0069 |
198 | #define HUP_SWITCH_ON_OFF 0x006b | | 198 | #define HUP_SWITCH_ON_OFF 0x006b |
199 | #define HUP_SWITCHABLE 0x006c | | 199 | #define HUP_SWITCHABLE 0x006c |
200 | #define HUP_USED 0x006d | | 200 | #define HUP_USED 0x006d |
201 | #define HUP_BOOST 0x006e | | 201 | #define HUP_BOOST 0x006e |
202 | #define HUP_BUCK 0x006f | | 202 | #define HUP_BUCK 0x006f |
203 | #define HUP_INITIALIZED 0x0070 | | 203 | #define HUP_INITIALIZED 0x0070 |
204 | #define HUP_TESTED 0x0071 | | 204 | #define HUP_TESTED 0x0071 |
205 | #define HUP_AWAITING_POWER 0x0072 | | 205 | #define HUP_AWAITING_POWER 0x0072 |
206 | #define HUP_COMMUNICATION_LOST 0x0073 | | 206 | #define HUP_COMMUNICATION_LOST 0x0073 |
207 | #define HUP_IMANUFACTURER 0x00fd | | 207 | #define HUP_IMANUFACTURER 0x00fd |
208 | #define HUP_IPRODUCT 0x00fe | | 208 | #define HUP_IPRODUCT 0x00fe |
209 | #define HUP_ISERIALNUMBER 0x00ff | | 209 | #define HUP_ISERIALNUMBER 0x00ff |
210 | | | 210 | |
211 | /* Usages, Battery */ | | 211 | /* Usages, Battery */ |
212 | #define HUB_SMB_BATTERY_MODE 0x0001 | | 212 | #define HUB_SMB_BATTERY_MODE 0x0001 |
213 | #define HUB_SMB_BATTERY_STATUS 0x0002 | | 213 | #define HUB_SMB_BATTERY_STATUS 0x0002 |
214 | #define HUB_SMB_ALARM_WARNING 0x0003 | | 214 | #define HUB_SMB_ALARM_WARNING 0x0003 |
215 | #define HUB_SMB_CHARGER_MODE 0x0004 | | 215 | #define HUB_SMB_CHARGER_MODE 0x0004 |
216 | #define HUB_SMB_CHARGER_STATUS 0x0005 | | 216 | #define HUB_SMB_CHARGER_STATUS 0x0005 |
217 | #define HUB_SMB_CHARGER_SPECINF 0x0006 | | 217 | #define HUB_SMB_CHARGER_SPECINF 0x0006 |
218 | #define HUB_SMB_SELECTR_STATE 0x0007 | | 218 | #define HUB_SMB_SELECTR_STATE 0x0007 |
219 | #define HUB_SMB_SELECTR_PRESETS 0x0008 | | 219 | #define HUB_SMB_SELECTR_PRESETS 0x0008 |
220 | #define HUB_SMB_SELECTR_INFO 0x0009 | | 220 | #define HUB_SMB_SELECTR_INFO 0x0009 |
221 | #define HUB_SMB_OPT_MFGFUNC1 0x0010 | | 221 | #define HUB_SMB_OPT_MFGFUNC1 0x0010 |
222 | #define HUB_SMB_OPT_MFGFUNC2 0x0011 | | 222 | #define HUB_SMB_OPT_MFGFUNC2 0x0011 |
223 | #define HUB_SMB_OPT_MFGFUNC3 0x0012 | | 223 | #define HUB_SMB_OPT_MFGFUNC3 0x0012 |
224 | #define HUB_SMB_OPT_MFGFUNC4 0x0013 | | 224 | #define HUB_SMB_OPT_MFGFUNC4 0x0013 |
225 | #define HUB_SMB_OPT_MFGFUNC5 0x0014 | | 225 | #define HUB_SMB_OPT_MFGFUNC5 0x0014 |
226 | #define HUB_CONNECTIONTOSMBUS 0x0015 | | 226 | #define HUB_CONNECTIONTOSMBUS 0x0015 |
227 | #define HUB_OUTPUT_CONNECTION 0x0016 | | 227 | #define HUB_OUTPUT_CONNECTION 0x0016 |
228 | #define HUB_CHARGER_CONNECTION 0x0017 | | 228 | #define HUB_CHARGER_CONNECTION 0x0017 |
229 | #define HUB_BATTERY_INSERTION 0x0018 | | 229 | #define HUB_BATTERY_INSERTION 0x0018 |
230 | #define HUB_USENEXT 0x0019 | | 230 | #define HUB_USENEXT 0x0019 |
231 | #define HUB_OKTOUSE 0x001a | | 231 | #define HUB_OKTOUSE 0x001a |
232 | #define HUB_BATTERY_SUPPORTED 0x001b | | 232 | #define HUB_BATTERY_SUPPORTED 0x001b |
233 | #define HUB_SELECTOR_REVISION 0x001c | | 233 | #define HUB_SELECTOR_REVISION 0x001c |
234 | #define HUB_CHARGING_INDICATOR 0x001d | | 234 | #define HUB_CHARGING_INDICATOR 0x001d |
235 | #define HUB_MANUFACTURER_ACCESS 0x0028 | | 235 | #define HUB_MANUFACTURER_ACCESS 0x0028 |
236 | #define HUB_REM_CAPACITY_LIM 0x0029 | | 236 | #define HUB_REM_CAPACITY_LIM 0x0029 |
237 | #define HUB_REM_TIME_LIM 0x002a | | 237 | #define HUB_REM_TIME_LIM 0x002a |
238 | #define HUB_ATRATE 0x002b | | 238 | #define HUB_ATRATE 0x002b |
239 | #define HUB_CAPACITY_MODE 0x002c | | 239 | #define HUB_CAPACITY_MODE 0x002c |
240 | #define HUB_BCAST_TO_CHARGER 0x002d | | 240 | #define HUB_BCAST_TO_CHARGER 0x002d |
241 | #define HUB_PRIMARY_BATTERY 0x002e | | 241 | #define HUB_PRIMARY_BATTERY 0x002e |
242 | #define HUB_CHANGE_CONTROLLER 0x002f | | 242 | #define HUB_CHANGE_CONTROLLER 0x002f |
243 | #define HUB_TERMINATE_CHARGE 0x0040 | | 243 | #define HUB_TERMINATE_CHARGE 0x0040 |
244 | #define HUB_TERMINATE_DISCHARGE 0x0041 | | 244 | #define HUB_TERMINATE_DISCHARGE 0x0041 |
245 | #define HUB_BELOW_REM_CAP_LIM 0x0042 | | 245 | #define HUB_BELOW_REM_CAP_LIM 0x0042 |
246 | #define HUB_REM_TIME_LIM_EXP 0x0043 | | 246 | #define HUB_REM_TIME_LIM_EXP 0x0043 |
247 | #define HUB_CHARGING 0x0044 | | 247 | #define HUB_CHARGING 0x0044 |
248 | #define HUB_DISCHARGING 0x0045 | | 248 | #define HUB_DISCHARGING 0x0045 |
249 | #define HUB_FULLY_CHARGED 0x0046 | | 249 | #define HUB_FULLY_CHARGED 0x0046 |
250 | #define HUB_FULLY_DISCHARGED 0x0047 | | 250 | #define HUB_FULLY_DISCHARGED 0x0047 |
251 | #define HUB_CONDITIONING_FLAG 0x0048 | | 251 | #define HUB_CONDITIONING_FLAG 0x0048 |
252 | #define HUB_ATRATE_OK 0x0049 | | 252 | #define HUB_ATRATE_OK 0x0049 |
253 | #define HUB_SMB_ERROR_CODE 0x004a | | 253 | #define HUB_SMB_ERROR_CODE 0x004a |
254 | #define HUB_NEED_REPLACEMENT 0x004b | | 254 | #define HUB_NEED_REPLACEMENT 0x004b |
255 | #define HUB_ATRATE_TIMETOFULL 0x0060 | | 255 | #define HUB_ATRATE_TIMETOFULL 0x0060 |
256 | #define HUB_ATRATE_TIMETOEMPTY 0x0061 | | 256 | #define HUB_ATRATE_TIMETOEMPTY 0x0061 |
257 | #define HUB_AVERAGE_CURRENT 0x0062 | | 257 | #define HUB_AVERAGE_CURRENT 0x0062 |
258 | #define HUB_MAXERROR 0x0063 | | 258 | #define HUB_MAXERROR 0x0063 |
259 | #define HUB_REL_STATEOF_CHARGE 0x0064 | | 259 | #define HUB_REL_STATEOF_CHARGE 0x0064 |
260 | #define HUB_ABS_STATEOF_CHARGE 0x0065 | | 260 | #define HUB_ABS_STATEOF_CHARGE 0x0065 |
261 | #define HUB_REM_CAPACITY 0x0066 | | 261 | #define HUB_REM_CAPACITY 0x0066 |
262 | #define HUB_FULLCHARGE_CAPACITY 0x0067 | | 262 | #define HUB_FULLCHARGE_CAPACITY 0x0067 |
263 | #define HUB_RUNTIMETO_EMPTY 0x0068 | | 263 | #define HUB_RUNTIMETO_EMPTY 0x0068 |
264 | #define HUB_AVERAGETIMETO_EMPTY 0x0069 | | 264 | #define HUB_AVERAGETIMETO_EMPTY 0x0069 |
265 | #define HUB_AVERAGETIMETO_FULL 0x006a | | 265 | #define HUB_AVERAGETIMETO_FULL 0x006a |
266 | #define HUB_CYCLECOUNT 0x006b | | 266 | #define HUB_CYCLECOUNT 0x006b |
267 | #define HUB_BATTPACKMODEL_LEVEL 0x0080 | | 267 | #define HUB_BATTPACKMODEL_LEVEL 0x0080 |
268 | #define HUB_INTERNAL_CHARGE_CTL 0x0081 | | 268 | #define HUB_INTERNAL_CHARGE_CTL 0x0081 |
269 | #define HUB_PRIMARY_BATTERY_SUP 0x0082 | | 269 | #define HUB_PRIMARY_BATTERY_SUP 0x0082 |
270 | #define HUB_DESIGN_CAPACITY 0x0083 | | 270 | #define HUB_DESIGN_CAPACITY 0x0083 |
271 | #define HUB_SPECIFICATION_INFO 0x0084 | | 271 | #define HUB_SPECIFICATION_INFO 0x0084 |
272 | #define HUB_MANUFACTURER_DATE 0x0085 | | 272 | #define HUB_MANUFACTURER_DATE 0x0085 |
273 | #define HUB_SERIAL_NUMBER 0x0086 | | 273 | #define HUB_SERIAL_NUMBER 0x0086 |
274 | #define HUB_IMANUFACTURERNAME 0x0087 | | 274 | #define HUB_IMANUFACTURERNAME 0x0087 |
275 | #define HUB_IDEVICENAME 0x0088 | | 275 | #define HUB_IDEVICENAME 0x0088 |
276 | #define HUB_IDEVICECHEMISTERY 0x0089 | | 276 | #define HUB_IDEVICECHEMISTERY 0x0089 |
277 | #define HUB_MANUFACTURERDATA 0x008a | | 277 | #define HUB_MANUFACTURERDATA 0x008a |
278 | #define HUB_RECHARGABLE 0x008b | | 278 | #define HUB_RECHARGABLE 0x008b |
279 | #define HUB_WARN_CAPACITY_LIM 0x008c | | 279 | #define HUB_WARN_CAPACITY_LIM 0x008c |
280 | #define HUB_CAPACITY_GRANUL1 0x008d | | 280 | #define HUB_CAPACITY_GRANUL1 0x008d |
281 | #define HUB_CAPACITY_GRANUL2 0x008e | | 281 | #define HUB_CAPACITY_GRANUL2 0x008e |
282 | #define HUB_IOEM_INFORMATION 0x008f | | 282 | #define HUB_IOEM_INFORMATION 0x008f |
283 | #define HUB_INHIBIT_CHARGE 0x00c0 | | 283 | #define HUB_INHIBIT_CHARGE 0x00c0 |
284 | #define HUB_ENABLE_POLLING 0x00c1 | | 284 | #define HUB_ENABLE_POLLING 0x00c1 |
285 | #define HUB_RESTORE_TO_ZERO 0x00c2 | | 285 | #define HUB_RESTORE_TO_ZERO 0x00c2 |
286 | #define HUB_AC_PRESENT 0x00d0 | | 286 | #define HUB_AC_PRESENT 0x00d0 |
287 | #define HUB_BATTERY_PRESENT 0x00d1 | | 287 | #define HUB_BATTERY_PRESENT 0x00d1 |
288 | #define HUB_POWER_FAIL 0x00d2 | | 288 | #define HUB_POWER_FAIL 0x00d2 |
289 | #define HUB_ALARM_INHIBITED 0x00d3 | | 289 | #define HUB_ALARM_INHIBITED 0x00d3 |
290 | #define HUB_THERMISTOR_UNDRANGE 0x00d4 | | 290 | #define HUB_THERMISTOR_UNDRANGE 0x00d4 |
291 | #define HUB_THERMISTOR_HOT 0x00d5 | | 291 | #define HUB_THERMISTOR_HOT 0x00d5 |
292 | #define HUB_THERMISTOR_COLD 0x00d6 | | 292 | #define HUB_THERMISTOR_COLD 0x00d6 |
293 | #define HUB_THERMISTOR_OVERANGE 0x00d7 | | 293 | #define HUB_THERMISTOR_OVERANGE 0x00d7 |
294 | #define HUB_BS_VOLT_OUTOF_RANGE 0x00d8 | | 294 | #define HUB_BS_VOLT_OUTOF_RANGE 0x00d8 |
295 | #define HUB_BS_CURR_OUTOF_RANGE 0x00d9 | | 295 | #define HUB_BS_CURR_OUTOF_RANGE 0x00d9 |
296 | #define HUB_BS_CURR_NOT_REGULTD 0x00da | | 296 | #define HUB_BS_CURR_NOT_REGULTD 0x00da |
297 | #define HUB_BS_VOLT_NOT_REGULTD 0x00db | | 297 | #define HUB_BS_VOLT_NOT_REGULTD 0x00db |
298 | #define HUB_MASTER_MODE 0x00dc | | 298 | #define HUB_MASTER_MODE 0x00dc |
299 | #define HUB_CHARGER_SELECTR_SUP 0x00f0 | | 299 | #define HUB_CHARGER_SELECTR_SUP 0x00f0 |
300 | #define HUB_CHARGER_SPEC 0x00f1 | | 300 | #define HUB_CHARGER_SPEC 0x00f1 |
301 | #define HUB_LEVEL2 0x00f2 | | 301 | #define HUB_LEVEL2 0x00f2 |
302 | #define HUB_LEVEL3 0x00f3 | | 302 | #define HUB_LEVEL3 0x00f3 |
303 | | | 303 | |
304 | /* Usages, generic desktop */ | | 304 | /* Usages, generic desktop */ |
305 | #define HUG_POINTER 0x0001 | | 305 | #define HUG_POINTER 0x0001 |
306 | #define HUG_MOUSE 0x0002 | | 306 | #define HUG_MOUSE 0x0002 |
307 | #define HUG_FN_KEY 0x0003 | | 307 | #define HUG_FN_KEY 0x0003 |
308 | #define HUG_JOYSTICK 0x0004 | | 308 | #define HUG_JOYSTICK 0x0004 |
309 | #define HUG_GAME_PAD 0x0005 | | 309 | #define HUG_GAME_PAD 0x0005 |
310 | #define HUG_KEYBOARD 0x0006 | | 310 | #define HUG_KEYBOARD 0x0006 |
311 | #define HUG_KEYPAD 0x0007 | | 311 | #define HUG_KEYPAD 0x0007 |
312 | #define HUG_X 0x0030 | | 312 | #define HUG_X 0x0030 |
313 | #define HUG_Y 0x0031 | | 313 | #define HUG_Y 0x0031 |
314 | #define HUG_Z 0x0032 | | 314 | #define HUG_Z 0x0032 |
315 | #define HUG_RX 0x0033 | | 315 | #define HUG_RX 0x0033 |
316 | #define HUG_RY 0x0034 | | 316 | #define HUG_RY 0x0034 |
317 | #define HUG_RZ 0x0035 | | 317 | #define HUG_RZ 0x0035 |
318 | #define HUG_SLIDER 0x0036 | | 318 | #define HUG_SLIDER 0x0036 |
319 | #define HUG_DIAL 0x0037 | | 319 | #define HUG_DIAL 0x0037 |
320 | #define HUG_WHEEL 0x0038 | | 320 | #define HUG_WHEEL 0x0038 |
321 | #define HUG_HAT_SWITCH 0x0039 | | 321 | #define HUG_HAT_SWITCH 0x0039 |
322 | #define HUG_COUNTED_BUFFER 0x003a | | 322 | #define HUG_COUNTED_BUFFER 0x003a |
323 | #define HUG_BYTE_COUNT 0x003b | | 323 | #define HUG_BYTE_COUNT 0x003b |
324 | #define HUG_MOTION_WAKEUP 0x003c | | 324 | #define HUG_MOTION_WAKEUP 0x003c |
325 | #define HUG_VX 0x0040 | | 325 | #define HUG_VX 0x0040 |
326 | #define HUG_VY 0x0041 | | 326 | #define HUG_VY 0x0041 |
327 | #define HUG_VZ 0x0042 | | 327 | #define HUG_VZ 0x0042 |
328 | #define HUG_VBRX 0x0043 | | 328 | #define HUG_VBRX 0x0043 |
329 | #define HUG_VBRY 0x0044 | | 329 | #define HUG_VBRY 0x0044 |
330 | #define HUG_VBRZ 0x0045 | | 330 | #define HUG_VBRZ 0x0045 |
331 | #define HUG_VNO 0x0046 | | 331 | #define HUG_VNO 0x0046 |
332 | #define HUG_TWHEEL 0x0048 | | 332 | #define HUG_TWHEEL 0x0048 |
333 | #define HUG_SYSTEM_CONTROL 0x0080 | | 333 | #define HUG_SYSTEM_CONTROL 0x0080 |
334 | #define HUG_SYSTEM_POWER_DOWN 0x0081 | | 334 | #define HUG_SYSTEM_POWER_DOWN 0x0081 |
335 | #define HUG_SYSTEM_SLEEP 0x0082 | | 335 | #define HUG_SYSTEM_SLEEP 0x0082 |
336 | #define HUG_SYSTEM_WAKEUP 0x0083 | | 336 | #define HUG_SYSTEM_WAKEUP 0x0083 |
337 | #define HUG_SYSTEM_CONTEXT_MENU 0x0084 | | 337 | #define HUG_SYSTEM_CONTEXT_MENU 0x0084 |
338 | #define HUG_SYSTEM_MAIN_MENU 0x0085 | | 338 | #define HUG_SYSTEM_MAIN_MENU 0x0085 |
339 | #define HUG_SYSTEM_APP_MENU 0x0086 | | 339 | #define HUG_SYSTEM_APP_MENU 0x0086 |
340 | #define HUG_SYSTEM_MENU_HELP 0x0087 | | 340 | #define HUG_SYSTEM_MENU_HELP 0x0087 |
341 | #define HUG_SYSTEM_MENU_EXIT 0x0088 | | 341 | #define HUG_SYSTEM_MENU_EXIT 0x0088 |
342 | #define HUG_SYSTEM_MENU_SELECT 0x0089 | | 342 | #define HUG_SYSTEM_MENU_SELECT 0x0089 |
343 | #define HUG_SYSTEM_MENU_RIGHT 0x008a | | 343 | #define HUG_SYSTEM_MENU_RIGHT 0x008a |
344 | #define HUG_SYSTEM_MENU_LEFT 0x008b | | 344 | #define HUG_SYSTEM_MENU_LEFT 0x008b |
345 | #define HUG_SYSTEM_MENU_UP 0x008c | | 345 | #define HUG_SYSTEM_MENU_UP 0x008c |
346 | #define HUG_SYSTEM_MENU_DOWN 0x008d | | 346 | #define HUG_SYSTEM_MENU_DOWN 0x008d |
347 | | | 347 | |
348 | /* Usages, Digitizers */ | | 348 | /* Usages, Digitizers */ |
349 | #define HUD_UNDEFINED 0x0000 | | 349 | #define HUD_UNDEFINED 0x0000 |
350 | #define HUD_DIGITIZER 0x0001 | | 350 | #define HUD_DIGITIZER 0x0001 |
351 | #define HUD_PEN 0x0002 | | 351 | #define HUD_PEN 0x0002 |
352 | #define HUD_TOUCH_SCREEN 0x0004 | | 352 | #define HUD_TOUCH_SCREEN 0x0004 |
353 | #define HUD_TOUCHPAD 0x0005 | | 353 | #define HUD_TOUCHPAD 0x0005 |
354 | #define HUD_CONFIG 0x000e | | 354 | #define HUD_CONFIG 0x000e |
355 | #define HUD_FINGER 0x0022 | | 355 | #define HUD_FINGER 0x0022 |
356 | #define HUD_TIP_PRESSURE 0x0030 | | 356 | #define HUD_TIP_PRESSURE 0x0030 |
357 | #define HUD_BARREL_PRESSURE 0x0031 | | 357 | #define HUD_BARREL_PRESSURE 0x0031 |
358 | #define HUD_IN_RANGE 0x0032 | | 358 | #define HUD_IN_RANGE 0x0032 |
359 | #define HUD_TOUCH 0x0033 | | 359 | #define HUD_TOUCH 0x0033 |
360 | #define HUD_UNTOUCH 0x0034 | | 360 | #define HUD_UNTOUCH 0x0034 |
361 | #define HUD_TAP 0x0035 | | 361 | #define HUD_TAP 0x0035 |
362 | #define HUD_QUALITY 0x0036 | | 362 | #define HUD_QUALITY 0x0036 |
363 | #define HUD_DATA_VALID 0x0037 | | 363 | #define HUD_DATA_VALID 0x0037 |
364 | #define HUD_TRANSDUCER_INDEX 0x0038 | | 364 | #define HUD_TRANSDUCER_INDEX 0x0038 |
365 | #define HUD_TABLET_FKEYS 0x0039 | | 365 | #define HUD_TABLET_FKEYS 0x0039 |
366 | #define HUD_PROGRAM_CHANGE_KEYS 0x003a | | 366 | #define HUD_PROGRAM_CHANGE_KEYS 0x003a |
367 | #define HUD_BATTERY_STRENGTH 0x003b | | 367 | #define HUD_BATTERY_STRENGTH 0x003b |
368 | #define HUD_INVERT 0x003c | | 368 | #define HUD_INVERT 0x003c |
369 | #define HUD_X_TILT 0x003d | | 369 | #define HUD_X_TILT 0x003d |
370 | #define HUD_Y_TILT 0x003e | | 370 | #define HUD_Y_TILT 0x003e |
371 | #define HUD_AZIMUTH 0x003f | | 371 | #define HUD_AZIMUTH 0x003f |
372 | #define HUD_ALTITUDE 0x0040 | | 372 | #define HUD_ALTITUDE 0x0040 |
373 | #define HUD_TWIST 0x0041 | | 373 | #define HUD_TWIST 0x0041 |
374 | #define HUD_TIP_SWITCH 0x0042 | | 374 | #define HUD_TIP_SWITCH 0x0042 |
375 | #define HUD_SEC_TIP_SWITCH 0x0043 | | 375 | #define HUD_SEC_TIP_SWITCH 0x0043 |
376 | #define HUD_BARREL_SWITCH 0x0044 | | 376 | #define HUD_BARREL_SWITCH 0x0044 |
377 | #define HUD_ERASER 0x0045 | | 377 | #define HUD_ERASER 0x0045 |
378 | #define HUD_TABLET_PICK 0x0046 | | 378 | #define HUD_TABLET_PICK 0x0046 |
379 | #define HUD_CONFIDENCE 0x0047 | | 379 | #define HUD_CONFIDENCE 0x0047 |
380 | #define HUD_WIDTH 0x0048 | | 380 | #define HUD_WIDTH 0x0048 |
381 | #define HUD_HEIGHT 0x0049 | | 381 | #define HUD_HEIGHT 0x0049 |
382 | #define HUD_CONTACTID 0x0051 | | 382 | #define HUD_CONTACTID 0x0051 |
383 | #define HUD_INPUT_MODE 0x0052 | | 383 | #define HUD_INPUT_MODE 0x0052 |
384 | #define HUD_DEVICE_INDEX 0x0053 | | 384 | #define HUD_DEVICE_INDEX 0x0053 |
385 | #define HUD_CONTACTCOUNT 0x0054 | | 385 | #define HUD_CONTACTCOUNT 0x0054 |
386 | #define HUD_CONTACT_MAX 0x0055 | | 386 | #define HUD_CONTACT_MAX 0x0055 |
387 | #define HUD_SCAN_TIME 0x0056 | | 387 | #define HUD_SCAN_TIME 0x0056 |
388 | #define HUD_BUTTON_TYPE 0x0059 | | 388 | #define HUD_BUTTON_TYPE 0x0059 |
389 | | | 389 | |
390 | /* Usages, LED */ | | 390 | /* Usages, LED */ |
391 | #define HUD_LED_NUM_LOCK 0x0001 | | 391 | #define HUD_LED_NUM_LOCK 0x0001 |
392 | #define HUD_LED_CAPS_LOCK 0x0002 | | 392 | #define HUD_LED_CAPS_LOCK 0x0002 |
393 | #define HUD_LED_SCROLL_LOCK 0x0003 | | 393 | #define HUD_LED_SCROLL_LOCK 0x0003 |
394 | #define HUD_LED_COMPOSE 0x0004 | | 394 | #define HUD_LED_COMPOSE 0x0004 |
395 | #define HUD_LED_KANA 0x0005 | | 395 | #define HUD_LED_KANA 0x0005 |
396 | | | 396 | |
397 | /* Usages, Consumer */ | | 397 | /* Usages, Consumer */ |
398 | #define HUC_AC_PAN 0x0238 | | 398 | #define HUC_AC_PAN 0x0238 |
399 | | | 399 | |
400 | /* Usages, FIDO */ | | 400 | /* Usages, FIDO */ |
401 | #define HUF_U2FHID 0x0001 | | 401 | #define HUF_U2FHID 0x0001 |
402 | | | 402 | |
403 | #define HID_USAGE2(p, u) (((p) << 16) | u) | | 403 | #define HID_USAGE2(p, u) (((p) << 16) | u) |
404 | #define HID_GET_USAGE(u) ((u) & 0xffff) | | 404 | #define HID_GET_USAGE(u) ((u) & 0xffff) |
405 | #define HID_GET_USAGE_PAGE(u) (((u) >> 16) & 0xffff) | | 405 | #define HID_GET_USAGE_PAGE(u) (((u) >> 16) & 0xffff) |
406 | | | 406 | |
407 | #define HCOLL_PHYSICAL 0 | | 407 | #define HCOLL_PHYSICAL 0 |
408 | #define HCOLL_APPLICATION 1 | | 408 | #define HCOLL_APPLICATION 1 |
409 | #define HCOLL_LOGICAL 2 | | 409 | #define HCOLL_LOGICAL 2 |
410 | | | 410 | |
411 | /* Bits in the input/output/feature items */ | | 411 | /* Bits in the input/output/feature items */ |
412 | #define HIO_CONST 0x001 | | 412 | #define HIO_CONST 0x001 |
413 | #define HIO_VARIABLE 0x002 | | 413 | #define HIO_VARIABLE 0x002 |
414 | #define HIO_RELATIVE 0x004 | | 414 | #define HIO_RELATIVE 0x004 |
415 | #define HIO_WRAP 0x008 | | 415 | #define HIO_WRAP 0x008 |
416 | #define HIO_NONLINEAR 0x010 | | 416 | #define HIO_NONLINEAR 0x010 |
417 | #define HIO_NOPREF 0x020 | | 417 | #define HIO_NOPREF 0x020 |
418 | #define HIO_NULLSTATE 0x040 | | 418 | #define HIO_NULLSTATE 0x040 |
419 | #define HIO_VOLATILE 0x080 | | 419 | #define HIO_VOLATILE 0x080 |
420 | #define HIO_BUFBYTES 0x100 | | 420 | #define HIO_BUFBYTES 0x100 |
421 | | | 421 | |
422 | /* Valid values for the country codes */ | | 422 | /* Valid values for the country codes */ |
423 | #define HCC_UNDEFINED 0x00 | | 423 | #define HCC_UNDEFINED 0x00 |
424 | #define HCC_MAX 0x23 | | 424 | #define HCC_MAX 0x23 |
425 | | | 425 | |
426 | #endif /* _HIDHID_H_ */ | | 426 | #endif /* _HIDHID_H_ */ |