Lines Matching refs:state
32 static int ad8801_spi_write(struct ad8801_state *state,
35 state->data = cpu_to_be16((channel << AD8801_CFG_ADDR_OFFSET) | value);
36 return spi_write(state->spi, &state->data, sizeof(state->data));
42 struct ad8801_state *state = iio_priv(indio_dev);
50 ret = ad8801_spi_write(state, chan->channel, val);
52 state->dac_cache[chan->channel] = val;
64 struct ad8801_state *state = iio_priv(indio_dev);
68 *val = state->dac_cache[chan->channel];
71 *val = state->vrefh_mv - state->vrefl_mv;
75 *val = state->vrefl_mv;
113 struct ad8801_state *state;
117 indio_dev = devm_iio_device_alloc(&spi->dev, sizeof(*state));
121 state = iio_priv(indio_dev);
122 state->spi = spi;
125 state->vrefh_reg = devm_regulator_get(&spi->dev, "vrefh");
126 if (IS_ERR(state->vrefh_reg)) {
128 return PTR_ERR(state->vrefh_reg);
131 ret = regulator_enable(state->vrefh_reg);
138 ret = regulator_get_voltage(state->vrefh_reg);
144 state->vrefh_mv = ret / 1000;
147 state->vrefl_reg = devm_regulator_get(&spi->dev, "vrefl");
148 if (IS_ERR(state->vrefl_reg)) {
150 ret = PTR_ERR(state->vrefl_reg);
154 ret = regulator_enable(state->vrefl_reg);
161 ret = regulator_get_voltage(state->vrefl_reg);
167 state->vrefl_mv = ret / 1000;
169 state->vrefl_mv = 0;
170 state->vrefl_reg = NULL;
190 if (state->vrefl_reg)
191 regulator_disable(state->vrefl_reg);
193 regulator_disable(state->vrefh_reg);
200 struct ad8801_state *state = iio_priv(indio_dev);
203 if (state->vrefl_reg)
204 regulator_disable(state->vrefl_reg);
205 regulator_disable(state->vrefh_reg);