Lines Matching +full:drdy +full:- +full:int +full:- +full:pin
1 /* SPDX-License-Identifier: GPL-2.0-only */
5 * Copyright 2012-2013 STMicroelectronics Inc.
66 .shift = sbits - rbits, \
87 unsigned int hz;
110 unsigned int num;
112 unsigned int gain;
113 unsigned int gain2;
128 * struct st_sensor_bdu - ST sensor device block data update
138 * struct st_sensor_das - ST sensor device data alignment selection
148 * struct st_sensor_int_drdy - ST sensor device drdy line parameters
149 * @addr: address of INT drdy register.
150 * @mask: mask to enable drdy line.
151 * @addr_od: address to enable/disable Open Drain on the INT line.
152 * @mask_od: mask to enable/disable Open Drain on the INT line.
162 * struct st_sensor_data_ready_irq - ST sensor device data-ready interrupt
163 * struct int1 - data-ready configuration register for INT1 pin.
164 * struct int2 - data-ready configuration register for INT2 pin.
165 * @addr_ihl: address to enable/disable active low on the INT lines.
166 * @mask_ihl: mask to enable/disable active low on the INT lines.
167 * struct stat_drdy - status register of DRDY (data ready) interrupt.
168 * struct ig1 - represents the Interrupt Generator 1 of sensors.
188 * struct st_sensor_settings - ST specific sensor settings
201 * @multi_read_bit: Use or not particular bit for [I2C/SPI] multi-read.
202 * @bootime: samples to discard when sensor passing from power-down to power-up.
209 int num_ch;
219 unsigned int bootime;
223 * struct st_sensor_data - ST sensor device status
229 * @enabled: Status of the sensor (false->off, true->on).
232 * @drdy_int_pin: Redirect DRDY on pin 1 (1) or pin 2 (2).
233 * @int_pin_open_drain: Set the interrupt/DRDY to open drain.
250 unsigned int odr;
251 unsigned int num_data_channels;
255 int irq;
267 irqreturn_t st_sensors_trigger_handler(int irq, void *p);
271 int st_sensors_allocate_trigger(struct iio_dev *indio_dev,
274 int st_sensors_validate_device(struct iio_trigger *trig,
277 static inline int st_sensors_allocate_trigger(struct iio_dev *indio_dev, in st_sensors_allocate_trigger()
285 int st_sensors_init_sensor(struct iio_dev *indio_dev,
288 int st_sensors_set_enable(struct iio_dev *indio_dev, bool enable);
290 int st_sensors_set_axis_enable(struct iio_dev *indio_dev, u8 axis_enable);
292 int st_sensors_power_enable(struct iio_dev *indio_dev);
294 int st_sensors_debugfs_reg_access(struct iio_dev *indio_dev,
298 int st_sensors_set_odr(struct iio_dev *indio_dev, unsigned int odr);
300 int st_sensors_set_dataready_irq(struct iio_dev *indio_dev, bool enable);
302 int st_sensors_set_fullscale_by_gain(struct iio_dev *indio_dev, int scale);
304 int st_sensors_read_info_raw(struct iio_dev *indio_dev,
305 struct iio_chan_spec const *ch, int *val);
307 int st_sensors_get_settings_index(const char *name,
309 const int list_length);
311 int st_sensors_verify_id(struct iio_dev *indio_dev);
319 void st_sensors_dev_name_probe(struct device *dev, char *name, int len);
323 int st_accel_common_probe(struct iio_dev *indio_dev);
327 int st_gyro_common_probe(struct iio_dev *indio_dev);
331 int st_magn_common_probe(struct iio_dev *indio_dev);
335 int st_press_common_probe(struct iio_dev *indio_dev);