hc
2023-11-30 6c9be420e167ee7ce45c0309586f09ddab28ac15
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
/* industrial I/O data types needed both in and out of kernel
 *
 * Copyright (c) 2008 Jonathan Cameron
 *
 * This program is free software; you can redistribute it and/or modify it
 * under the terms of the GNU General Public License version 2 as published by
 * the Free Software Foundation.
 */
 
#ifndef _IIO_TYPES_H_
#define _IIO_TYPES_H_
 
#include <uapi/linux/iio/types.h>
 
enum iio_event_info {
   IIO_EV_INFO_ENABLE,
   IIO_EV_INFO_VALUE,
   IIO_EV_INFO_HYSTERESIS,
   IIO_EV_INFO_PERIOD,
   IIO_EV_INFO_HIGH_PASS_FILTER_3DB,
   IIO_EV_INFO_LOW_PASS_FILTER_3DB,
};
 
#define IIO_VAL_INT 1
#define IIO_VAL_INT_PLUS_MICRO 2
#define IIO_VAL_INT_PLUS_NANO 3
#define IIO_VAL_INT_PLUS_MICRO_DB 4
#define IIO_VAL_INT_MULTIPLE 5
#define IIO_VAL_FRACTIONAL 10
#define IIO_VAL_FRACTIONAL_LOG2 11
 
enum iio_available_type {
   IIO_AVAIL_LIST,
   IIO_AVAIL_RANGE,
};
 
enum iio_chan_info_enum {
   IIO_CHAN_INFO_RAW = 0,
   IIO_CHAN_INFO_PROCESSED,
   IIO_CHAN_INFO_SCALE,
   IIO_CHAN_INFO_OFFSET,
   IIO_CHAN_INFO_CALIBSCALE,
   IIO_CHAN_INFO_CALIBBIAS,
   IIO_CHAN_INFO_PEAK,
   IIO_CHAN_INFO_PEAK_SCALE,
   IIO_CHAN_INFO_QUADRATURE_CORRECTION_RAW,
   IIO_CHAN_INFO_AVERAGE_RAW,
   IIO_CHAN_INFO_LOW_PASS_FILTER_3DB_FREQUENCY,
   IIO_CHAN_INFO_HIGH_PASS_FILTER_3DB_FREQUENCY,
   IIO_CHAN_INFO_SAMP_FREQ,
   IIO_CHAN_INFO_FREQUENCY,
   IIO_CHAN_INFO_PHASE,
   IIO_CHAN_INFO_HARDWAREGAIN,
   IIO_CHAN_INFO_HYSTERESIS,
   IIO_CHAN_INFO_INT_TIME,
   IIO_CHAN_INFO_ENABLE,
   IIO_CHAN_INFO_CALIBHEIGHT,
   IIO_CHAN_INFO_CALIBWEIGHT,
   IIO_CHAN_INFO_DEBOUNCE_COUNT,
   IIO_CHAN_INFO_DEBOUNCE_TIME,
   IIO_CHAN_INFO_CALIBEMISSIVITY,
   IIO_CHAN_INFO_OVERSAMPLING_RATIO,
};
 
#endif /* _IIO_TYPES_H_ */