diff options
Diffstat (limited to 'include/linux/iio/imu')
| -rw-r--r-- | include/linux/iio/imu/adis.h | 14 | 
1 files changed, 14 insertions, 0 deletions
| diff --git a/include/linux/iio/imu/adis.h b/include/linux/iio/imu/adis.h index 360da7d18a3d..469a493f7ae0 100644 --- a/include/linux/iio/imu/adis.h +++ b/include/linux/iio/imu/adis.h @@ -21,6 +21,7 @@  #define ADIS_REG_PAGE_ID 0x00  struct adis; +struct adis_burst;  /**   * struct adis_data - ADIS chip variant specific data @@ -57,6 +58,7 @@ struct adis {  	struct iio_trigger	*trig;  	const struct adis_data	*data; +	struct adis_burst	*burst;  	struct mutex		txrx_lock;  	struct spi_message	msg; @@ -232,6 +234,18 @@ int adis_single_conversion(struct iio_dev *indio_dev,  #ifdef CONFIG_IIO_ADIS_LIB_BUFFER +/** + * struct adis_burst - ADIS data for burst transfers + * @en			burst mode enabled + * @reg_cmd		register command that triggers burst + * @extra_len		extra length to account in the SPI RX buffer + */ +struct adis_burst { +	bool		en; +	unsigned int	reg_cmd; +	unsigned int	extra_len; +}; +  int adis_setup_buffer_and_trigger(struct adis *adis,  	struct iio_dev *indio_dev, irqreturn_t (*trigger_handler)(int, void *));  void adis_cleanup_buffer_and_trigger(struct adis *adis, |