Lines Matching refs:state
60 static int mcp4922_spi_write(struct mcp4922_state *state, u8 addr, u32 val) in mcp4922_spi_write() argument
62 state->mosi[1] = val & 0xff; in mcp4922_spi_write()
63 state->mosi[0] = (addr == 0) ? 0x00 : 0x80; in mcp4922_spi_write()
64 state->mosi[0] |= 0x30 | ((val >> 8) & 0x0f); in mcp4922_spi_write()
66 return spi_write(state->spi, state->mosi, 2); in mcp4922_spi_write()
75 struct mcp4922_state *state = iio_priv(indio_dev); in mcp4922_read_raw() local
79 *val = state->value[chan->channel]; in mcp4922_read_raw()
82 *val = state->vref_mv; in mcp4922_read_raw()
96 struct mcp4922_state *state = iio_priv(indio_dev); in mcp4922_write_raw() local
106 state->value[chan->channel] = val; in mcp4922_write_raw()
107 return mcp4922_spi_write(state, chan->channel, val); in mcp4922_write_raw()
128 struct mcp4922_state *state; in mcp4922_probe() local
132 indio_dev = devm_iio_device_alloc(&spi->dev, sizeof(*state)); in mcp4922_probe()
136 state = iio_priv(indio_dev); in mcp4922_probe()
137 state->spi = spi; in mcp4922_probe()
138 state->vref_reg = devm_regulator_get(&spi->dev, "vref"); in mcp4922_probe()
139 if (IS_ERR(state->vref_reg)) { in mcp4922_probe()
141 return PTR_ERR(state->vref_reg); in mcp4922_probe()
144 ret = regulator_enable(state->vref_reg); in mcp4922_probe()
151 ret = regulator_get_voltage(state->vref_reg); in mcp4922_probe()
157 state->vref_mv = ret / 1000; in mcp4922_probe()
178 regulator_disable(state->vref_reg); in mcp4922_probe()
186 struct mcp4922_state *state; in mcp4922_remove() local
189 state = iio_priv(indio_dev); in mcp4922_remove()
190 regulator_disable(state->vref_reg); in mcp4922_remove()