Merge tag 'soc2' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
[cascardo/linux.git] / drivers / staging / 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 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 };
31
32 enum iio_modifier {
33         IIO_NO_MOD,
34         IIO_MOD_X,
35         IIO_MOD_Y,
36         IIO_MOD_Z,
37         IIO_MOD_X_AND_Y,
38         IIO_MOD_X_AND_Z,
39         IIO_MOD_Y_AND_Z,
40         IIO_MOD_X_AND_Y_AND_Z,
41         IIO_MOD_X_OR_Y,
42         IIO_MOD_X_OR_Z,
43         IIO_MOD_Y_OR_Z,
44         IIO_MOD_X_OR_Y_OR_Z,
45         IIO_MOD_LIGHT_BOTH,
46         IIO_MOD_LIGHT_IR,
47 };
48
49 #define IIO_VAL_INT 1
50 #define IIO_VAL_INT_PLUS_MICRO 2
51 #define IIO_VAL_INT_PLUS_NANO 3
52
53 #endif /* _IIO_TYPES_H_ */