Go to the documentation of this file.
35 #ifndef IIO_ADIS_INTERNALS_H
36 #define IIO_ADIS_INTERNALS_H
248 #define ADIS_ACCEL_CHAN(mod, idx, adis_nb, attr) { \
249 .ch_type = IIO_ACCEL, \
251 .channel2 = IIO_MOD_##mod, \
254 .scan_type = &adis##adis_nb##_iio_accel_scan_type, \
255 .attributes = attr, \
258 #define ADIS_GYRO_CHAN(mod, idx, adis_nb, attr) { \
259 .ch_type = IIO_ANGL_VEL, \
261 .channel2 = IIO_MOD_##mod, \
264 .scan_type = &adis##adis_nb##_iio_anglvel_scan_type, \
265 .attributes = attr, \
268 #define ADIS_DELTA_ANGL_CHAN(mod, idx, adis_nb, attr) { \
269 .ch_type = IIO_DELTA_ANGL, \
271 .channel2 = IIO_MOD_##mod, \
274 .scan_type = &adis##adis_nb##_iio_delta_angl_scan_type, \
275 .attributes = attr, \
278 #define ADIS_DELTA_ANGL_CHAN_NO_SCAN(mod, idx, attr) { \
279 .ch_type = IIO_DELTA_ANGL, \
281 .channel2 = IIO_MOD_##mod, \
283 .attributes = attr, \
286 #define ADIS_DELTA_VEL_CHAN(mod, idx, adis_nb, attr) { \
287 .ch_type = IIO_DELTA_VELOCITY, \
289 .channel2 = IIO_MOD_##mod, \
292 .scan_type = &adis##adis_nb##_iio_delta_vel_scan_type, \
293 .attributes = attr, \
296 #define ADIS_DELTA_VEL_CHAN_NO_SCAN(mod, idx, attr) { \
297 .ch_type = IIO_DELTA_VELOCITY, \
299 .channel2 = IIO_MOD_##mod, \
301 .attributes = attr, \
304 #define ADIS_TEMP_CHAN(idx, adis_nb, attr) { \
305 .ch_type = IIO_TEMP, \
310 .scan_type = &adis##adis_nb##_iio_temp_scan_type, \
311 .attributes = attr, \
377 uint32_t len,
const struct iio_ch_info *channel, intptr_t priv);
int adis_iio_pre_enable(void *dev, uint32_t mask)
API to be called before trigger is enabled.
Definition: iio_adis.c:1412
@ ADIS_CMD_SNSR_SELF_TEST
Definition: iio_adis_internals.h:173
@ ADIS_DELTA_ANGL_Z
Definition: iio_adis_internals.h:62
@ ADIS_DIO_3_DIR
Definition: iio_adis_internals.h:132
@ ADIS_FIR_BANK_SEL_ZG
Definition: iio_adis_internals.h:155
uint32_t burst_sel
Definition: iio_adis_internals.h:232
@ ADIS_DIAG_FLS_MEM_WR_CNT_EXCEED
Definition: iio_adis_internals.h:103
@ ADIS_FIR_EN_XG
Definition: iio_adis_internals.h:147
uint16_t samples_lost
Definition: iio_adis_internals.h:224
@ ADIS_DIAG_EXT_5V_SUPPLY_ERR
Definition: iio_adis_internals.h:99
@ ADIS_FIFO_WM_INT_EN
Definition: iio_adis_internals.h:114
int adis_iio_post_disable(void *dev, uint32_t mask)
API to be called after trigger is disabled.
Definition: iio_adis.c:1472
@ ADIS_ACCEL_Z
Definition: iio_adis_internals.h:58
@ ADIS_DIAG_POWER_SUPPLY_FAILURE
Definition: iio_adis_internals.h:94
@ ADIS_DIAG_FLS_MEM_UPDATE_FAILURE
Definition: iio_adis_internals.h:75
@ ADIS_DR_ENABLE
Definition: iio_adis_internals.h:121
@ ADIS_GYRO_Z
Definition: iio_adis_internals.h:55
@ ADIS_ALARM_IND_ENABLE
Definition: iio_adis_internals.h:127
@ ADIS_BOOT_REV
Definition: iio_adis_internals.h:181
int adis_iio_read_calibscale(void *dev, char *buf, uint32_t len, const struct iio_ch_info *channel, intptr_t priv)
Handles the read request for calibscale attribute.
Definition: iio_adis.c:393
uint32_t sync_mode
Definition: iio_adis_internals.h:234
struct iio_hw_trig * hw_trig_desc
Definition: iio_adis_internals.h:241
struct iio_device * iio_dev
Definition: iio_adis_internals.h:222
@ ADIS_BURST_SEL
Definition: iio_adis_internals.h:141
@ ADIS_FIFO_WM_LVL
Definition: iio_adis_internals.h:116
@ ADIS_ALARM_IND_POLARITY
Definition: iio_adis_internals.h:128
@ ADIS_FIRM_REV
Definition: iio_adis_internals.h:182
@ ADIS_BIAS_CORR_EN_YG
Definition: iio_adis_internals.h:165
Structure holding channel attributess.
Definition: iio_types.h:103
uint32_t dividend
Definition: iio_adis_internals.h:200
@ ADIS_FIFO_EN
Definition: iio_adis_internals.h:112
@ ADIS_SYNC_LINE_SEL
Definition: iio_adis_internals.h:125
@ ADIS_USR_SCR_2
Definition: iio_adis_internals.h:188
@ ADIS_CMD_FACT_CALIB_RESTORE
Definition: iio_adis_internals.h:172
@ ADIS_DR_POLARITY
Definition: iio_adis_internals.h:122
@ ADIS_DIO_1_LVL
Definition: iio_adis_internals.h:134
@ ADIS_DELTA_VEL_Y
Definition: iio_adis_internals.h:64
@ ADIS_FILT_SIZE_VAR_B
Definition: iio_adis_internals.h:118
@ ADIS_DIAG_LOST_SAMPLES_COUNT
Definition: iio_adis_internals.h:104
Definition: ad9361_util.h:69
@ ADIS_SYNC_4KHZ
Definition: iio_adis_internals.h:144
@ ADIS_FIR_EN_ZA
Definition: iio_adis_internals.h:152
bool has_fifo
Definition: iio_adis_internals.h:238
@ ADIS_PROC_REV
Definition: iio_adis_internals.h:180
@ ADIS_EXT_CLK_FREQ
Definition: iio_adis_internals.h:192
@ ADIS_DIAG_ACCL_FAILURE
Definition: iio_adis_internals.h:83
@ ADIS_LOT_NUM
Definition: iio_adis_internals.h:186
@ ADIS_ACCEL_X
Definition: iio_adis_internals.h:56
@ ADIS_DIAG_TEMP_ERR
Definition: iio_adis_internals.h:93
@ ADIS_SYNC_POLARITY
Definition: iio_adis_internals.h:124
@ ADIS_DATA_CNTR
Definition: iio_adis_internals.h:107
int adis_iio_read_reg(struct adis_iio_dev *device, uint32_t reg, uint32_t *readval)
Wrapper for reading adis register.
Definition: iio_adis.c:69
@ ADIS_GYRO_Y
Definition: iio_adis_internals.h:54
int adis_iio_read_calibbias(void *dev, char *buf, uint32_t len, const struct iio_ch_info *channel, intptr_t priv)
Handles the read request for calibbias attribute.
Definition: iio_adis.c:288
@ ADIS_FIR_EN_ZG
Definition: iio_adis_internals.h:149
@ ADIS_DIO_2_DIR
Definition: iio_adis_internals.h:131
ADIS IIO device descriptor structure.
Definition: iio_adis_internals.h:218
@ ADIS_FIR_BANK_SEL_XA
Definition: iio_adis_internals.h:156
@ ADIS_DIAG_Y_AXIS_ACCL_FAILURE
Definition: iio_adis_internals.h:88
uint16_t data[26]
Definition: iio_adis_internals.h:236
@ ADIS_BIAS_CORR_EN_ZG
Definition: iio_adis_internals.h:166
@ ADIS_SPI_CHKSUM
Definition: iio_adis_internals.h:110
ADIS device descriptor structure.
Definition: adis.h:270
@ ADIS_PROD_ID
Definition: iio_adis_internals.h:184
int adis_iio_write_reg(struct adis_iio_dev *device, uint32_t reg, uint32_t writeval)
Wrapper for writing to adis register.
Definition: iio_adis.c:82
@ ADIS_BIAS_CORR_EN_ZA
Definition: iio_adis_internals.h:169
@ ADIS_DELTA_ANGL_X
Definition: iio_adis_internals.h:60
@ ADIS_DIAG_WDG_TIMER_FLAG
Definition: iio_adis_internals.h:97
@ ADIS_SENS_BW
Definition: iio_adis_internals.h:138
@ ADIS_TIMESTAMP32
Definition: iio_adis_internals.h:143
@ ADIS_DIAG_Z_AXIS_GYRO_FAILURE
Definition: iio_adis_internals.h:86
@ ADIS_DIAG_DATA_PATH_OVERRUN
Definition: iio_adis_internals.h:74
@ ADIS_DIAG_ADUC_MCU_FAULT
Definition: iio_adis_internals.h:90
@ ADIS_CMD_FLS_MEM_UPDATE
Definition: iio_adis_internals.h:174
int adis_iio_read_lpf(void *dev, char *buf, uint32_t len, const struct iio_ch_info *channel, intptr_t priv)
Handles the read request for lpf attribute.
Definition: iio_adis.c:498
@ ADIS_DELTA_VEL_X
Definition: iio_adis_internals.h:63
@ ADIS_BIAS_CORR_EN_XA
Definition: iio_adis_internals.h:167
@ ADIS_GYRO_X
Definition: iio_adis_internals.h:53
@ ADIS_FIR_EN_YA
Definition: iio_adis_internals.h:151
ADIS IIO debug attributes enumeration.
@ ADIS_TIME_STAMP
Definition: iio_adis_internals.h:106
int adis_iio_write_debug_attrs(void *dev, char *buf, uint32_t len, const struct iio_ch_info *channel, intptr_t priv)
Handles the write request for debug attributes.
Definition: iio_adis.c:1221
@ ADIS_SYNC_MODE
Definition: iio_adis_internals.h:126
@ ADIS_DIAG_OVERRANGE
Definition: iio_adis_internals.h:92
uint32_t power
Definition: iio_adis_internals.h:212
@ ADIS_DIAG_GYRO1_FAILURE
Definition: iio_adis_internals.h:81
Structure holding pointers to show and store functions.
Definition: iio_types.h:129
@ ADIS_DIAG_CONFIG_CALIB_CRC_ERR
Definition: iio_adis_internals.h:91
@ ADIS_CMD_FLS_MEM_TEST
Definition: iio_adis_internals.h:175
int adis_iio_read_offset(void *dev, char *buf, uint32_t len, const struct iio_ch_info *channel, intptr_t priv)
Handles the read request for offset attribute.
Definition: iio_adis.c:246
ADIS IIO fractional scale format structure; scale = dividend/divisor.
Definition: iio_adis_internals.h:198
@ ADIS_DIAG_CHECKSUM_ERR
Definition: iio_adis_internals.h:102
struct iio_attribute adis_dev_attrs[]
Definition: iio_adis.c:1803
ADIS IIO channels enumeration.
uint32_t divisor
Definition: iio_adis_internals.h:202
int adis_iio_read_scale(void *dev, char *buf, uint32_t len, const struct iio_ch_info *channel, intptr_t priv)
Handles the read request for scale attribute.
Definition: iio_adis.c:174
int adis_iio_read_samples(void *dev, int *buff, uint32_t samples)
@ ADIS_DELTA_VEL_Z
Definition: iio_adis_internals.h:65
const char * rang_mdl_txt
Definition: iio_adis_internals.h:240
struct iio_attribute adis_iio_delta_vel_attrs[]
Definition: iio_adis.c:1880
@ ADIS_FIR_BANK_SEL_YG
Definition: iio_adis_internals.h:154
@ ADIS_FIR_BANK_SEL_ZA
Definition: iio_adis_internals.h:158
@ ADIS_DELTA_ANGL_Y
Definition: iio_adis_internals.h:61
int adis_iio_trigger_handler_with_fifo(struct iio_device_data *dev_data)
Handles trigger: reads all available samples in FIFO and writes them to the buffer.
Definition: iio_adis.c:1744
@ ADIS_DIAG_INT_SNSR_SUPPLY_ERR
Definition: iio_adis_internals.h:100
int adis_iio_write_calibbias(void *dev, char *buf, uint32_t len, const struct iio_ch_info *channel, intptr_t priv)
Handles the write request for calibbias attribute.
Definition: iio_adis.c:344
int adis_iio_write_sampling_freq(void *dev, char *buf, uint32_t len, const struct iio_ch_info *channel, intptr_t priv)
Handles the write request for sampling frequency attribute.
Definition: iio_adis.c:753
int adis_iio_read_raw(void *dev, char *buf, uint32_t len, const struct iio_ch_info *channel, intptr_t priv)
Handles the read request for raw attribute.
Definition: iio_adis.c:97
@ ADIS_DIO_4_DIR
Definition: iio_adis_internals.h:133
@ ADIS_DIO_3_LVL
Definition: iio_adis_internals.h:136
@ ADIS_FIFO_CNT
Definition: iio_adis_internals.h:109
@ ADIS_DIAG_REG_NVM_ERR
Definition: iio_adis_internals.h:96
struct iio_trigger adis_iio_trig_desc
Definition: iio_adis_trig.c:46
struct iio_attribute adis_iio_anglvel_attrs[]
Definition: iio_adis.c:1819
@ ADIS_DIAG_SNSR_FAILURE
Definition: iio_adis_internals.h:78
@ ADIS_DEC_RATE
Definition: iio_adis_internals.h:161
uint32_t dividend
Definition: iio_adis_internals.h:210
@ ADIS_DIO_4_LVL
Definition: iio_adis_internals.h:137
@ ADIS_DIAG_Z_AXIS_ACCL_FAILURE
Definition: iio_adis_internals.h:89
struct iio_attribute adis_iio_temp_attrs[]
Definition: iio_adis.c:1855
@ ADIS_DIAG_GYRO2_FAILURE
Definition: iio_adis_internals.h:82
@ ADIS_DIAG_SNSR_INIT_FAILURE
Definition: iio_adis_internals.h:73
@ ADIS_FIR_EN_YG
Definition: iio_adis_internals.h:148
@ ADIS_NUM_CHAN
Definition: iio_adis_internals.h:66
@ ADIS_UP_SCALE
Definition: iio_adis_internals.h:160
int adis_iio_write_calibscale(void *dev, char *buf, uint32_t len, const struct iio_ch_info *channel, intptr_t priv)
Handles the write request for calibscale attribute.
Definition: iio_adis.c:449
int adis_iio_write_lpf(void *dev, char *buf, uint32_t len, const struct iio_ch_info *channel, intptr_t priv)
Handles the write request for lpf attribute.
Definition: iio_adis.c:562
@ ADIS_ACCL_FIR_ENABLE
Definition: iio_adis_internals.h:146
@ ADIS_DIAG_MEM_FAILURE
Definition: iio_adis_internals.h:79
@ ADIS_FIR_BANK_SEL_XG
Definition: iio_adis_internals.h:153
@ ADIS_FIFO_WM_INT_POL
Definition: iio_adis_internals.h:115
@ ADIS_FLS_MEM_WR_CNTR
Definition: iio_adis_internals.h:191
@ ADIS_DIAG_CLK_ERR
Definition: iio_adis_internals.h:80
@ ADIS_DIAG_Y_AXIS_GYRO_FAILURE
Definition: iio_adis_internals.h:85
int adis_iio_trigger_handler(struct iio_device_data *dev_data)
Handles trigger: reads one data-set and writes it to the buffer.
Definition: iio_adis.c:1722
Definition: iio_types.h:231
@ ADIS_DIAG_INT_PROC_SUPPLY_ERR
Definition: iio_adis_internals.h:98
@ ADIS_CMD_FIFO_FLUSH
Definition: iio_adis_internals.h:176
@ ADIS_DIAG_X_AXIS_ACCL_FAILURE
Definition: iio_adis_internals.h:87
@ ADIS_SERIAL_NUM
Definition: iio_adis_internals.h:185
struct iio_attribute adis_iio_delta_angl_attrs[]
Definition: iio_adis.c:1867
ADIS IIO fractional log2 scale format structure; scale = dividend/2^power.
Definition: iio_adis_internals.h:208
@ ADIS_LINEAR_ACCL_COMP
Definition: iio_adis_internals.h:140
@ ADIS_DIAG_SPI_COMM_ERR
Definition: iio_adis_internals.h:76
Structure holding channels and attributes of a device.
Definition: iio_types.h:247
@ ADIS_USR_SCR_3
Definition: iio_adis_internals.h:189
@ ADIS_DIAG_STANDBY_MODE
Definition: iio_adis_internals.h:77
@ ADIS_DIO_1_DIR
Definition: iio_adis_internals.h:130
@ ADIS_DIAG_X_AXIS_GYRO_FAILURE
Definition: iio_adis_internals.h:84
@ ADIS_BIAS_CORR_EN_XG
Definition: iio_adis_internals.h:164
@ ADIS_BURST32
Definition: iio_adis_internals.h:142
@ ADIS_DR_LINE_SEL
Definition: iio_adis_internals.h:123
@ ADIS_BIAS_CORR_EN_YA
Definition: iio_adis_internals.h:168
uint32_t burst_size
Definition: iio_adis_internals.h:230
@ ADIS_DIAG_BOOT_MEMORY_FAILURE
Definition: iio_adis_internals.h:95
@ ADIS_BIAS_CORR_TBC
Definition: iio_adis_internals.h:163
@ ADIS_FIFO_OVERFLOW
Definition: iio_adis_internals.h:113
@ ADIS_PT_OF_PERC_ALGNMT
Definition: iio_adis_internals.h:139
struct adis_dev * adis_dev
Definition: iio_adis_internals.h:220
@ ADIS_FIRM_DATE
Definition: iio_adis_internals.h:183
Definition: iio_types.h:226
uint32_t data_cntr
Definition: iio_adis_internals.h:226
uint32_t sampling_frequency
Definition: iio_adis_internals.h:228
@ ADIS_DIAG_INT_REG_ERR
Definition: iio_adis_internals.h:101
struct iio_attribute adis_iio_accel_attrs[]
Definition: iio_adis.c:1837
@ ADIS_CMD_SW_RES
Definition: iio_adis_internals.h:177
@ ADIS_USR_SCR_1
Definition: iio_adis_internals.h:187
@ ADIS_ALARM_IND_LINE_SEL
Definition: iio_adis_internals.h:129
@ ADIS_GYRO_FIR_ENABLE
Definition: iio_adis_internals.h:145
@ ADIS_TEMP
Definition: iio_adis_internals.h:59
@ ADIS_FIR_BANK_SEL_YA
Definition: iio_adis_internals.h:157
IIO hardware trigger structure.
Definition: iio_trigger.h:56
@ ADIS_CMD_WRITE_LOCK
Definition: iio_adis_internals.h:178
@ ADIS_USR_SCR_4
Definition: iio_adis_internals.h:190
@ ADIS_FIR_EN_XA
Definition: iio_adis_internals.h:150
int adis_iio_read_sampling_freq(void *dev, char *buf, uint32_t len, const struct iio_ch_info *channel, intptr_t priv)
Handles the read request for sampling frequency attribute.
Definition: iio_adis.c:657
@ ADIS_ACCEL_Y
Definition: iio_adis_internals.h:57
Error macro definition for ARM Compiler.
@ ADIS_DIO_2_LVL
Definition: iio_adis_internals.h:135
int adis_iio_read_debug_attrs(void *dev, char *buf, uint32_t len, const struct iio_ch_info *channel, intptr_t priv)
Handles the read request for debug attributes.
Definition: iio_adis.c:877
@ ADIS_GYRO_MEAS_RANGE
Definition: iio_adis_internals.h:119
@ ADIS_CMD_BIAS_CORR_UPDATE
Definition: iio_adis_internals.h:171