1d2912cb1SThomas Gleixner /* SPDX-License-Identifier: GPL-2.0-only */ 206458e27SJonathan Cameron /* industrial I/O data types needed both in and out of kernel 306458e27SJonathan Cameron * 406458e27SJonathan Cameron * Copyright (c) 2008 Jonathan Cameron 506458e27SJonathan Cameron */ 606458e27SJonathan Cameron 706458e27SJonathan Cameron #ifndef _IIO_TYPES_H_ 806458e27SJonathan Cameron #define _IIO_TYPES_H_ 906458e27SJonathan Cameron 10293487c8SDaniel Baluta #include <uapi/linux/iio/types.h> 11b4e3ac0aSLars-Peter Clausen 12b4e3ac0aSLars-Peter Clausen enum iio_event_info { 13b4e3ac0aSLars-Peter Clausen IIO_EV_INFO_ENABLE, 14b4e3ac0aSLars-Peter Clausen IIO_EV_INFO_VALUE, 15ec6670aeSLars-Peter Clausen IIO_EV_INFO_HYSTERESIS, 1677a533c7SSrinivas Pandruvada IIO_EV_INFO_PERIOD, 173f7f642bSMartin Fuzzey IIO_EV_INFO_HIGH_PASS_FILTER_3DB, 183f7f642bSMartin Fuzzey IIO_EV_INFO_LOW_PASS_FILTER_3DB, 1945b77828SJonathan Cameron IIO_EV_INFO_TIMEOUT, 20835e699eSJagath Jog J IIO_EV_INFO_RESET_TIMEOUT, 21835e699eSJagath Jog J IIO_EV_INFO_TAP2_MIN_DELAY, 225e1cd3e9SWaqar Hameed IIO_EV_INFO_RUNNING_PERIOD, 235e1cd3e9SWaqar Hameed IIO_EV_INFO_RUNNING_COUNT, 24b4e3ac0aSLars-Peter Clausen }; 25b4e3ac0aSLars-Peter Clausen 2606458e27SJonathan Cameron #define IIO_VAL_INT 1 2706458e27SJonathan Cameron #define IIO_VAL_INT_PLUS_MICRO 2 2806458e27SJonathan Cameron #define IIO_VAL_INT_PLUS_NANO 3 2967eedba3SMichael Hennerich #define IIO_VAL_INT_PLUS_MICRO_DB 4 309fbfb4b3SSrinivas Pandruvada #define IIO_VAL_INT_MULTIPLE 5 316bb835f3SAndriy Tryshnivskyy #define IIO_VAL_INT_64 6 /* 64-bit data, val is lower 32 bits */ 327985e7c1SLars-Peter Clausen #define IIO_VAL_FRACTIONAL 10 33103d9fb9SLars-Peter Clausen #define IIO_VAL_FRACTIONAL_LOG2 11 348cb34036SAndrea Merello #define IIO_VAL_CHAR 12 3506458e27SJonathan Cameron 3651239600SJonathan Cameron enum iio_available_type { 3751239600SJonathan Cameron IIO_AVAIL_LIST, 3851239600SJonathan Cameron IIO_AVAIL_RANGE, 3951239600SJonathan Cameron }; 4051239600SJonathan Cameron 4134739a21SArnaud Pouliquen enum iio_chan_info_enum { 4234739a21SArnaud Pouliquen IIO_CHAN_INFO_RAW = 0, 4334739a21SArnaud Pouliquen IIO_CHAN_INFO_PROCESSED, 4434739a21SArnaud Pouliquen IIO_CHAN_INFO_SCALE, 4534739a21SArnaud Pouliquen IIO_CHAN_INFO_OFFSET, 4634739a21SArnaud Pouliquen IIO_CHAN_INFO_CALIBSCALE, 4734739a21SArnaud Pouliquen IIO_CHAN_INFO_CALIBBIAS, 4834739a21SArnaud Pouliquen IIO_CHAN_INFO_PEAK, 4934739a21SArnaud Pouliquen IIO_CHAN_INFO_PEAK_SCALE, 5034739a21SArnaud Pouliquen IIO_CHAN_INFO_QUADRATURE_CORRECTION_RAW, 5134739a21SArnaud Pouliquen IIO_CHAN_INFO_AVERAGE_RAW, 5234739a21SArnaud Pouliquen IIO_CHAN_INFO_LOW_PASS_FILTER_3DB_FREQUENCY, 5334739a21SArnaud Pouliquen IIO_CHAN_INFO_HIGH_PASS_FILTER_3DB_FREQUENCY, 5434739a21SArnaud Pouliquen IIO_CHAN_INFO_SAMP_FREQ, 5534739a21SArnaud Pouliquen IIO_CHAN_INFO_FREQUENCY, 5634739a21SArnaud Pouliquen IIO_CHAN_INFO_PHASE, 5734739a21SArnaud Pouliquen IIO_CHAN_INFO_HARDWAREGAIN, 5834739a21SArnaud Pouliquen IIO_CHAN_INFO_HYSTERESIS, 591c71a286SYe Xiang IIO_CHAN_INFO_HYSTERESIS_RELATIVE, 6034739a21SArnaud Pouliquen IIO_CHAN_INFO_INT_TIME, 6134739a21SArnaud Pouliquen IIO_CHAN_INFO_ENABLE, 6234739a21SArnaud Pouliquen IIO_CHAN_INFO_CALIBHEIGHT, 6334739a21SArnaud Pouliquen IIO_CHAN_INFO_CALIBWEIGHT, 6434739a21SArnaud Pouliquen IIO_CHAN_INFO_DEBOUNCE_COUNT, 6534739a21SArnaud Pouliquen IIO_CHAN_INFO_DEBOUNCE_TIME, 6634739a21SArnaud Pouliquen IIO_CHAN_INFO_CALIBEMISSIVITY, 6734739a21SArnaud Pouliquen IIO_CHAN_INFO_OVERSAMPLING_RATIO, 68ddfb97d8SAndrea Merello IIO_CHAN_INFO_THERMOCOUPLE_TYPE, 69dde8ceecSCrt Mori IIO_CHAN_INFO_CALIBAMBIENT, 705c64990bSJonathan Cameron IIO_CHAN_INFO_ZEROPOINT, 71*5bc2ea60SJavier Carrasco IIO_CHAN_INFO_TROUGH, 7234739a21SArnaud Pouliquen }; 7334739a21SArnaud Pouliquen 7406458e27SJonathan Cameron #endif /* _IIO_TYPES_H_ */ 75