at v6.4 1.8 kB view raw
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 12enum 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}; 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_INT_64 6 /* 64-bit data, val is lower 32 bits */ 30#define IIO_VAL_FRACTIONAL 10 31#define IIO_VAL_FRACTIONAL_LOG2 11 32#define IIO_VAL_CHAR 12 33 34enum iio_available_type { 35 IIO_AVAIL_LIST, 36 IIO_AVAIL_RANGE, 37}; 38 39enum iio_chan_info_enum { 40 IIO_CHAN_INFO_RAW = 0, 41 IIO_CHAN_INFO_PROCESSED, 42 IIO_CHAN_INFO_SCALE, 43 IIO_CHAN_INFO_OFFSET, 44 IIO_CHAN_INFO_CALIBSCALE, 45 IIO_CHAN_INFO_CALIBBIAS, 46 IIO_CHAN_INFO_PEAK, 47 IIO_CHAN_INFO_PEAK_SCALE, 48 IIO_CHAN_INFO_QUADRATURE_CORRECTION_RAW, 49 IIO_CHAN_INFO_AVERAGE_RAW, 50 IIO_CHAN_INFO_LOW_PASS_FILTER_3DB_FREQUENCY, 51 IIO_CHAN_INFO_HIGH_PASS_FILTER_3DB_FREQUENCY, 52 IIO_CHAN_INFO_SAMP_FREQ, 53 IIO_CHAN_INFO_FREQUENCY, 54 IIO_CHAN_INFO_PHASE, 55 IIO_CHAN_INFO_HARDWAREGAIN, 56 IIO_CHAN_INFO_HYSTERESIS, 57 IIO_CHAN_INFO_HYSTERESIS_RELATIVE, 58 IIO_CHAN_INFO_INT_TIME, 59 IIO_CHAN_INFO_ENABLE, 60 IIO_CHAN_INFO_CALIBHEIGHT, 61 IIO_CHAN_INFO_CALIBWEIGHT, 62 IIO_CHAN_INFO_DEBOUNCE_COUNT, 63 IIO_CHAN_INFO_DEBOUNCE_TIME, 64 IIO_CHAN_INFO_CALIBEMISSIVITY, 65 IIO_CHAN_INFO_OVERSAMPLING_RATIO, 66 IIO_CHAN_INFO_THERMOCOUPLE_TYPE, 67 IIO_CHAN_INFO_CALIBAMBIENT, 68 IIO_CHAN_INFO_ZEROPOINT, 69}; 70 71#endif /* _IIO_TYPES_H_ */