• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1  /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2  /* industrial I/O data types needed both in and out of kernel
3   *
4   * Copyright (c) 2008 Jonathan Cameron
5   *
6   * This program is free software; you can redistribute it and/or modify it
7   * under the terms of the GNU General Public License version 2 as published by
8   * the Free Software Foundation.
9   */
10  
11  #ifndef _UAPI_IIO_TYPES_H_
12  #define _UAPI_IIO_TYPES_H_
13  
14  enum iio_chan_type {
15  	IIO_VOLTAGE,
16  	IIO_CURRENT,
17  	IIO_POWER,
18  	IIO_ACCEL,
19  	IIO_ANGL_VEL,
20  	IIO_MAGN,
21  	IIO_LIGHT,
22  	IIO_INTENSITY,
23  	IIO_PROXIMITY,
24  	IIO_TEMP,
25  	IIO_INCLI,
26  	IIO_ROT,
27  	IIO_ANGL,
28  	IIO_TIMESTAMP,
29  	IIO_CAPACITANCE,
30  	IIO_ALTVOLTAGE,
31  	IIO_CCT,
32  	IIO_PRESSURE,
33  	IIO_HUMIDITYRELATIVE,
34  	IIO_ACTIVITY,
35  	IIO_STEPS,
36  	IIO_ENERGY,
37  	IIO_DISTANCE,
38  	IIO_VELOCITY,
39  	IIO_CONCENTRATION,
40  	IIO_RESISTANCE,
41  	IIO_PH,
42  	IIO_UVINDEX,
43  	IIO_ELECTRICALCONDUCTIVITY,
44  	IIO_COUNT,
45  	IIO_INDEX,
46  	IIO_GRAVITY,
47  	IIO_POSITIONRELATIVE,
48  	IIO_PHASE,
49  	IIO_MASSCONCENTRATION,
50  };
51  
52  enum iio_modifier {
53  	IIO_NO_MOD,
54  	IIO_MOD_X,
55  	IIO_MOD_Y,
56  	IIO_MOD_Z,
57  	IIO_MOD_X_AND_Y,
58  	IIO_MOD_X_AND_Z,
59  	IIO_MOD_Y_AND_Z,
60  	IIO_MOD_X_AND_Y_AND_Z,
61  	IIO_MOD_X_OR_Y,
62  	IIO_MOD_X_OR_Z,
63  	IIO_MOD_Y_OR_Z,
64  	IIO_MOD_X_OR_Y_OR_Z,
65  	IIO_MOD_LIGHT_BOTH,
66  	IIO_MOD_LIGHT_IR,
67  	IIO_MOD_ROOT_SUM_SQUARED_X_Y,
68  	IIO_MOD_SUM_SQUARED_X_Y_Z,
69  	IIO_MOD_LIGHT_CLEAR,
70  	IIO_MOD_LIGHT_RED,
71  	IIO_MOD_LIGHT_GREEN,
72  	IIO_MOD_LIGHT_BLUE,
73  	IIO_MOD_QUATERNION,
74  	IIO_MOD_TEMP_AMBIENT,
75  	IIO_MOD_TEMP_OBJECT,
76  	IIO_MOD_NORTH_MAGN,
77  	IIO_MOD_NORTH_TRUE,
78  	IIO_MOD_NORTH_MAGN_TILT_COMP,
79  	IIO_MOD_NORTH_TRUE_TILT_COMP,
80  	IIO_MOD_RUNNING,
81  	IIO_MOD_JOGGING,
82  	IIO_MOD_WALKING,
83  	IIO_MOD_STILL,
84  	IIO_MOD_ROOT_SUM_SQUARED_X_Y_Z,
85  	IIO_MOD_I,
86  	IIO_MOD_Q,
87  	IIO_MOD_CO2,
88  	IIO_MOD_VOC,
89  	IIO_MOD_LIGHT_UV,
90  	IIO_MOD_LIGHT_DUV,
91  	IIO_MOD_PM1,
92  	IIO_MOD_PM2P5,
93  	IIO_MOD_PM4,
94  	IIO_MOD_PM10,
95  	IIO_MOD_ETHANOL,
96  	IIO_MOD_H2,
97  };
98  
99  enum iio_event_type {
100  	IIO_EV_TYPE_THRESH,
101  	IIO_EV_TYPE_MAG,
102  	IIO_EV_TYPE_ROC,
103  	IIO_EV_TYPE_THRESH_ADAPTIVE,
104  	IIO_EV_TYPE_MAG_ADAPTIVE,
105  	IIO_EV_TYPE_CHANGE,
106  };
107  
108  enum iio_event_direction {
109  	IIO_EV_DIR_EITHER,
110  	IIO_EV_DIR_RISING,
111  	IIO_EV_DIR_FALLING,
112  	IIO_EV_DIR_NONE,
113  };
114  
115  #endif /* _UAPI_IIO_TYPES_H_ */
116  
117