35#ifndef IIO_ADIS_INTERNALS_H
36#define IIO_ADIS_INTERNALS_H
236#define ADIS_ACCEL_CHAN(mod, idx, adis_nb, attr) { \
237 .ch_type = IIO_ACCEL, \
239 .channel2 = IIO_MOD_##mod, \
242 .scan_type = &adis##adis_nb##_iio_accel_scan_type, \
243 .attributes = attr, \
236#define ADIS_ACCEL_CHAN(mod, idx, adis_nb, attr) { \ …
246#define ADIS_GYRO_CHAN(mod, idx, adis_nb, attr) { \
247 .ch_type = IIO_ANGL_VEL, \
249 .channel2 = IIO_MOD_##mod, \
252 .scan_type = &adis##adis_nb##_iio_anglvel_scan_type, \
253 .attributes = attr, \
246#define ADIS_GYRO_CHAN(mod, idx, adis_nb, attr) { \ …
256#define ADIS_DELTA_ANGL_CHAN(mod, idx, adis_nb, attr) { \
257 .ch_type = IIO_DELTA_ANGL, \
259 .channel2 = IIO_MOD_##mod, \
262 .scan_type = &adis##adis_nb##_iio_delta_angl_scan_type, \
263 .attributes = attr, \
256#define ADIS_DELTA_ANGL_CHAN(mod, idx, adis_nb, attr) { \ …
266#define ADIS_DELTA_ANGL_CHAN_NO_SCAN(mod, idx, attr) { \
267 .ch_type = IIO_DELTA_ANGL, \
269 .channel2 = IIO_MOD_##mod, \
271 .attributes = attr, \
266#define ADIS_DELTA_ANGL_CHAN_NO_SCAN(mod, idx, attr) { \ …
274#define ADIS_DELTA_VEL_CHAN(mod, idx, adis_nb, attr) { \
275 .ch_type = IIO_DELTA_VELOCITY, \
277 .channel2 = IIO_MOD_##mod, \
280 .scan_type = &adis##adis_nb##_iio_delta_vel_scan_type, \
281 .attributes = attr, \
274#define ADIS_DELTA_VEL_CHAN(mod, idx, adis_nb, attr) { \ …
284#define ADIS_DELTA_VEL_CHAN_NO_SCAN(mod, idx, attr) { \
285 .ch_type = IIO_DELTA_VELOCITY, \
287 .channel2 = IIO_MOD_##mod, \
289 .attributes = attr, \
284#define ADIS_DELTA_VEL_CHAN_NO_SCAN(mod, idx, attr) { \ …
292#define ADIS_TEMP_CHAN(idx, adis_nb, attr) { \
293 .ch_type = IIO_TEMP, \
298 .scan_type = &adis##adis_nb##_iio_temp_scan_type, \
299 .attributes = attr, \
292#define ADIS_TEMP_CHAN(idx, adis_nb, attr) { \ …
357 uint32_t len,
const struct iio_ch_info *channel, intptr_t priv);
Error macro definition for ARM Compiler.
struct iio_attribute adis_iio_delta_vel_attrs[]
Definition iio_adis.c:1865
struct iio_attribute adis_iio_anglvel_attrs[]
Definition iio_adis.c:1804
struct iio_attribute adis_iio_temp_attrs[]
Definition iio_adis.c:1840
struct iio_attribute adis_iio_delta_angl_attrs[]
Definition iio_adis.c:1852
struct iio_attribute adis_iio_accel_attrs[]
Definition iio_adis.c:1822
struct iio_attribute adis_dev_attrs[]
Definition iio_adis.c:1788
@ ADIS_DIAG_Y_AXIS_ACCL_FAILURE
Definition iio_adis_internals.h:80
@ ADIS_FIFO_OVERFLOW
Definition iio_adis_internals.h:105
@ ADIS_SYNC_POLARITY
Definition iio_adis_internals.h:116
@ ADIS_DIO_3_LVL
Definition iio_adis_internals.h:128
@ ADIS_CMD_FACT_CALIB_RESTORE
Definition iio_adis_internals.h:164
@ ADIS_FIFO_WM_INT_POL
Definition iio_adis_internals.h:107
@ ADIS_DIAG_FLS_MEM_WR_CNT_EXCEED
Definition iio_adis_internals.h:95
@ ADIS_FIFO_WM_LVL
Definition iio_adis_internals.h:108
@ ADIS_FIR_BANK_SEL_XA
Definition iio_adis_internals.h:148
@ ADIS_CMD_FIFO_FLUSH
Definition iio_adis_internals.h:168
@ ADIS_ALARM_IND_POLARITY
Definition iio_adis_internals.h:120
@ ADIS_FIFO_WM_INT_EN
Definition iio_adis_internals.h:106
@ ADIS_DIAG_FLS_MEM_UPDATE_FAILURE
Definition iio_adis_internals.h:67
@ ADIS_PROC_REV
Definition iio_adis_internals.h:172
@ ADIS_TIMESTAMP32
Definition iio_adis_internals.h:135
@ ADIS_BIAS_CORR_EN_ZG
Definition iio_adis_internals.h:158
@ ADIS_FIR_BANK_SEL_ZA
Definition iio_adis_internals.h:150
@ ADIS_SERIAL_NUM
Definition iio_adis_internals.h:177
@ ADIS_DIO_2_DIR
Definition iio_adis_internals.h:123
@ ADIS_CMD_BIAS_CORR_UPDATE
Definition iio_adis_internals.h:163
@ ADIS_UP_SCALE
Definition iio_adis_internals.h:152
@ ADIS_DR_POLARITY
Definition iio_adis_internals.h:114
@ ADIS_FIRM_REV
Definition iio_adis_internals.h:174
@ ADIS_USR_SCR_1
Definition iio_adis_internals.h:179
@ ADIS_DR_ENABLE
Definition iio_adis_internals.h:113
@ ADIS_DR_LINE_SEL
Definition iio_adis_internals.h:115
@ ADIS_GYRO_FIR_ENABLE
Definition iio_adis_internals.h:137
@ ADIS_DIAG_CONFIG_CALIB_CRC_ERR
Definition iio_adis_internals.h:83
@ ADIS_BIAS_CORR_EN_YG
Definition iio_adis_internals.h:157
@ ADIS_DIAG_Z_AXIS_GYRO_FAILURE
Definition iio_adis_internals.h:78
@ ADIS_TIME_STAMP
Definition iio_adis_internals.h:98
@ ADIS_CMD_FLS_MEM_UPDATE
Definition iio_adis_internals.h:166
@ ADIS_PROD_ID
Definition iio_adis_internals.h:176
@ ADIS_DIO_1_DIR
Definition iio_adis_internals.h:122
@ ADIS_BIAS_CORR_EN_ZA
Definition iio_adis_internals.h:161
@ ADIS_FIR_BANK_SEL_YA
Definition iio_adis_internals.h:149
@ ADIS_BURST32
Definition iio_adis_internals.h:134
@ ADIS_DIAG_TEMP_ERR
Definition iio_adis_internals.h:85
@ ADIS_ACCL_FIR_ENABLE
Definition iio_adis_internals.h:138
@ ADIS_PT_OF_PERC_ALGNMT
Definition iio_adis_internals.h:131
@ ADIS_DEC_RATE
Definition iio_adis_internals.h:153
@ ADIS_GYRO_MEAS_RANGE
Definition iio_adis_internals.h:111
@ ADIS_SPI_CHKSUM
Definition iio_adis_internals.h:102
@ ADIS_BIAS_CORR_EN_XA
Definition iio_adis_internals.h:159
@ ADIS_CMD_WRITE_LOCK
Definition iio_adis_internals.h:170
@ ADIS_DIAG_Z_AXIS_ACCL_FAILURE
Definition iio_adis_internals.h:81
@ ADIS_DIAG_SNSR_FAILURE
Definition iio_adis_internals.h:70
@ ADIS_FIR_EN_XA
Definition iio_adis_internals.h:142
@ ADIS_FLS_MEM_WR_CNTR
Definition iio_adis_internals.h:183
@ ADIS_DIAG_INT_PROC_SUPPLY_ERR
Definition iio_adis_internals.h:90
@ ADIS_DIAG_CLK_ERR
Definition iio_adis_internals.h:72
@ ADIS_DIAG_INT_REG_ERR
Definition iio_adis_internals.h:93
@ ADIS_DIAG_GYRO1_FAILURE
Definition iio_adis_internals.h:73
@ ADIS_DIO_4_DIR
Definition iio_adis_internals.h:125
@ ADIS_SYNC_MODE
Definition iio_adis_internals.h:118
@ ADIS_CMD_SW_RES
Definition iio_adis_internals.h:169
@ ADIS_DIAG_X_AXIS_GYRO_FAILURE
Definition iio_adis_internals.h:76
@ ADIS_DIO_4_LVL
Definition iio_adis_internals.h:129
@ ADIS_FIR_BANK_SEL_YG
Definition iio_adis_internals.h:146
@ ADIS_DIAG_ACCL_FAILURE
Definition iio_adis_internals.h:75
@ ADIS_FIR_EN_ZA
Definition iio_adis_internals.h:144
@ ADIS_DIAG_X_AXIS_ACCL_FAILURE
Definition iio_adis_internals.h:79
@ ADIS_DIO_1_LVL
Definition iio_adis_internals.h:126
@ ADIS_BIAS_CORR_TBC
Definition iio_adis_internals.h:155
@ ADIS_DIO_3_DIR
Definition iio_adis_internals.h:124
@ ADIS_DIAG_ADUC_MCU_FAULT
Definition iio_adis_internals.h:82
@ ADIS_DIAG_REG_NVM_ERR
Definition iio_adis_internals.h:88
@ ADIS_FIR_EN_XG
Definition iio_adis_internals.h:139
@ ADIS_DIAG_SPI_COMM_ERR
Definition iio_adis_internals.h:68
@ ADIS_BURST_SEL
Definition iio_adis_internals.h:133
@ ADIS_DIAG_INT_SNSR_SUPPLY_ERR
Definition iio_adis_internals.h:92
@ ADIS_BOOT_REV
Definition iio_adis_internals.h:173
@ ADIS_FIFO_EN
Definition iio_adis_internals.h:104
@ ADIS_DIAG_OVERRANGE
Definition iio_adis_internals.h:84
@ ADIS_BIAS_CORR_EN_YA
Definition iio_adis_internals.h:160
@ ADIS_SYNC_LINE_SEL
Definition iio_adis_internals.h:117
@ ADIS_SENS_BW
Definition iio_adis_internals.h:130
@ ADIS_FIFO_CNT
Definition iio_adis_internals.h:101
@ ADIS_DIAG_STANDBY_MODE
Definition iio_adis_internals.h:69
@ ADIS_FIR_BANK_SEL_XG
Definition iio_adis_internals.h:145
@ ADIS_DIAG_DATA_PATH_OVERRUN
Definition iio_adis_internals.h:66
@ ADIS_FIR_BANK_SEL_ZG
Definition iio_adis_internals.h:147
@ ADIS_DIAG_MEM_FAILURE
Definition iio_adis_internals.h:71
@ ADIS_USR_SCR_2
Definition iio_adis_internals.h:180
@ ADIS_FIR_EN_YA
Definition iio_adis_internals.h:143
@ ADIS_USR_SCR_4
Definition iio_adis_internals.h:182
@ ADIS_DATA_CNTR
Definition iio_adis_internals.h:99
@ ADIS_USR_SCR_3
Definition iio_adis_internals.h:181
@ ADIS_DIAG_Y_AXIS_GYRO_FAILURE
Definition iio_adis_internals.h:77
@ ADIS_DIAG_EXT_5V_SUPPLY_ERR
Definition iio_adis_internals.h:91
@ ADIS_CMD_SNSR_SELF_TEST
Definition iio_adis_internals.h:165
@ ADIS_FIRM_DATE
Definition iio_adis_internals.h:175
@ ADIS_DIAG_WDG_TIMER_FLAG
Definition iio_adis_internals.h:89
@ ADIS_CMD_FLS_MEM_TEST
Definition iio_adis_internals.h:167
@ ADIS_ALARM_IND_ENABLE
Definition iio_adis_internals.h:119
@ ADIS_DIAG_LOST_SAMPLES_COUNT
Definition iio_adis_internals.h:96
@ ADIS_LINEAR_ACCL_COMP
Definition iio_adis_internals.h:132
@ ADIS_DIAG_BOOT_MEMORY_FAILURE
Definition iio_adis_internals.h:87
@ ADIS_FILT_SIZE_VAR_B
Definition iio_adis_internals.h:110
@ ADIS_FIR_EN_YG
Definition iio_adis_internals.h:140
@ ADIS_LOT_NUM
Definition iio_adis_internals.h:178
@ ADIS_DIAG_CHECKSUM_ERR
Definition iio_adis_internals.h:94
@ ADIS_DIAG_SNSR_INIT_FAILURE
Definition iio_adis_internals.h:65
@ ADIS_DIAG_GYRO2_FAILURE
Definition iio_adis_internals.h:74
@ ADIS_DIO_2_LVL
Definition iio_adis_internals.h:127
@ ADIS_BIAS_CORR_EN_XG
Definition iio_adis_internals.h:156
@ ADIS_ALARM_IND_LINE_SEL
Definition iio_adis_internals.h:121
@ ADIS_DIAG_POWER_SUPPLY_FAILURE
Definition iio_adis_internals.h:86
@ ADIS_EXT_CLK_FREQ
Definition iio_adis_internals.h:184
@ ADIS_FIR_EN_ZG
Definition iio_adis_internals.h:141
@ ADIS_SYNC_4KHZ
Definition iio_adis_internals.h:136
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:1707
struct iio_trigger adis_iio_trig_desc
Definition iio_adis_trig.c:38
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:159
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:54
int adis_iio_post_disable(void *dev, uint32_t mask)
API to be called after trigger is disabled.
Definition iio_adis.c:1457
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:329
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:82
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:67
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:738
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:378
int adis_iio_pre_enable(void *dev, uint32_t mask)
API to be called before trigger is enabled.
Definition iio_adis.c:1397
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:483
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:1206
int adis_iio_read_samples(void *dev, int *buff, uint32_t samples)
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:642
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:273
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:1729
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:231
@ ADIS_DELTA_ANGL_Z
Definition iio_adis_internals.h:54
@ ADIS_GYRO_X
Definition iio_adis_internals.h:45
@ ADIS_GYRO_Y
Definition iio_adis_internals.h:46
@ ADIS_ACCEL_X
Definition iio_adis_internals.h:48
@ ADIS_DELTA_VEL_Z
Definition iio_adis_internals.h:57
@ ADIS_DELTA_ANGL_X
Definition iio_adis_internals.h:52
@ ADIS_TEMP
Definition iio_adis_internals.h:51
@ ADIS_ACCEL_Z
Definition iio_adis_internals.h:50
@ ADIS_NUM_CHAN
Definition iio_adis_internals.h:58
@ ADIS_ACCEL_Y
Definition iio_adis_internals.h:49
@ ADIS_DELTA_VEL_Y
Definition iio_adis_internals.h:56
@ ADIS_GYRO_Z
Definition iio_adis_internals.h:47
@ ADIS_DELTA_ANGL_Y
Definition iio_adis_internals.h:53
@ ADIS_DELTA_VEL_X
Definition iio_adis_internals.h:55
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:547
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:862
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:434
ADIS IIO channels enumeration.
ADIS IIO debug attributes enumeration.
ADIS IIO device descriptor structure.
Definition iio_adis_internals.h:210
uint32_t data_cntr
Definition iio_adis_internals.h:218
uint32_t sampling_frequency
Definition iio_adis_internals.h:220
uint32_t burst_size
Definition iio_adis_internals.h:222
uint32_t burst_sel
Definition iio_adis_internals.h:224
const char * rang_mdl_txt
Definition iio_adis_internals.h:232
struct iio_device * iio_dev
Definition iio_adis_internals.h:214
struct adis_dev * adis_dev
Definition iio_adis_internals.h:212
uint32_t sync_mode
Definition iio_adis_internals.h:226
struct iio_hw_trig * hw_trig_desc
Definition iio_adis_internals.h:233
uint16_t samples_lost
Definition iio_adis_internals.h:216
uint16_t data[26]
Definition iio_adis_internals.h:228
bool has_fifo
Definition iio_adis_internals.h:230
ADIS IIO fractional log2 scale format structure; scale = dividend/2^power.
Definition iio_adis_internals.h:200
uint32_t power
Definition iio_adis_internals.h:204
uint32_t dividend
Definition iio_adis_internals.h:202
ADIS IIO fractional scale format structure; scale = dividend/divisor.
Definition iio_adis_internals.h:190
uint32_t dividend
Definition iio_adis_internals.h:192
uint32_t divisor
Definition iio_adis_internals.h:194
Definition ad9361_util.h:63
Structure holding pointers to show and store functions.
Definition iio_types.h:120
Structure holding channel attributess.
Definition iio_types.h:94
Definition iio_types.h:217
Structure holding channels and attributes of a device.
Definition iio_types.h:238
IIO hardware trigger structure.
Definition iio_trigger.h:47
Definition iio_types.h:222