Lines Matching refs:st

135 	struct ad7923_state *st = iio_priv(indio_dev);  in ad7923_update_scan_mode()  local
142 st->settings; in ad7923_update_scan_mode()
144 st->tx_buf[len++] = cpu_to_be16(cmd); in ad7923_update_scan_mode()
147 st->ring_xfer[0].tx_buf = &st->tx_buf[0]; in ad7923_update_scan_mode()
148 st->ring_xfer[0].len = len; in ad7923_update_scan_mode()
149 st->ring_xfer[0].cs_change = 1; in ad7923_update_scan_mode()
151 spi_message_init(&st->ring_msg); in ad7923_update_scan_mode()
152 spi_message_add_tail(&st->ring_xfer[0], &st->ring_msg); in ad7923_update_scan_mode()
155 st->ring_xfer[i + 1].rx_buf = &st->rx_buf[i]; in ad7923_update_scan_mode()
156 st->ring_xfer[i + 1].len = 2; in ad7923_update_scan_mode()
157 st->ring_xfer[i + 1].cs_change = 1; in ad7923_update_scan_mode()
158 spi_message_add_tail(&st->ring_xfer[i + 1], &st->ring_msg); in ad7923_update_scan_mode()
161 st->ring_xfer[i + 1].cs_change = 0; in ad7923_update_scan_mode()
176 struct ad7923_state *st = iio_priv(indio_dev); in ad7923_trigger_handler() local
179 b_sent = spi_sync(st->spi, &st->ring_msg); in ad7923_trigger_handler()
183 iio_push_to_buffers_with_timestamp(indio_dev, st->rx_buf, in ad7923_trigger_handler()
192 static int ad7923_scan_direct(struct ad7923_state *st, unsigned ch) in ad7923_scan_direct() argument
198 st->settings; in ad7923_scan_direct()
200 st->tx_buf[0] = cpu_to_be16(cmd); in ad7923_scan_direct()
202 ret = spi_sync(st->spi, &st->scan_single_msg); in ad7923_scan_direct()
206 return be16_to_cpu(st->rx_buf[0]); in ad7923_scan_direct()
209 static int ad7923_get_range(struct ad7923_state *st) in ad7923_get_range() argument
213 vref = regulator_get_voltage(st->reg); in ad7923_get_range()
219 if (!(st->settings & AD7923_RANGE)) in ad7923_get_range()
232 struct ad7923_state *st = iio_priv(indio_dev); in ad7923_read_raw() local
240 ret = ad7923_scan_direct(st, chan->address); in ad7923_read_raw()
253 ret = ad7923_get_range(st); in ad7923_read_raw()
271 struct ad7923_state *st; in ad7923_probe() local
276 indio_dev = devm_iio_device_alloc(&spi->dev, sizeof(*st)); in ad7923_probe()
280 st = iio_priv(indio_dev); in ad7923_probe()
284 st->spi = spi; in ad7923_probe()
285 st->settings = AD7923_CODING | AD7923_RANGE | in ad7923_probe()
299 st->scan_single_xfer[0].tx_buf = &st->tx_buf[0]; in ad7923_probe()
300 st->scan_single_xfer[0].len = 2; in ad7923_probe()
301 st->scan_single_xfer[0].cs_change = 1; in ad7923_probe()
302 st->scan_single_xfer[1].rx_buf = &st->rx_buf[0]; in ad7923_probe()
303 st->scan_single_xfer[1].len = 2; in ad7923_probe()
305 spi_message_init(&st->scan_single_msg); in ad7923_probe()
306 spi_message_add_tail(&st->scan_single_xfer[0], &st->scan_single_msg); in ad7923_probe()
307 spi_message_add_tail(&st->scan_single_xfer[1], &st->scan_single_msg); in ad7923_probe()
309 st->reg = devm_regulator_get(&spi->dev, "refin"); in ad7923_probe()
310 if (IS_ERR(st->reg)) in ad7923_probe()
311 return PTR_ERR(st->reg); in ad7923_probe()
313 ret = regulator_enable(st->reg); in ad7923_probe()
331 regulator_disable(st->reg); in ad7923_probe()
339 struct ad7923_state *st = iio_priv(indio_dev); in ad7923_remove() local
343 regulator_disable(st->reg); in ad7923_remove()