no-OS
iio_adis_internals.h
Go to the documentation of this file.
1 /***************************************************************************/
35 #ifndef IIO_ADIS_INTERNALS_H
36 #define IIO_ADIS_INTERNALS_H
37 
38 /******************************************************************************/
39 /***************************** Include Files **********************************/
40 /******************************************************************************/
41 
42 #include "iio.h"
43 #include <errno.h>
44 
45 /******************************************************************************/
46 /*************************** Types Declarations *******************************/
47 /******************************************************************************/
48 
67 };
68 
105 
108 
111 
117 
120 
159 
162 
170 
179 
193 };
194 
200  uint32_t dividend;
202  uint32_t divisor;
203 };
204 
210  uint32_t dividend;
212  uint32_t power;
213 };
214 
218 struct adis_iio_dev {
224  uint16_t samples_lost;
226  uint32_t data_cntr;
230  uint32_t burst_size;
232  uint32_t burst_sel;
234  uint32_t sync_mode;
236  uint16_t data[26];
238  bool has_fifo;
240  const char *rang_mdl_txt;
242 };
243 
244 /******************************************************************************/
245 /********************** Macros and Constants Definitions **********************/
246 /******************************************************************************/
247 
248 #define ADIS_ACCEL_CHAN(mod, idx, adis_nb, attr) { \
249  .ch_type = IIO_ACCEL, \
250  .modified = true, \
251  .channel2 = IIO_MOD_##mod, \
252  .address = idx, \
253  .scan_index = idx, \
254  .scan_type = &adis##adis_nb##_iio_accel_scan_type, \
255  .attributes = attr, \
256 }
257 
258 #define ADIS_GYRO_CHAN(mod, idx, adis_nb, attr) { \
259  .ch_type = IIO_ANGL_VEL, \
260  .modified = true, \
261  .channel2 = IIO_MOD_##mod, \
262  .address = idx, \
263  .scan_index = idx, \
264  .scan_type = &adis##adis_nb##_iio_anglvel_scan_type, \
265  .attributes = attr, \
266 }
267 
268 #define ADIS_DELTA_ANGL_CHAN(mod, idx, adis_nb, attr) { \
269  .ch_type = IIO_DELTA_ANGL, \
270  .modified = true, \
271  .channel2 = IIO_MOD_##mod, \
272  .address = idx, \
273  .scan_index = idx, \
274  .scan_type = &adis##adis_nb##_iio_delta_angl_scan_type, \
275  .attributes = attr, \
276 }
277 
278 #define ADIS_DELTA_ANGL_CHAN_NO_SCAN(mod, idx, attr) { \
279  .ch_type = IIO_DELTA_ANGL, \
280  .modified = true, \
281  .channel2 = IIO_MOD_##mod, \
282  .address = idx, \
283  .attributes = attr, \
284 }
285 
286 #define ADIS_DELTA_VEL_CHAN(mod, idx, adis_nb, attr) { \
287  .ch_type = IIO_DELTA_VELOCITY, \
288  .modified = true, \
289  .channel2 = IIO_MOD_##mod, \
290  .address = idx, \
291  .scan_index = idx, \
292  .scan_type = &adis##adis_nb##_iio_delta_vel_scan_type, \
293  .attributes = attr, \
294 }
295 
296 #define ADIS_DELTA_VEL_CHAN_NO_SCAN(mod, idx, attr) { \
297  .ch_type = IIO_DELTA_VELOCITY, \
298  .modified = true, \
299  .channel2 = IIO_MOD_##mod, \
300  .address = idx, \
301  .attributes = attr, \
302 }
303 
304 #define ADIS_TEMP_CHAN(idx, adis_nb, attr) { \
305  .ch_type = IIO_TEMP, \
306  .channel = 0, \
307  .indexed = true, \
308  .address = idx, \
309  .scan_index = idx, \
310  .scan_type = &adis##adis_nb##_iio_temp_scan_type, \
311  .attributes = attr, \
312 }
313 
314 /******************************************************************************/
315 /************************ Variables Declarations ******************************/
316 /******************************************************************************/
317 
318 extern struct iio_attribute adis_dev_attrs[];
319 extern struct iio_attribute adis_iio_anglvel_attrs[];
322 extern struct iio_attribute adis_iio_accel_attrs[];
323 extern struct iio_attribute adis_iio_temp_attrs[];
324 extern struct iio_trigger adis_iio_trig_desc;
325 
326 /******************************************************************************/
327 /************************ Functions Declarations ******************************/
328 /******************************************************************************/
329 
331 int adis_iio_pre_enable(void* dev, uint32_t mask);
333 int adis_iio_post_disable(void* dev, uint32_t mask);
335 int adis_iio_read_samples(void* dev, int* buff, uint32_t samples);
337 int adis_iio_trigger_handler(struct iio_device_data *dev_data);
339 
341 int adis_iio_read_debug_attrs(void *dev, char *buf, uint32_t len,
342  const struct iio_ch_info *channel, intptr_t priv);
344 int adis_iio_write_debug_attrs(void *dev, char *buf, uint32_t len,
345  const struct iio_ch_info *channel, intptr_t priv);
346 
348 int adis_iio_read_reg(struct adis_iio_dev *device, uint32_t reg,
349  uint32_t *readval);
351 int adis_iio_write_reg(struct adis_iio_dev *device, uint32_t reg,
352  uint32_t writeval);
353 
355 int adis_iio_read_raw(void *dev, char *buf, uint32_t len,
356  const struct iio_ch_info *channel, intptr_t priv);
358 int adis_iio_read_scale(void *dev, char *buf, uint32_t len,
359  const struct iio_ch_info *channel, intptr_t priv);
361 int adis_iio_read_offset(void *dev, char *buf, uint32_t len,
362  const struct iio_ch_info *channel, intptr_t priv);
364 int adis_iio_read_calibbias(void *dev, char *buf, uint32_t len,
365  const struct iio_ch_info *channel, intptr_t priv);
367 int adis_iio_write_calibbias(void *dev, char *buf, uint32_t len,
368  const struct iio_ch_info *channel, intptr_t priv);
370 int adis_iio_read_calibscale(void *dev, char *buf, uint32_t len,
371  const struct iio_ch_info *channel, intptr_t priv);
373 int adis_iio_write_calibscale(void *dev, char *buf, uint32_t len,
374  const struct iio_ch_info *channel, intptr_t priv);
376 int adis_iio_write_sampling_freq(void *dev, char *buf,
377  uint32_t len, const struct iio_ch_info *channel, intptr_t priv);
379 int adis_iio_read_sampling_freq(void *dev, char *buf, uint32_t len,
380  const struct iio_ch_info *channel, intptr_t priv);
382 int adis_iio_read_lpf(void *dev, char *buf, uint32_t len,
383  const struct iio_ch_info *channel, intptr_t priv);
385 int adis_iio_write_lpf(void *dev, char *buf, uint32_t len,
386  const struct iio_ch_info *channel, intptr_t priv);
387 #endif
adis_iio_pre_enable
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
@ ADIS_CMD_SNSR_SELF_TEST
Definition: iio_adis_internals.h:173
ADIS_DELTA_ANGL_Z
@ ADIS_DELTA_ANGL_Z
Definition: iio_adis_internals.h:62
ADIS_DIO_3_DIR
@ ADIS_DIO_3_DIR
Definition: iio_adis_internals.h:132
ADIS_FIR_BANK_SEL_ZG
@ ADIS_FIR_BANK_SEL_ZG
Definition: iio_adis_internals.h:155
adis_iio_dev::burst_sel
uint32_t burst_sel
Definition: iio_adis_internals.h:232
ADIS_DIAG_FLS_MEM_WR_CNT_EXCEED
@ ADIS_DIAG_FLS_MEM_WR_CNT_EXCEED
Definition: iio_adis_internals.h:103
ADIS_FIR_EN_XG
@ ADIS_FIR_EN_XG
Definition: iio_adis_internals.h:147
adis_iio_dev::samples_lost
uint16_t samples_lost
Definition: iio_adis_internals.h:224
ADIS_DIAG_EXT_5V_SUPPLY_ERR
@ ADIS_DIAG_EXT_5V_SUPPLY_ERR
Definition: iio_adis_internals.h:99
ADIS_FIFO_WM_INT_EN
@ ADIS_FIFO_WM_INT_EN
Definition: iio_adis_internals.h:114
adis_iio_post_disable
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
@ ADIS_ACCEL_Z
Definition: iio_adis_internals.h:58
ADIS_DIAG_POWER_SUPPLY_FAILURE
@ ADIS_DIAG_POWER_SUPPLY_FAILURE
Definition: iio_adis_internals.h:94
ADIS_DIAG_FLS_MEM_UPDATE_FAILURE
@ ADIS_DIAG_FLS_MEM_UPDATE_FAILURE
Definition: iio_adis_internals.h:75
ADIS_DR_ENABLE
@ ADIS_DR_ENABLE
Definition: iio_adis_internals.h:121
ADIS_GYRO_Z
@ ADIS_GYRO_Z
Definition: iio_adis_internals.h:55
ADIS_ALARM_IND_ENABLE
@ ADIS_ALARM_IND_ENABLE
Definition: iio_adis_internals.h:127
ADIS_BOOT_REV
@ ADIS_BOOT_REV
Definition: iio_adis_internals.h:181
adis_iio_read_calibscale
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
adis_iio_dev::sync_mode
uint32_t sync_mode
Definition: iio_adis_internals.h:234
adis_iio_dev::hw_trig_desc
struct iio_hw_trig * hw_trig_desc
Definition: iio_adis_internals.h:241
adis_iio_dev::iio_dev
struct iio_device * iio_dev
Definition: iio_adis_internals.h:222
ADIS_BURST_SEL
@ ADIS_BURST_SEL
Definition: iio_adis_internals.h:141
ADIS_FIFO_WM_LVL
@ ADIS_FIFO_WM_LVL
Definition: iio_adis_internals.h:116
ADIS_ALARM_IND_POLARITY
@ ADIS_ALARM_IND_POLARITY
Definition: iio_adis_internals.h:128
ADIS_FIRM_REV
@ ADIS_FIRM_REV
Definition: iio_adis_internals.h:182
ADIS_BIAS_CORR_EN_YG
@ ADIS_BIAS_CORR_EN_YG
Definition: iio_adis_internals.h:165
iio_ch_info
Structure holding channel attributess.
Definition: iio_types.h:103
adis_iio_scale_fractional::dividend
uint32_t dividend
Definition: iio_adis_internals.h:200
ADIS_FIFO_EN
@ ADIS_FIFO_EN
Definition: iio_adis_internals.h:112
ADIS_SYNC_LINE_SEL
@ ADIS_SYNC_LINE_SEL
Definition: iio_adis_internals.h:125
ADIS_USR_SCR_2
@ ADIS_USR_SCR_2
Definition: iio_adis_internals.h:188
ADIS_CMD_FACT_CALIB_RESTORE
@ ADIS_CMD_FACT_CALIB_RESTORE
Definition: iio_adis_internals.h:172
ADIS_DR_POLARITY
@ ADIS_DR_POLARITY
Definition: iio_adis_internals.h:122
ADIS_DIO_1_LVL
@ ADIS_DIO_1_LVL
Definition: iio_adis_internals.h:134
ADIS_DELTA_VEL_Y
@ ADIS_DELTA_VEL_Y
Definition: iio_adis_internals.h:64
ADIS_FILT_SIZE_VAR_B
@ ADIS_FILT_SIZE_VAR_B
Definition: iio_adis_internals.h:118
ADIS_DIAG_LOST_SAMPLES_COUNT
@ ADIS_DIAG_LOST_SAMPLES_COUNT
Definition: iio_adis_internals.h:104
device
Definition: ad9361_util.h:69
ADIS_SYNC_4KHZ
@ ADIS_SYNC_4KHZ
Definition: iio_adis_internals.h:144
ADIS_FIR_EN_ZA
@ ADIS_FIR_EN_ZA
Definition: iio_adis_internals.h:152
adis_iio_dev::has_fifo
bool has_fifo
Definition: iio_adis_internals.h:238
ADIS_PROC_REV
@ ADIS_PROC_REV
Definition: iio_adis_internals.h:180
ADIS_EXT_CLK_FREQ
@ ADIS_EXT_CLK_FREQ
Definition: iio_adis_internals.h:192
ADIS_DIAG_ACCL_FAILURE
@ ADIS_DIAG_ACCL_FAILURE
Definition: iio_adis_internals.h:83
ADIS_LOT_NUM
@ ADIS_LOT_NUM
Definition: iio_adis_internals.h:186
ADIS_ACCEL_X
@ ADIS_ACCEL_X
Definition: iio_adis_internals.h:56
ADIS_DIAG_TEMP_ERR
@ ADIS_DIAG_TEMP_ERR
Definition: iio_adis_internals.h:93
ADIS_SYNC_POLARITY
@ ADIS_SYNC_POLARITY
Definition: iio_adis_internals.h:124
ADIS_DATA_CNTR
@ ADIS_DATA_CNTR
Definition: iio_adis_internals.h:107
adis_iio_read_reg
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
@ ADIS_GYRO_Y
Definition: iio_adis_internals.h:54
adis_iio_read_calibbias
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
@ ADIS_FIR_EN_ZG
Definition: iio_adis_internals.h:149
ADIS_DIO_2_DIR
@ ADIS_DIO_2_DIR
Definition: iio_adis_internals.h:131
adis_iio_dev
ADIS IIO device descriptor structure.
Definition: iio_adis_internals.h:218
ADIS_FIR_BANK_SEL_XA
@ ADIS_FIR_BANK_SEL_XA
Definition: iio_adis_internals.h:156
ADIS_DIAG_Y_AXIS_ACCL_FAILURE
@ ADIS_DIAG_Y_AXIS_ACCL_FAILURE
Definition: iio_adis_internals.h:88
adis_iio_dev::data
uint16_t data[26]
Definition: iio_adis_internals.h:236
ADIS_BIAS_CORR_EN_ZG
@ ADIS_BIAS_CORR_EN_ZG
Definition: iio_adis_internals.h:166
ADIS_SPI_CHKSUM
@ ADIS_SPI_CHKSUM
Definition: iio_adis_internals.h:110
iio.h
Header file of iio.
adis_dev
ADIS device descriptor structure.
Definition: adis.h:270
ADIS_PROD_ID
@ ADIS_PROD_ID
Definition: iio_adis_internals.h:184
adis_iio_write_reg
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
@ ADIS_BIAS_CORR_EN_ZA
Definition: iio_adis_internals.h:169
ADIS_DELTA_ANGL_X
@ ADIS_DELTA_ANGL_X
Definition: iio_adis_internals.h:60
ADIS_DIAG_WDG_TIMER_FLAG
@ ADIS_DIAG_WDG_TIMER_FLAG
Definition: iio_adis_internals.h:97
ADIS_SENS_BW
@ ADIS_SENS_BW
Definition: iio_adis_internals.h:138
ADIS_TIMESTAMP32
@ ADIS_TIMESTAMP32
Definition: iio_adis_internals.h:143
ADIS_DIAG_Z_AXIS_GYRO_FAILURE
@ ADIS_DIAG_Z_AXIS_GYRO_FAILURE
Definition: iio_adis_internals.h:86
ADIS_DIAG_DATA_PATH_OVERRUN
@ ADIS_DIAG_DATA_PATH_OVERRUN
Definition: iio_adis_internals.h:74
ADIS_DIAG_ADUC_MCU_FAULT
@ ADIS_DIAG_ADUC_MCU_FAULT
Definition: iio_adis_internals.h:90
ADIS_CMD_FLS_MEM_UPDATE
@ ADIS_CMD_FLS_MEM_UPDATE
Definition: iio_adis_internals.h:174
adis_iio_read_lpf
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
@ ADIS_DELTA_VEL_X
Definition: iio_adis_internals.h:63
ADIS_BIAS_CORR_EN_XA
@ ADIS_BIAS_CORR_EN_XA
Definition: iio_adis_internals.h:167
ADIS_GYRO_X
@ ADIS_GYRO_X
Definition: iio_adis_internals.h:53
ADIS_FIR_EN_YA
@ ADIS_FIR_EN_YA
Definition: iio_adis_internals.h:151
adis_iio_debug_attrs
ADIS IIO debug attributes enumeration.
ADIS_TIME_STAMP
@ ADIS_TIME_STAMP
Definition: iio_adis_internals.h:106
adis_iio_write_debug_attrs
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
@ ADIS_SYNC_MODE
Definition: iio_adis_internals.h:126
ADIS_DIAG_OVERRANGE
@ ADIS_DIAG_OVERRANGE
Definition: iio_adis_internals.h:92
adis_iio_scale_fractional_log2::power
uint32_t power
Definition: iio_adis_internals.h:212
ADIS_DIAG_GYRO1_FAILURE
@ ADIS_DIAG_GYRO1_FAILURE
Definition: iio_adis_internals.h:81
iio_attribute
Structure holding pointers to show and store functions.
Definition: iio_types.h:129
ADIS_DIAG_CONFIG_CALIB_CRC_ERR
@ ADIS_DIAG_CONFIG_CALIB_CRC_ERR
Definition: iio_adis_internals.h:91
ADIS_CMD_FLS_MEM_TEST
@ ADIS_CMD_FLS_MEM_TEST
Definition: iio_adis_internals.h:175
adis_iio_read_offset
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_scale_fractional
ADIS IIO fractional scale format structure; scale = dividend/divisor.
Definition: iio_adis_internals.h:198
ADIS_DIAG_CHECKSUM_ERR
@ ADIS_DIAG_CHECKSUM_ERR
Definition: iio_adis_internals.h:102
adis_dev_attrs
struct iio_attribute adis_dev_attrs[]
Definition: iio_adis.c:1803
adis_iio_chan_type
ADIS IIO channels enumeration.
adis_iio_scale_fractional::divisor
uint32_t divisor
Definition: iio_adis_internals.h:202
adis_iio_read_scale
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
adis_iio_read_samples
int adis_iio_read_samples(void *dev, int *buff, uint32_t samples)
ADIS_DELTA_VEL_Z
@ ADIS_DELTA_VEL_Z
Definition: iio_adis_internals.h:65
adis_iio_dev::rang_mdl_txt
const char * rang_mdl_txt
Definition: iio_adis_internals.h:240
adis_iio_delta_vel_attrs
struct iio_attribute adis_iio_delta_vel_attrs[]
Definition: iio_adis.c:1880
ADIS_FIR_BANK_SEL_YG
@ ADIS_FIR_BANK_SEL_YG
Definition: iio_adis_internals.h:154
ADIS_FIR_BANK_SEL_ZA
@ ADIS_FIR_BANK_SEL_ZA
Definition: iio_adis_internals.h:158
ADIS_DELTA_ANGL_Y
@ ADIS_DELTA_ANGL_Y
Definition: iio_adis_internals.h:61
adis_iio_trigger_handler_with_fifo
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
@ ADIS_DIAG_INT_SNSR_SUPPLY_ERR
Definition: iio_adis_internals.h:100
adis_iio_write_calibbias
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
adis_iio_write_sampling_freq
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
adis_iio_read_raw
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
@ ADIS_DIO_4_DIR
Definition: iio_adis_internals.h:133
ADIS_DIO_3_LVL
@ ADIS_DIO_3_LVL
Definition: iio_adis_internals.h:136
ADIS_FIFO_CNT
@ ADIS_FIFO_CNT
Definition: iio_adis_internals.h:109
ADIS_DIAG_REG_NVM_ERR
@ ADIS_DIAG_REG_NVM_ERR
Definition: iio_adis_internals.h:96
adis_iio_trig_desc
struct iio_trigger adis_iio_trig_desc
Definition: iio_adis_trig.c:46
adis_iio_anglvel_attrs
struct iio_attribute adis_iio_anglvel_attrs[]
Definition: iio_adis.c:1819
ADIS_DIAG_SNSR_FAILURE
@ ADIS_DIAG_SNSR_FAILURE
Definition: iio_adis_internals.h:78
ADIS_DEC_RATE
@ ADIS_DEC_RATE
Definition: iio_adis_internals.h:161
adis_iio_scale_fractional_log2::dividend
uint32_t dividend
Definition: iio_adis_internals.h:210
ADIS_DIO_4_LVL
@ ADIS_DIO_4_LVL
Definition: iio_adis_internals.h:137
ADIS_DIAG_Z_AXIS_ACCL_FAILURE
@ ADIS_DIAG_Z_AXIS_ACCL_FAILURE
Definition: iio_adis_internals.h:89
adis_iio_temp_attrs
struct iio_attribute adis_iio_temp_attrs[]
Definition: iio_adis.c:1855
ADIS_DIAG_GYRO2_FAILURE
@ ADIS_DIAG_GYRO2_FAILURE
Definition: iio_adis_internals.h:82
ADIS_DIAG_SNSR_INIT_FAILURE
@ ADIS_DIAG_SNSR_INIT_FAILURE
Definition: iio_adis_internals.h:73
ADIS_FIR_EN_YG
@ ADIS_FIR_EN_YG
Definition: iio_adis_internals.h:148
ADIS_NUM_CHAN
@ ADIS_NUM_CHAN
Definition: iio_adis_internals.h:66
ADIS_UP_SCALE
@ ADIS_UP_SCALE
Definition: iio_adis_internals.h:160
adis_iio_write_calibscale
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
adis_iio_write_lpf
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
@ ADIS_ACCL_FIR_ENABLE
Definition: iio_adis_internals.h:146
ADIS_DIAG_MEM_FAILURE
@ ADIS_DIAG_MEM_FAILURE
Definition: iio_adis_internals.h:79
ADIS_FIR_BANK_SEL_XG
@ ADIS_FIR_BANK_SEL_XG
Definition: iio_adis_internals.h:153
ADIS_FIFO_WM_INT_POL
@ ADIS_FIFO_WM_INT_POL
Definition: iio_adis_internals.h:115
ADIS_FLS_MEM_WR_CNTR
@ ADIS_FLS_MEM_WR_CNTR
Definition: iio_adis_internals.h:191
ADIS_DIAG_CLK_ERR
@ ADIS_DIAG_CLK_ERR
Definition: iio_adis_internals.h:80
ADIS_DIAG_Y_AXIS_GYRO_FAILURE
@ ADIS_DIAG_Y_AXIS_GYRO_FAILURE
Definition: iio_adis_internals.h:85
adis_iio_trigger_handler
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
iio_trigger
Definition: iio_types.h:231
ADIS_DIAG_INT_PROC_SUPPLY_ERR
@ ADIS_DIAG_INT_PROC_SUPPLY_ERR
Definition: iio_adis_internals.h:98
ADIS_CMD_FIFO_FLUSH
@ ADIS_CMD_FIFO_FLUSH
Definition: iio_adis_internals.h:176
ADIS_DIAG_X_AXIS_ACCL_FAILURE
@ ADIS_DIAG_X_AXIS_ACCL_FAILURE
Definition: iio_adis_internals.h:87
ADIS_SERIAL_NUM
@ ADIS_SERIAL_NUM
Definition: iio_adis_internals.h:185
adis_iio_delta_angl_attrs
struct iio_attribute adis_iio_delta_angl_attrs[]
Definition: iio_adis.c:1867
adis_iio_scale_fractional_log2
ADIS IIO fractional log2 scale format structure; scale = dividend/2^power.
Definition: iio_adis_internals.h:208
ADIS_LINEAR_ACCL_COMP
@ ADIS_LINEAR_ACCL_COMP
Definition: iio_adis_internals.h:140
ADIS_DIAG_SPI_COMM_ERR
@ ADIS_DIAG_SPI_COMM_ERR
Definition: iio_adis_internals.h:76
iio_device
Structure holding channels and attributes of a device.
Definition: iio_types.h:247
ADIS_USR_SCR_3
@ ADIS_USR_SCR_3
Definition: iio_adis_internals.h:189
ADIS_DIAG_STANDBY_MODE
@ ADIS_DIAG_STANDBY_MODE
Definition: iio_adis_internals.h:77
ADIS_DIO_1_DIR
@ ADIS_DIO_1_DIR
Definition: iio_adis_internals.h:130
ADIS_DIAG_X_AXIS_GYRO_FAILURE
@ ADIS_DIAG_X_AXIS_GYRO_FAILURE
Definition: iio_adis_internals.h:84
ADIS_BIAS_CORR_EN_XG
@ ADIS_BIAS_CORR_EN_XG
Definition: iio_adis_internals.h:164
ADIS_BURST32
@ ADIS_BURST32
Definition: iio_adis_internals.h:142
ADIS_DR_LINE_SEL
@ ADIS_DR_LINE_SEL
Definition: iio_adis_internals.h:123
ADIS_BIAS_CORR_EN_YA
@ ADIS_BIAS_CORR_EN_YA
Definition: iio_adis_internals.h:168
adis_iio_dev::burst_size
uint32_t burst_size
Definition: iio_adis_internals.h:230
ADIS_DIAG_BOOT_MEMORY_FAILURE
@ ADIS_DIAG_BOOT_MEMORY_FAILURE
Definition: iio_adis_internals.h:95
ADIS_BIAS_CORR_TBC
@ ADIS_BIAS_CORR_TBC
Definition: iio_adis_internals.h:163
ADIS_FIFO_OVERFLOW
@ ADIS_FIFO_OVERFLOW
Definition: iio_adis_internals.h:113
ADIS_PT_OF_PERC_ALGNMT
@ ADIS_PT_OF_PERC_ALGNMT
Definition: iio_adis_internals.h:139
adis_iio_dev::adis_dev
struct adis_dev * adis_dev
Definition: iio_adis_internals.h:220
ADIS_FIRM_DATE
@ ADIS_FIRM_DATE
Definition: iio_adis_internals.h:183
iio_device_data
Definition: iio_types.h:226
adis_iio_dev::data_cntr
uint32_t data_cntr
Definition: iio_adis_internals.h:226
adis_iio_dev::sampling_frequency
uint32_t sampling_frequency
Definition: iio_adis_internals.h:228
ADIS_DIAG_INT_REG_ERR
@ ADIS_DIAG_INT_REG_ERR
Definition: iio_adis_internals.h:101
adis_iio_accel_attrs
struct iio_attribute adis_iio_accel_attrs[]
Definition: iio_adis.c:1837
ADIS_CMD_SW_RES
@ ADIS_CMD_SW_RES
Definition: iio_adis_internals.h:177
ADIS_USR_SCR_1
@ ADIS_USR_SCR_1
Definition: iio_adis_internals.h:187
ADIS_ALARM_IND_LINE_SEL
@ ADIS_ALARM_IND_LINE_SEL
Definition: iio_adis_internals.h:129
ADIS_GYRO_FIR_ENABLE
@ ADIS_GYRO_FIR_ENABLE
Definition: iio_adis_internals.h:145
ADIS_TEMP
@ ADIS_TEMP
Definition: iio_adis_internals.h:59
ADIS_FIR_BANK_SEL_YA
@ ADIS_FIR_BANK_SEL_YA
Definition: iio_adis_internals.h:157
iio_hw_trig
IIO hardware trigger structure.
Definition: iio_trigger.h:56
ADIS_CMD_WRITE_LOCK
@ ADIS_CMD_WRITE_LOCK
Definition: iio_adis_internals.h:178
ADIS_USR_SCR_4
@ ADIS_USR_SCR_4
Definition: iio_adis_internals.h:190
ADIS_FIR_EN_XA
@ ADIS_FIR_EN_XA
Definition: iio_adis_internals.h:150
adis_iio_read_sampling_freq
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
@ ADIS_ACCEL_Y
Definition: iio_adis_internals.h:57
errno.h
Error macro definition for ARM Compiler.
ADIS_DIO_2_LVL
@ ADIS_DIO_2_LVL
Definition: iio_adis_internals.h:135
adis_iio_read_debug_attrs
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
@ ADIS_GYRO_MEAS_RANGE
Definition: iio_adis_internals.h:119
ADIS_CMD_BIAS_CORR_UPDATE
@ ADIS_CMD_BIAS_CORR_UPDATE
Definition: iio_adis_internals.h:171