Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
[linux-2.6-microblaze.git] / include / linux / iio / types.h
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 #include <uapi/linux/iio/types.h>
14
15 enum iio_event_info {
16         IIO_EV_INFO_ENABLE,
17         IIO_EV_INFO_VALUE,
18         IIO_EV_INFO_HYSTERESIS,
19         IIO_EV_INFO_PERIOD,
20         IIO_EV_INFO_HIGH_PASS_FILTER_3DB,
21         IIO_EV_INFO_LOW_PASS_FILTER_3DB,
22 };
23
24 #define IIO_VAL_INT 1
25 #define IIO_VAL_INT_PLUS_MICRO 2
26 #define IIO_VAL_INT_PLUS_NANO 3
27 #define IIO_VAL_INT_PLUS_MICRO_DB 4
28 #define IIO_VAL_INT_MULTIPLE 5
29 #define IIO_VAL_FRACTIONAL 10
30 #define IIO_VAL_FRACTIONAL_LOG2 11
31
32 enum iio_available_type {
33         IIO_AVAIL_LIST,
34         IIO_AVAIL_RANGE,
35 };
36
37 enum iio_chan_info_enum {
38         IIO_CHAN_INFO_RAW = 0,
39         IIO_CHAN_INFO_PROCESSED,
40         IIO_CHAN_INFO_SCALE,
41         IIO_CHAN_INFO_OFFSET,
42         IIO_CHAN_INFO_CALIBSCALE,
43         IIO_CHAN_INFO_CALIBBIAS,
44         IIO_CHAN_INFO_PEAK,
45         IIO_CHAN_INFO_PEAK_SCALE,
46         IIO_CHAN_INFO_QUADRATURE_CORRECTION_RAW,
47         IIO_CHAN_INFO_AVERAGE_RAW,
48         IIO_CHAN_INFO_LOW_PASS_FILTER_3DB_FREQUENCY,
49         IIO_CHAN_INFO_HIGH_PASS_FILTER_3DB_FREQUENCY,
50         IIO_CHAN_INFO_SAMP_FREQ,
51         IIO_CHAN_INFO_FREQUENCY,
52         IIO_CHAN_INFO_PHASE,
53         IIO_CHAN_INFO_HARDWAREGAIN,
54         IIO_CHAN_INFO_HYSTERESIS,
55         IIO_CHAN_INFO_INT_TIME,
56         IIO_CHAN_INFO_ENABLE,
57         IIO_CHAN_INFO_CALIBHEIGHT,
58         IIO_CHAN_INFO_CALIBWEIGHT,
59         IIO_CHAN_INFO_DEBOUNCE_COUNT,
60         IIO_CHAN_INFO_DEBOUNCE_TIME,
61         IIO_CHAN_INFO_CALIBEMISSIVITY,
62         IIO_CHAN_INFO_OVERSAMPLING_RATIO,
63 };
64
65 #endif /* _IIO_TYPES_H_ */