Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Functions
adis16400.h File Reference

Go to the source code of this file.

Data Structures

struct  adis16400_chip_info
 
struct  adis16400_state
 

Macros

#define ADIS16400_STARTUP_DELAY   290 /* ms */
 
#define ADIS16400_MTEST_DELAY   90 /* ms */
 
#define ADIS16400_READ_REG(a)   a
 
#define ADIS16400_WRITE_REG(a)   ((a) | 0x80)
 
#define ADIS16400_FLASH_CNT   0x00 /* Flash memory write count */
 
#define ADIS16400_SUPPLY_OUT   0x02 /* Power supply measurement */
 
#define ADIS16400_XGYRO_OUT   0x04 /* X-axis gyroscope output */
 
#define ADIS16400_YGYRO_OUT   0x06 /* Y-axis gyroscope output */
 
#define ADIS16400_ZGYRO_OUT   0x08 /* Z-axis gyroscope output */
 
#define ADIS16400_XACCL_OUT   0x0A /* X-axis accelerometer output */
 
#define ADIS16400_YACCL_OUT   0x0C /* Y-axis accelerometer output */
 
#define ADIS16400_ZACCL_OUT   0x0E /* Z-axis accelerometer output */
 
#define ADIS16400_XMAGN_OUT   0x10 /* X-axis magnetometer measurement */
 
#define ADIS16400_YMAGN_OUT   0x12 /* Y-axis magnetometer measurement */
 
#define ADIS16400_ZMAGN_OUT   0x14 /* Z-axis magnetometer measurement */
 
#define ADIS16400_TEMP_OUT   0x16 /* Temperature output */
 
#define ADIS16400_AUX_ADC   0x18 /* Auxiliary ADC measurement */
 
#define ADIS16350_XTEMP_OUT   0x10 /* X-axis gyroscope temperature measurement */
 
#define ADIS16350_YTEMP_OUT   0x12 /* Y-axis gyroscope temperature measurement */
 
#define ADIS16350_ZTEMP_OUT   0x14 /* Z-axis gyroscope temperature measurement */
 
#define ADIS16300_PITCH_OUT   0x12 /* X axis inclinometer output measurement */
 
#define ADIS16300_ROLL_OUT   0x14 /* Y axis inclinometer output measurement */
 
#define ADIS16300_AUX_ADC   0x16 /* Auxiliary ADC measurement */
 
#define ADIS16400_XGYRO_OFF   0x1A /* X-axis gyroscope bias offset factor */
 
#define ADIS16400_YGYRO_OFF   0x1C /* Y-axis gyroscope bias offset factor */
 
#define ADIS16400_ZGYRO_OFF   0x1E /* Z-axis gyroscope bias offset factor */
 
#define ADIS16400_XACCL_OFF   0x20 /* X-axis acceleration bias offset factor */
 
#define ADIS16400_YACCL_OFF   0x22 /* Y-axis acceleration bias offset factor */
 
#define ADIS16400_ZACCL_OFF   0x24 /* Z-axis acceleration bias offset factor */
 
#define ADIS16400_XMAGN_HIF   0x26 /* X-axis magnetometer, hard-iron factor */
 
#define ADIS16400_YMAGN_HIF   0x28 /* Y-axis magnetometer, hard-iron factor */
 
#define ADIS16400_ZMAGN_HIF   0x2A /* Z-axis magnetometer, hard-iron factor */
 
#define ADIS16400_XMAGN_SIF   0x2C /* X-axis magnetometer, soft-iron factor */
 
#define ADIS16400_YMAGN_SIF   0x2E /* Y-axis magnetometer, soft-iron factor */
 
#define ADIS16400_ZMAGN_SIF   0x30 /* Z-axis magnetometer, soft-iron factor */
 
#define ADIS16400_GPIO_CTRL   0x32 /* Auxiliary digital input/output control */
 
#define ADIS16400_MSC_CTRL   0x34 /* Miscellaneous control */
 
#define ADIS16400_SMPL_PRD   0x36 /* Internal sample period (rate) control */
 
#define ADIS16400_SENS_AVG   0x38 /* Dynamic range and digital filter control */
 
#define ADIS16400_SLP_CNT   0x3A /* Sleep mode control */
 
#define ADIS16400_DIAG_STAT   0x3C /* System status */
 
#define ADIS16400_GLOB_CMD   0x3E /* System command */
 
#define ADIS16400_ALM_MAG1   0x40 /* Alarm 1 amplitude threshold */
 
#define ADIS16400_ALM_MAG2   0x42 /* Alarm 2 amplitude threshold */
 
#define ADIS16400_ALM_SMPL1   0x44 /* Alarm 1 sample size */
 
#define ADIS16400_ALM_SMPL2   0x46 /* Alarm 2 sample size */
 
#define ADIS16400_ALM_CTRL   0x48 /* Alarm control */
 
#define ADIS16400_AUX_DAC   0x4A /* Auxiliary DAC data */
 
#define ADIS16400_PRODUCT_ID   0x56 /* Product identifier */
 
#define ADIS16400_ERROR_ACTIVE   (1<<14)
 
#define ADIS16400_NEW_DATA   (1<<14)
 
#define ADIS16400_MSC_CTRL_MEM_TEST   (1<<11)
 
#define ADIS16400_MSC_CTRL_INT_SELF_TEST   (1<<10)
 
#define ADIS16400_MSC_CTRL_NEG_SELF_TEST   (1<<9)
 
#define ADIS16400_MSC_CTRL_POS_SELF_TEST   (1<<8)
 
#define ADIS16400_MSC_CTRL_GYRO_BIAS   (1<<7)
 
#define ADIS16400_MSC_CTRL_ACCL_ALIGN   (1<<6)
 
#define ADIS16400_MSC_CTRL_DATA_RDY_EN   (1<<2)
 
#define ADIS16400_MSC_CTRL_DATA_RDY_POL_HIGH   (1<<1)
 
#define ADIS16400_MSC_CTRL_DATA_RDY_DIO2   (1<<0)
 
#define ADIS16400_SMPL_PRD_TIME_BASE   (1<<7)
 
#define ADIS16400_SMPL_PRD_DIV_MASK   0x7F
 
#define ADIS16400_DIAG_STAT_ZACCL_FAIL   (1<<15)
 
#define ADIS16400_DIAG_STAT_YACCL_FAIL   (1<<14)
 
#define ADIS16400_DIAG_STAT_XACCL_FAIL   (1<<13)
 
#define ADIS16400_DIAG_STAT_XGYRO_FAIL   (1<<12)
 
#define ADIS16400_DIAG_STAT_YGYRO_FAIL   (1<<11)
 
#define ADIS16400_DIAG_STAT_ZGYRO_FAIL   (1<<10)
 
#define ADIS16400_DIAG_STAT_ALARM2   (1<<9)
 
#define ADIS16400_DIAG_STAT_ALARM1   (1<<8)
 
#define ADIS16400_DIAG_STAT_FLASH_CHK   (1<<6)
 
#define ADIS16400_DIAG_STAT_SELF_TEST   (1<<5)
 
#define ADIS16400_DIAG_STAT_OVERFLOW   (1<<4)
 
#define ADIS16400_DIAG_STAT_SPI_FAIL   (1<<3)
 
#define ADIS16400_DIAG_STAT_FLASH_UPT   (1<<2)
 
#define ADIS16400_DIAG_STAT_POWER_HIGH   (1<<1)
 
#define ADIS16400_DIAG_STAT_POWER_LOW   (1<<0)
 
#define ADIS16400_GLOB_CMD_SW_RESET   (1<<7)
 
#define ADIS16400_GLOB_CMD_P_AUTO_NULL   (1<<4)
 
#define ADIS16400_GLOB_CMD_FLASH_UPD   (1<<3)
 
#define ADIS16400_GLOB_CMD_DAC_LATCH   (1<<2)
 
#define ADIS16400_GLOB_CMD_FAC_CALIB   (1<<1)
 
#define ADIS16400_GLOB_CMD_AUTO_NULL   (1<<0)
 
#define ADIS16400_SLP_CNT_POWER_OFF   (1<<8)
 
#define ADIS16400_MAX_TX   24
 
#define ADIS16400_MAX_RX   24
 
#define ADIS16400_SPI_SLOW   (u32)(300 * 1000)
 
#define ADIS16400_SPI_BURST   (u32)(1000 * 1000)
 
#define ADIS16400_SPI_FAST   (u32)(2000 * 1000)
 
#define ADIS16400_HAS_PROD_ID   1
 
#define ADIS16400_NO_BURST   2
 
#define ADIS16400_SCAN_SUPPLY   0
 
#define ADIS16400_SCAN_GYRO_X   1
 
#define ADIS16400_SCAN_GYRO_Y   2
 
#define ADIS16400_SCAN_GYRO_Z   3
 
#define ADIS16400_SCAN_ACC_X   4
 
#define ADIS16400_SCAN_ACC_Y   5
 
#define ADIS16400_SCAN_ACC_Z   6
 
#define ADIS16400_SCAN_MAGN_X   7
 
#define ADIS16350_SCAN_TEMP_X   7
 
#define ADIS16400_SCAN_MAGN_Y   8
 
#define ADIS16350_SCAN_TEMP_Y   8
 
#define ADIS16400_SCAN_MAGN_Z   9
 
#define ADIS16350_SCAN_TEMP_Z   9
 
#define ADIS16400_SCAN_TEMP   10
 
#define ADIS16350_SCAN_ADC_0   10
 
#define ADIS16400_SCAN_ADC_0   11
 
#define ADIS16300_SCAN_INCLI_X   12
 
#define ADIS16300_SCAN_INCLI_Y   13
 

Functions

int adis16400_set_irq (struct iio_dev *indio_dev, bool enable)
 

Macro Definition Documentation

#define ADIS16300_AUX_ADC   0x16 /* Auxiliary ADC measurement */

Definition at line 46 of file adis16400.h.

#define ADIS16300_PITCH_OUT   0x12 /* X axis inclinometer output measurement */

Definition at line 44 of file adis16400.h.

#define ADIS16300_ROLL_OUT   0x14 /* Y axis inclinometer output measurement */

Definition at line 45 of file adis16400.h.

#define ADIS16300_SCAN_INCLI_X   12

Definition at line 189 of file adis16400.h.

#define ADIS16300_SCAN_INCLI_Y   13

Definition at line 190 of file adis16400.h.

#define ADIS16350_SCAN_ADC_0   10

Definition at line 187 of file adis16400.h.

#define ADIS16350_SCAN_TEMP_X   7

Definition at line 181 of file adis16400.h.

#define ADIS16350_SCAN_TEMP_Y   8

Definition at line 183 of file adis16400.h.

#define ADIS16350_SCAN_TEMP_Z   9

Definition at line 185 of file adis16400.h.

#define ADIS16350_XTEMP_OUT   0x10 /* X-axis gyroscope temperature measurement */

Definition at line 40 of file adis16400.h.

#define ADIS16350_YTEMP_OUT   0x12 /* Y-axis gyroscope temperature measurement */

Definition at line 41 of file adis16400.h.

#define ADIS16350_ZTEMP_OUT   0x14 /* Z-axis gyroscope temperature measurement */

Definition at line 42 of file adis16400.h.

#define ADIS16400_ALM_CTRL   0x48 /* Alarm control */

Definition at line 75 of file adis16400.h.

#define ADIS16400_ALM_MAG1   0x40 /* Alarm 1 amplitude threshold */

Definition at line 71 of file adis16400.h.

#define ADIS16400_ALM_MAG2   0x42 /* Alarm 2 amplitude threshold */

Definition at line 72 of file adis16400.h.

#define ADIS16400_ALM_SMPL1   0x44 /* Alarm 1 sample size */

Definition at line 73 of file adis16400.h.

#define ADIS16400_ALM_SMPL2   0x46 /* Alarm 2 sample size */

Definition at line 74 of file adis16400.h.

#define ADIS16400_AUX_ADC   0x18 /* Auxiliary ADC measurement */

Definition at line 38 of file adis16400.h.

#define ADIS16400_AUX_DAC   0x4A /* Auxiliary DAC data */

Definition at line 76 of file adis16400.h.

#define ADIS16400_DIAG_STAT   0x3C /* System status */

Definition at line 67 of file adis16400.h.

#define ADIS16400_DIAG_STAT_ALARM1   (1<<8)

Definition at line 106 of file adis16400.h.

#define ADIS16400_DIAG_STAT_ALARM2   (1<<9)

Definition at line 105 of file adis16400.h.

#define ADIS16400_DIAG_STAT_FLASH_CHK   (1<<6)

Definition at line 107 of file adis16400.h.

#define ADIS16400_DIAG_STAT_FLASH_UPT   (1<<2)

Definition at line 111 of file adis16400.h.

#define ADIS16400_DIAG_STAT_OVERFLOW   (1<<4)

Definition at line 109 of file adis16400.h.

#define ADIS16400_DIAG_STAT_POWER_HIGH   (1<<1)

Definition at line 112 of file adis16400.h.

#define ADIS16400_DIAG_STAT_POWER_LOW   (1<<0)

Definition at line 113 of file adis16400.h.

#define ADIS16400_DIAG_STAT_SELF_TEST   (1<<5)

Definition at line 108 of file adis16400.h.

#define ADIS16400_DIAG_STAT_SPI_FAIL   (1<<3)

Definition at line 110 of file adis16400.h.

#define ADIS16400_DIAG_STAT_XACCL_FAIL   (1<<13)

Definition at line 101 of file adis16400.h.

#define ADIS16400_DIAG_STAT_XGYRO_FAIL   (1<<12)

Definition at line 102 of file adis16400.h.

#define ADIS16400_DIAG_STAT_YACCL_FAIL   (1<<14)

Definition at line 100 of file adis16400.h.

#define ADIS16400_DIAG_STAT_YGYRO_FAIL   (1<<11)

Definition at line 103 of file adis16400.h.

#define ADIS16400_DIAG_STAT_ZACCL_FAIL   (1<<15)

Definition at line 99 of file adis16400.h.

#define ADIS16400_DIAG_STAT_ZGYRO_FAIL   (1<<10)

Definition at line 104 of file adis16400.h.

#define ADIS16400_ERROR_ACTIVE   (1<<14)

Definition at line 80 of file adis16400.h.

#define ADIS16400_FLASH_CNT   0x00 /* Flash memory write count */

Definition at line 26 of file adis16400.h.

#define ADIS16400_GLOB_CMD   0x3E /* System command */

Definition at line 70 of file adis16400.h.

#define ADIS16400_GLOB_CMD_AUTO_NULL   (1<<0)

Definition at line 121 of file adis16400.h.

#define ADIS16400_GLOB_CMD_DAC_LATCH   (1<<2)

Definition at line 119 of file adis16400.h.

#define ADIS16400_GLOB_CMD_FAC_CALIB   (1<<1)

Definition at line 120 of file adis16400.h.

#define ADIS16400_GLOB_CMD_FLASH_UPD   (1<<3)

Definition at line 118 of file adis16400.h.

#define ADIS16400_GLOB_CMD_P_AUTO_NULL   (1<<4)

Definition at line 117 of file adis16400.h.

#define ADIS16400_GLOB_CMD_SW_RESET   (1<<7)

Definition at line 116 of file adis16400.h.

#define ADIS16400_GPIO_CTRL   0x32 /* Auxiliary digital input/output control */

Definition at line 62 of file adis16400.h.

#define ADIS16400_HAS_PROD_ID   1

Definition at line 133 of file adis16400.h.

#define ADIS16400_MAX_RX   24

Definition at line 127 of file adis16400.h.

#define ADIS16400_MAX_TX   24

Definition at line 126 of file adis16400.h.

#define ADIS16400_MSC_CTRL   0x34 /* Miscellaneous control */

Definition at line 63 of file adis16400.h.

#define ADIS16400_MSC_CTRL_ACCL_ALIGN   (1<<6)

Definition at line 89 of file adis16400.h.

#define ADIS16400_MSC_CTRL_DATA_RDY_DIO2   (1<<0)

Definition at line 92 of file adis16400.h.

#define ADIS16400_MSC_CTRL_DATA_RDY_EN   (1<<2)

Definition at line 90 of file adis16400.h.

#define ADIS16400_MSC_CTRL_DATA_RDY_POL_HIGH   (1<<1)

Definition at line 91 of file adis16400.h.

#define ADIS16400_MSC_CTRL_GYRO_BIAS   (1<<7)

Definition at line 88 of file adis16400.h.

#define ADIS16400_MSC_CTRL_INT_SELF_TEST   (1<<10)

Definition at line 85 of file adis16400.h.

#define ADIS16400_MSC_CTRL_MEM_TEST   (1<<11)

Definition at line 84 of file adis16400.h.

#define ADIS16400_MSC_CTRL_NEG_SELF_TEST   (1<<9)

Definition at line 86 of file adis16400.h.

#define ADIS16400_MSC_CTRL_POS_SELF_TEST   (1<<8)

Definition at line 87 of file adis16400.h.

#define ADIS16400_MTEST_DELAY   90 /* ms */

Definition at line 21 of file adis16400.h.

#define ADIS16400_NEW_DATA   (1<<14)

Definition at line 81 of file adis16400.h.

#define ADIS16400_NO_BURST   2

Definition at line 134 of file adis16400.h.

#define ADIS16400_PRODUCT_ID   0x56 /* Product identifier */

Definition at line 78 of file adis16400.h.

#define ADIS16400_READ_REG (   a)    a

Definition at line 23 of file adis16400.h.

#define ADIS16400_SCAN_ACC_X   4

Definition at line 177 of file adis16400.h.

#define ADIS16400_SCAN_ACC_Y   5

Definition at line 178 of file adis16400.h.

#define ADIS16400_SCAN_ACC_Z   6

Definition at line 179 of file adis16400.h.

#define ADIS16400_SCAN_ADC_0   11

Definition at line 188 of file adis16400.h.

#define ADIS16400_SCAN_GYRO_X   1

Definition at line 174 of file adis16400.h.

#define ADIS16400_SCAN_GYRO_Y   2

Definition at line 175 of file adis16400.h.

#define ADIS16400_SCAN_GYRO_Z   3

Definition at line 176 of file adis16400.h.

#define ADIS16400_SCAN_MAGN_X   7

Definition at line 180 of file adis16400.h.

#define ADIS16400_SCAN_MAGN_Y   8

Definition at line 182 of file adis16400.h.

#define ADIS16400_SCAN_MAGN_Z   9

Definition at line 184 of file adis16400.h.

#define ADIS16400_SCAN_SUPPLY   0

Definition at line 173 of file adis16400.h.

#define ADIS16400_SCAN_TEMP   10

Definition at line 186 of file adis16400.h.

#define ADIS16400_SENS_AVG   0x38 /* Dynamic range and digital filter control */

Definition at line 65 of file adis16400.h.

#define ADIS16400_SLP_CNT   0x3A /* Sleep mode control */

Definition at line 66 of file adis16400.h.

#define ADIS16400_SLP_CNT_POWER_OFF   (1<<8)

Definition at line 124 of file adis16400.h.

#define ADIS16400_SMPL_PRD   0x36 /* Internal sample period (rate) control */

Definition at line 64 of file adis16400.h.

#define ADIS16400_SMPL_PRD_DIV_MASK   0x7F

Definition at line 96 of file adis16400.h.

#define ADIS16400_SMPL_PRD_TIME_BASE   (1<<7)

Definition at line 95 of file adis16400.h.

#define ADIS16400_SPI_BURST   (u32)(1000 * 1000)

Definition at line 130 of file adis16400.h.

#define ADIS16400_SPI_FAST   (u32)(2000 * 1000)

Definition at line 131 of file adis16400.h.

#define ADIS16400_SPI_SLOW   (u32)(300 * 1000)

Definition at line 129 of file adis16400.h.

#define ADIS16400_STARTUP_DELAY   290 /* ms */

Definition at line 20 of file adis16400.h.

#define ADIS16400_SUPPLY_OUT   0x02 /* Power supply measurement */

Definition at line 27 of file adis16400.h.

#define ADIS16400_TEMP_OUT   0x16 /* Temperature output */

Definition at line 37 of file adis16400.h.

#define ADIS16400_WRITE_REG (   a)    ((a) | 0x80)

Definition at line 24 of file adis16400.h.

#define ADIS16400_XACCL_OFF   0x20 /* X-axis acceleration bias offset factor */

Definition at line 52 of file adis16400.h.

#define ADIS16400_XACCL_OUT   0x0A /* X-axis accelerometer output */

Definition at line 31 of file adis16400.h.

#define ADIS16400_XGYRO_OFF   0x1A /* X-axis gyroscope bias offset factor */

Definition at line 49 of file adis16400.h.

#define ADIS16400_XGYRO_OUT   0x04 /* X-axis gyroscope output */

Definition at line 28 of file adis16400.h.

#define ADIS16400_XMAGN_HIF   0x26 /* X-axis magnetometer, hard-iron factor */

Definition at line 55 of file adis16400.h.

#define ADIS16400_XMAGN_OUT   0x10 /* X-axis magnetometer measurement */

Definition at line 34 of file adis16400.h.

#define ADIS16400_XMAGN_SIF   0x2C /* X-axis magnetometer, soft-iron factor */

Definition at line 58 of file adis16400.h.

#define ADIS16400_YACCL_OFF   0x22 /* Y-axis acceleration bias offset factor */

Definition at line 53 of file adis16400.h.

#define ADIS16400_YACCL_OUT   0x0C /* Y-axis accelerometer output */

Definition at line 32 of file adis16400.h.

#define ADIS16400_YGYRO_OFF   0x1C /* Y-axis gyroscope bias offset factor */

Definition at line 50 of file adis16400.h.

#define ADIS16400_YGYRO_OUT   0x06 /* Y-axis gyroscope output */

Definition at line 29 of file adis16400.h.

#define ADIS16400_YMAGN_HIF   0x28 /* Y-axis magnetometer, hard-iron factor */

Definition at line 56 of file adis16400.h.

#define ADIS16400_YMAGN_OUT   0x12 /* Y-axis magnetometer measurement */

Definition at line 35 of file adis16400.h.

#define ADIS16400_YMAGN_SIF   0x2E /* Y-axis magnetometer, soft-iron factor */

Definition at line 59 of file adis16400.h.

#define ADIS16400_ZACCL_OFF   0x24 /* Z-axis acceleration bias offset factor */

Definition at line 54 of file adis16400.h.

#define ADIS16400_ZACCL_OUT   0x0E /* Z-axis accelerometer output */

Definition at line 33 of file adis16400.h.

#define ADIS16400_ZGYRO_OFF   0x1E /* Z-axis gyroscope bias offset factor */

Definition at line 51 of file adis16400.h.

#define ADIS16400_ZGYRO_OUT   0x08 /* Z-axis gyroscope output */

Definition at line 30 of file adis16400.h.

#define ADIS16400_ZMAGN_HIF   0x2A /* Z-axis magnetometer, hard-iron factor */

Definition at line 57 of file adis16400.h.

#define ADIS16400_ZMAGN_OUT   0x14 /* Z-axis magnetometer measurement */

Definition at line 36 of file adis16400.h.

#define ADIS16400_ZMAGN_SIF   0x30 /* Z-axis magnetometer, soft-iron factor */

Definition at line 60 of file adis16400.h.

Function Documentation

int adis16400_set_irq ( struct iio_dev indio_dev,
bool  enable 
)

Definition at line 273 of file adis16400_core.c.