1/*
2 * HID Sensors Driver
3 * Copyright (c) 2012, Intel Corporation.
4 *
5 * This program is free software; you can redistribute it and/or modify it
6 * under the terms and conditions of the GNU General Public License,
7 * version 2, as published by the Free Software Foundation.
8 *
9 * This program is distributed in the hope it will be useful, but WITHOUT
10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
12 * more details.
13 *
14 * You should have received a copy of the GNU General Public License along with
15 * this program; if not, write to the Free Software Foundation, Inc.,
16 * 51 Franklin St - Fifth Floor, Boston, MA 02110-1301 USA.
17 *
18 */
19#ifndef _HID_SENSORS_IDS_H
20#define _HID_SENSORS_IDS_H
21
22#define HID_MAX_PHY_DEVICES 0xFF
23
24#define HID_USAGE_SENSOR_COLLECTION 0x200001
25
26/* Accel 3D (200073) */
27#define HID_USAGE_SENSOR_ACCEL_3D 0x200073
28#define HID_USAGE_SENSOR_DATA_ACCELERATION 0x200452
29#define HID_USAGE_SENSOR_ACCEL_X_AXIS 0x200453
30#define HID_USAGE_SENSOR_ACCEL_Y_AXIS 0x200454
31#define HID_USAGE_SENSOR_ACCEL_Z_AXIS 0x200455
32
33/* ALS (200041) */
34#define HID_USAGE_SENSOR_ALS 0x200041
35#define HID_USAGE_SENSOR_DATA_LIGHT 0x2004d0
36#define HID_USAGE_SENSOR_LIGHT_ILLUM 0x2004d1
37
38/* PROX (200011) */
39#define HID_USAGE_SENSOR_PROX 0x200011
40#define HID_USAGE_SENSOR_DATA_PRESENCE 0x2004b0
41#define HID_USAGE_SENSOR_HUMAN_PRESENCE 0x2004b1
42
43/* Pressure (200031) */
44#define HID_USAGE_SENSOR_PRESSURE 0x200031
45#define HID_USAGE_SENSOR_DATA_ATMOSPHERIC_PRESSURE 0x200430
46#define HID_USAGE_SENSOR_ATMOSPHERIC_PRESSURE 0x200431
47
48/* Tempreture (200033) */
49#define HID_USAGE_SENSOR_TEMPERATURE 0x200033
50#define HID_USAGE_SENSOR_DATA_ENVIRONMENTAL_TEMPERATURE 0x200434
51
52/* humidity */
53#define HID_USAGE_SENSOR_HUMIDITY 0x200032
54#define HID_USAGE_SENSOR_ATMOSPHERIC_HUMIDITY 0x200433
55
56/* Gyro 3D: (200076) */
57#define HID_USAGE_SENSOR_GYRO_3D 0x200076
58#define HID_USAGE_SENSOR_DATA_ANGL_VELOCITY 0x200456
59#define HID_USAGE_SENSOR_ANGL_VELOCITY_X_AXIS 0x200457
60#define HID_USAGE_SENSOR_ANGL_VELOCITY_Y_AXIS 0x200458
61#define HID_USAGE_SENSOR_ANGL_VELOCITY_Z_AXIS 0x200459
62
63/* Gravity vector */
64#define HID_USAGE_SENSOR_GRAVITY_VECTOR 0x20007B
65
66/* ORIENTATION: Compass 3D: (200083) */
67#define HID_USAGE_SENSOR_COMPASS_3D 0x200083
68#define HID_USAGE_SENSOR_DATA_ORIENTATION 0x200470
69#define HID_USAGE_SENSOR_ORIENT_MAGN_HEADING 0x200471
70#define HID_USAGE_SENSOR_ORIENT_MAGN_HEADING_X 0x200472
71#define HID_USAGE_SENSOR_ORIENT_MAGN_HEADING_Y 0x200473
72#define HID_USAGE_SENSOR_ORIENT_MAGN_HEADING_Z 0x200474
73
74#define HID_USAGE_SENSOR_ORIENT_COMP_MAGN_NORTH 0x200475
75#define HID_USAGE_SENSOR_ORIENT_COMP_TRUE_NORTH 0x200476
76#define HID_USAGE_SENSOR_ORIENT_MAGN_NORTH 0x200477
77#define HID_USAGE_SENSOR_ORIENT_TRUE_NORTH 0x200478
78
79#define HID_USAGE_SENSOR_ORIENT_DISTANCE 0x200479
80#define HID_USAGE_SENSOR_ORIENT_DISTANCE_X 0x20047A
81#define HID_USAGE_SENSOR_ORIENT_DISTANCE_Y 0x20047B
82#define HID_USAGE_SENSOR_ORIENT_DISTANCE_Z 0x20047C
83#define HID_USAGE_SENSOR_ORIENT_DISTANCE_OUT_OF_RANGE 0x20047D
84
85/* ORIENTATION: Inclinometer 3D: (200086) */
86#define HID_USAGE_SENSOR_INCLINOMETER_3D 0x200086
87#define HID_USAGE_SENSOR_ORIENT_TILT 0x20047E
88#define HID_USAGE_SENSOR_ORIENT_TILT_X 0x20047F
89#define HID_USAGE_SENSOR_ORIENT_TILT_Y 0x200480
90#define HID_USAGE_SENSOR_ORIENT_TILT_Z 0x200481
91
92#define HID_USAGE_SENSOR_DEVICE_ORIENTATION 0x20008A
93#define HID_USAGE_SENSOR_RELATIVE_ORIENTATION 0x20008E
94#define HID_USAGE_SENSOR_GEOMAGNETIC_ORIENTATION 0x2000C1
95#define HID_USAGE_SENSOR_ORIENT_ROTATION_MATRIX 0x200482
96#define HID_USAGE_SENSOR_ORIENT_QUATERNION 0x200483
97#define HID_USAGE_SENSOR_ORIENT_MAGN_FLUX 0x200484
98
99#define HID_USAGE_SENSOR_ORIENT_MAGN_FLUX_X_AXIS 0x200485
100#define HID_USAGE_SENSOR_ORIENT_MAGN_FLUX_Y_AXIS 0x200486
101#define HID_USAGE_SENSOR_ORIENT_MAGN_FLUX_Z_AXIS 0x200487
102
103/* Time (2000a0) */
104#define HID_USAGE_SENSOR_TIME 0x2000a0
105#define HID_USAGE_SENSOR_TIME_YEAR 0x200521
106#define HID_USAGE_SENSOR_TIME_MONTH 0x200522
107#define HID_USAGE_SENSOR_TIME_DAY 0x200523
108#define HID_USAGE_SENSOR_TIME_HOUR 0x200525
109#define HID_USAGE_SENSOR_TIME_MINUTE 0x200526
110#define HID_USAGE_SENSOR_TIME_SECOND 0x200527
111#define HID_USAGE_SENSOR_TIME_TIMESTAMP 0x200529
112
113/* Units */
114#define HID_USAGE_SENSOR_UNITS_NOT_SPECIFIED 0x00
115#define HID_USAGE_SENSOR_UNITS_LUX 0x01
116#define HID_USAGE_SENSOR_UNITS_KELVIN 0x01000100
117#define HID_USAGE_SENSOR_UNITS_FAHRENHEIT 0x03000100
118#define HID_USAGE_SENSOR_UNITS_PASCAL 0xF1E1
119#define HID_USAGE_SENSOR_UNITS_NEWTON 0x11E1
120#define HID_USAGE_SENSOR_UNITS_METERS_PER_SECOND 0x11F0
121#define HID_USAGE_SENSOR_UNITS_METERS_PER_SEC_SQRD 0x11E0
122#define HID_USAGE_SENSOR_UNITS_FARAD 0xE14F2000
123#define HID_USAGE_SENSOR_UNITS_AMPERE 0x01001000
124#define HID_USAGE_SENSOR_UNITS_WATT 0x21d1
125#define HID_USAGE_SENSOR_UNITS_HENRY 0x21E1E000
126#define HID_USAGE_SENSOR_UNITS_OHM 0x21D1E000
127#define HID_USAGE_SENSOR_UNITS_VOLT 0x21D1F000
128#define HID_USAGE_SENSOR_UNITS_HERTZ 0x01F0
129#define HID_USAGE_SENSOR_UNITS_DEGREES_PER_SEC_SQRD 0x14E0
130#define HID_USAGE_SENSOR_UNITS_RADIANS 0x12
131#define HID_USAGE_SENSOR_UNITS_RADIANS_PER_SECOND 0x12F0
132#define HID_USAGE_SENSOR_UNITS_RADIANS_PER_SEC_SQRD 0x12E0
133#define HID_USAGE_SENSOR_UNITS_SECOND 0x0110
134#define HID_USAGE_SENSOR_UNITS_GAUSS 0x01E1F000
135#define HID_USAGE_SENSOR_UNITS_GRAM 0x0101
136#define HID_USAGE_SENSOR_UNITS_CENTIMETER 0x11
137#define HID_USAGE_SENSOR_UNITS_G 0x1A
138#define HID_USAGE_SENSOR_UNITS_MILLISECOND 0x19
139#define HID_USAGE_SENSOR_UNITS_PERCENT 0x17
140#define HID_USAGE_SENSOR_UNITS_DEGREES 0x14
141#define HID_USAGE_SENSOR_UNITS_DEGREES_PER_SECOND 0x15
142
143/* Common selectors */
144#define HID_USAGE_SENSOR_PROP_REPORT_INTERVAL 0x20030E
145#define HID_USAGE_SENSOR_PROP_SENSITIVITY_ABS 0x20030F
146#define HID_USAGE_SENSOR_PROP_SENSITIVITY_RANGE_PCT 0x200310
147#define HID_USAGE_SENSOR_PROP_SENSITIVITY_REL_PCT 0x200311
148#define HID_USAGE_SENSOR_PROP_ACCURACY 0x200312
149#define HID_USAGE_SENSOR_PROP_RESOLUTION 0x200313
150#define HID_USAGE_SENSOR_PROP_RANGE_MAXIMUM 0x200314
151#define HID_USAGE_SENSOR_PROP_RANGE_MINIMUM 0x200315
152#define HID_USAGE_SENSOR_PROP_REPORT_STATE 0x200316
153#define HID_USAGE_SENSOR_PROY_POWER_STATE 0x200319
154
155/* Batch mode selectors */
156#define HID_USAGE_SENSOR_PROP_REPORT_LATENCY 0x20031B
157
158/* Per data field properties */
159#define HID_USAGE_SENSOR_DATA_MOD_NONE 0x00
160#define HID_USAGE_SENSOR_DATA_MOD_CHANGE_SENSITIVITY_ABS 0x1000
161
162/* Power state enumerations */
163#define HID_USAGE_SENSOR_PROP_POWER_STATE_UNDEFINED_ENUM 0x200850
164#define HID_USAGE_SENSOR_PROP_POWER_STATE_D0_FULL_POWER_ENUM 0x200851
165#define HID_USAGE_SENSOR_PROP_POWER_STATE_D1_LOW_POWER_ENUM 0x200852
166#define HID_USAGE_SENSOR_PROP_POWER_STATE_D2_STANDBY_WITH_WAKE_ENUM 0x200853
167#define HID_USAGE_SENSOR_PROP_POWER_STATE_D3_SLEEP_WITH_WAKE_ENUM 0x200854
168#define HID_USAGE_SENSOR_PROP_POWER_STATE_D4_POWER_OFF_ENUM 0x200855
169
170/* Report State enumerations */
171#define HID_USAGE_SENSOR_PROP_REPORTING_STATE_NO_EVENTS_ENUM 0x200840
172#define HID_USAGE_SENSOR_PROP_REPORTING_STATE_ALL_EVENTS_ENUM 0x200841
173
174#endif
175