1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ 2 /* industrial I/O data types needed both in and out of kernel 3 * 4 * Copyright (c) 2008 Jonathan Cameron 5 * 6 * This program is free software; you can redistribute it and/or modify it 7 * under the terms of the GNU General Public License version 2 as published by 8 * the Free Software Foundation. 9 */ 10 11 #ifndef _UAPI_IIO_TYPES_H_ 12 #define _UAPI_IIO_TYPES_H_ 13 14 enum iio_chan_type { 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 IIO_CCT, 32 IIO_PRESSURE, 33 IIO_HUMIDITYRELATIVE, 34 IIO_ACTIVITY, 35 IIO_STEPS, 36 IIO_ENERGY, 37 IIO_DISTANCE, 38 IIO_VELOCITY, 39 IIO_CONCENTRATION, 40 IIO_RESISTANCE, 41 IIO_PH, 42 IIO_UVINDEX, 43 IIO_ELECTRICALCONDUCTIVITY, 44 IIO_COUNT, 45 IIO_INDEX, 46 IIO_GRAVITY, 47 IIO_POSITIONRELATIVE, 48 IIO_PHASE, 49 IIO_MASSCONCENTRATION, 50 IIO_DELTA_ANGL, 51 IIO_DELTA_VELOCITY, 52 IIO_COLORTEMP, 53 IIO_CHROMATICITY, 54 IIO_ATTENTION, 55 }; 56 57 enum iio_modifier { 58 IIO_NO_MOD, 59 IIO_MOD_X, 60 IIO_MOD_Y, 61 IIO_MOD_Z, 62 IIO_MOD_X_AND_Y, 63 IIO_MOD_X_AND_Z, 64 IIO_MOD_Y_AND_Z, 65 IIO_MOD_X_AND_Y_AND_Z, 66 IIO_MOD_X_OR_Y, 67 IIO_MOD_X_OR_Z, 68 IIO_MOD_Y_OR_Z, 69 IIO_MOD_X_OR_Y_OR_Z, 70 IIO_MOD_LIGHT_BOTH, 71 IIO_MOD_LIGHT_IR, 72 IIO_MOD_ROOT_SUM_SQUARED_X_Y, 73 IIO_MOD_SUM_SQUARED_X_Y_Z, 74 IIO_MOD_LIGHT_CLEAR, 75 IIO_MOD_LIGHT_RED, 76 IIO_MOD_LIGHT_GREEN, 77 IIO_MOD_LIGHT_BLUE, 78 IIO_MOD_QUATERNION, 79 IIO_MOD_TEMP_AMBIENT, 80 IIO_MOD_TEMP_OBJECT, 81 IIO_MOD_NORTH_MAGN, 82 IIO_MOD_NORTH_TRUE, 83 IIO_MOD_NORTH_MAGN_TILT_COMP, 84 IIO_MOD_NORTH_TRUE_TILT_COMP, 85 IIO_MOD_RUNNING, 86 IIO_MOD_JOGGING, 87 IIO_MOD_WALKING, 88 IIO_MOD_STILL, 89 IIO_MOD_ROOT_SUM_SQUARED_X_Y_Z, 90 IIO_MOD_I, 91 IIO_MOD_Q, 92 IIO_MOD_CO2, 93 IIO_MOD_VOC, 94 IIO_MOD_LIGHT_UV, 95 IIO_MOD_LIGHT_DUV, 96 IIO_MOD_PM1, 97 IIO_MOD_PM2P5, 98 IIO_MOD_PM4, 99 IIO_MOD_PM10, 100 IIO_MOD_ETHANOL, 101 IIO_MOD_H2, 102 IIO_MOD_O2, 103 IIO_MOD_LINEAR_X, 104 IIO_MOD_LINEAR_Y, 105 IIO_MOD_LINEAR_Z, 106 IIO_MOD_PITCH, 107 IIO_MOD_YAW, 108 IIO_MOD_ROLL, 109 IIO_MOD_LIGHT_UVA, 110 IIO_MOD_LIGHT_UVB, 111 }; 112 113 enum iio_event_type { 114 IIO_EV_TYPE_THRESH, 115 IIO_EV_TYPE_MAG, 116 IIO_EV_TYPE_ROC, 117 IIO_EV_TYPE_THRESH_ADAPTIVE, 118 IIO_EV_TYPE_MAG_ADAPTIVE, 119 IIO_EV_TYPE_CHANGE, 120 IIO_EV_TYPE_MAG_REFERENCED, 121 IIO_EV_TYPE_GESTURE, 122 }; 123 124 enum iio_event_direction { 125 IIO_EV_DIR_EITHER, 126 IIO_EV_DIR_RISING, 127 IIO_EV_DIR_FALLING, 128 IIO_EV_DIR_NONE, 129 IIO_EV_DIR_SINGLETAP, 130 IIO_EV_DIR_DOUBLETAP, 131 }; 132 133 #endif /* _UAPI_IIO_TYPES_H_ */ 134