xref: /linux-6.15/include/linux/iio/types.h (revision 6fcd5f2c)
1 /* industrial I/O data types needed both in and out of kernel
2  *
3  * Copyright (c) 2008 Jonathan Cameron
4  *
5  * This program is free software; you can redistribute it and/or modify it
6  * under the terms of the GNU General Public License version 2 as published by
7  * the Free Software Foundation.
8  */
9 
10 #ifndef _IIO_TYPES_H_
11 #define _IIO_TYPES_H_
12 
13 enum iio_chan_type {
14 	/* real channel types */
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 };
32 
33 enum iio_modifier {
34 	IIO_NO_MOD,
35 	IIO_MOD_X,
36 	IIO_MOD_Y,
37 	IIO_MOD_Z,
38 	IIO_MOD_X_AND_Y,
39 	IIO_MOD_X_AND_Z,
40 	IIO_MOD_Y_AND_Z,
41 	IIO_MOD_X_AND_Y_AND_Z,
42 	IIO_MOD_X_OR_Y,
43 	IIO_MOD_X_OR_Z,
44 	IIO_MOD_Y_OR_Z,
45 	IIO_MOD_X_OR_Y_OR_Z,
46 	IIO_MOD_LIGHT_BOTH,
47 	IIO_MOD_LIGHT_IR,
48 };
49 
50 #define IIO_VAL_INT 1
51 #define IIO_VAL_INT_PLUS_MICRO 2
52 #define IIO_VAL_INT_PLUS_NANO 3
53 #define IIO_VAL_INT_PLUS_MICRO_DB 4
54 
55 #endif /* _IIO_TYPES_H_ */
56