1 | /* SPDX-License-Identifier: GPL-2.0-only */ |
2 | /* industrial I/O data types needed both in and out of kernel |
3 | * |
4 | * Copyright (c) 2008 Jonathan Cameron |
5 | */ |
6 | |
7 | #ifndef _IIO_TYPES_H_ |
8 | #define _IIO_TYPES_H_ |
9 | |
10 | #include <uapi/linux/iio/types.h> |
11 | |
12 | enum iio_event_info { |
13 | IIO_EV_INFO_ENABLE, |
14 | IIO_EV_INFO_VALUE, |
15 | IIO_EV_INFO_HYSTERESIS, |
16 | IIO_EV_INFO_PERIOD, |
17 | IIO_EV_INFO_HIGH_PASS_FILTER_3DB, |
18 | IIO_EV_INFO_LOW_PASS_FILTER_3DB, |
19 | IIO_EV_INFO_TIMEOUT, |
20 | IIO_EV_INFO_RESET_TIMEOUT, |
21 | IIO_EV_INFO_TAP2_MIN_DELAY, |
22 | IIO_EV_INFO_RUNNING_PERIOD, |
23 | IIO_EV_INFO_RUNNING_COUNT, |
24 | }; |
25 | |
26 | #define IIO_VAL_INT 1 |
27 | #define IIO_VAL_INT_PLUS_MICRO 2 |
28 | #define IIO_VAL_INT_PLUS_NANO 3 |
29 | #define IIO_VAL_INT_PLUS_MICRO_DB 4 |
30 | #define IIO_VAL_INT_MULTIPLE 5 |
31 | #define IIO_VAL_INT_64 6 /* 64-bit data, val is lower 32 bits */ |
32 | #define IIO_VAL_FRACTIONAL 10 |
33 | #define IIO_VAL_FRACTIONAL_LOG2 11 |
34 | #define IIO_VAL_CHAR 12 |
35 | |
36 | enum iio_available_type { |
37 | IIO_AVAIL_LIST, |
38 | IIO_AVAIL_RANGE, |
39 | }; |
40 | |
41 | enum iio_chan_info_enum { |
42 | IIO_CHAN_INFO_RAW = 0, |
43 | IIO_CHAN_INFO_PROCESSED, |
44 | IIO_CHAN_INFO_SCALE, |
45 | IIO_CHAN_INFO_OFFSET, |
46 | IIO_CHAN_INFO_CALIBSCALE, |
47 | IIO_CHAN_INFO_CALIBBIAS, |
48 | IIO_CHAN_INFO_PEAK, |
49 | IIO_CHAN_INFO_PEAK_SCALE, |
50 | IIO_CHAN_INFO_QUADRATURE_CORRECTION_RAW, |
51 | IIO_CHAN_INFO_AVERAGE_RAW, |
52 | IIO_CHAN_INFO_LOW_PASS_FILTER_3DB_FREQUENCY, |
53 | IIO_CHAN_INFO_HIGH_PASS_FILTER_3DB_FREQUENCY, |
54 | IIO_CHAN_INFO_SAMP_FREQ, |
55 | IIO_CHAN_INFO_FREQUENCY, |
56 | IIO_CHAN_INFO_PHASE, |
57 | IIO_CHAN_INFO_HARDWAREGAIN, |
58 | IIO_CHAN_INFO_HYSTERESIS, |
59 | IIO_CHAN_INFO_HYSTERESIS_RELATIVE, |
60 | IIO_CHAN_INFO_INT_TIME, |
61 | IIO_CHAN_INFO_ENABLE, |
62 | IIO_CHAN_INFO_CALIBHEIGHT, |
63 | IIO_CHAN_INFO_CALIBWEIGHT, |
64 | IIO_CHAN_INFO_DEBOUNCE_COUNT, |
65 | IIO_CHAN_INFO_DEBOUNCE_TIME, |
66 | IIO_CHAN_INFO_CALIBEMISSIVITY, |
67 | IIO_CHAN_INFO_OVERSAMPLING_RATIO, |
68 | IIO_CHAN_INFO_THERMOCOUPLE_TYPE, |
69 | IIO_CHAN_INFO_CALIBAMBIENT, |
70 | IIO_CHAN_INFO_ZEROPOINT, |
71 | }; |
72 | |
73 | #endif /* _IIO_TYPES_H_ */ |
74 | |