Lines Matching refs:st
71 struct kxsd9_state *st = iio_priv(indio_dev); in kxsd9_write_scale() local
82 mutex_lock(&st->buf_lock); in kxsd9_write_scale()
83 ret = spi_w8r8(st->us, KXSD9_READ(KXSD9_REG_CTRL_C)); in kxsd9_write_scale()
86 st->tx[0] = KXSD9_WRITE(KXSD9_REG_CTRL_C); in kxsd9_write_scale()
87 st->tx[1] = (ret & ~KXSD9_FS_MASK) | i; in kxsd9_write_scale()
89 ret = spi_write(st->us, st->tx, 2); in kxsd9_write_scale()
91 mutex_unlock(&st->buf_lock); in kxsd9_write_scale()
98 struct kxsd9_state *st = iio_priv(indio_dev); in kxsd9_read() local
104 .tx_buf = st->tx, in kxsd9_read()
108 .rx_buf = st->rx, in kxsd9_read()
112 mutex_lock(&st->buf_lock); in kxsd9_read()
113 st->tx[0] = KXSD9_READ(address); in kxsd9_read()
114 ret = spi_sync_transfer(st->us, xfers, ARRAY_SIZE(xfers)); in kxsd9_read()
116 ret = (((u16)(st->rx[0])) << 8) | (st->rx[1] & 0xF0); in kxsd9_read()
117 mutex_unlock(&st->buf_lock); in kxsd9_read()
155 struct kxsd9_state *st = iio_priv(indio_dev); in kxsd9_read_raw() local
165 ret = spi_w8r8(st->us, KXSD9_READ(KXSD9_REG_CTRL_C)); in kxsd9_read_raw()
200 static int kxsd9_power_up(struct kxsd9_state *st) in kxsd9_power_up() argument
204 st->tx[0] = 0x0d; in kxsd9_power_up()
205 st->tx[1] = 0x40; in kxsd9_power_up()
206 ret = spi_write(st->us, st->tx, 2); in kxsd9_power_up()
210 st->tx[0] = 0x0c; in kxsd9_power_up()
211 st->tx[1] = 0x9b; in kxsd9_power_up()
212 return spi_write(st->us, st->tx, 2); in kxsd9_power_up()
225 struct kxsd9_state *st; in kxsd9_probe() local
227 indio_dev = devm_iio_device_alloc(&spi->dev, sizeof(*st)); in kxsd9_probe()
231 st = iio_priv(indio_dev); in kxsd9_probe()
234 st->us = spi; in kxsd9_probe()
235 mutex_init(&st->buf_lock); in kxsd9_probe()
245 kxsd9_power_up(st); in kxsd9_probe()