Lines Matching refs:adc
34 static int adc128_adc_conversion(struct adc128 *adc, u8 channel) in adc128_adc_conversion() argument
38 mutex_lock(&adc->lock); in adc128_adc_conversion()
40 adc->buffer[0] = channel << 3; in adc128_adc_conversion()
41 adc->buffer[1] = 0; in adc128_adc_conversion()
43 ret = spi_write(adc->spi, &adc->buffer, 2); in adc128_adc_conversion()
45 mutex_unlock(&adc->lock); in adc128_adc_conversion()
49 ret = spi_read(adc->spi, &adc->buffer, 2); in adc128_adc_conversion()
51 mutex_unlock(&adc->lock); in adc128_adc_conversion()
56 return ((adc->buffer[0] << 8 | adc->buffer[1]) & 0xFFF); in adc128_adc_conversion()
63 struct adc128 *adc = iio_priv(indio_dev); in adc128_read_raw() local
69 ret = adc128_adc_conversion(adc, channel->channel); in adc128_read_raw()
78 ret = regulator_get_voltage(adc->reg); in adc128_read_raw()
143 struct adc128 *adc; in adc128_probe() local
146 indio_dev = devm_iio_device_alloc(&spi->dev, sizeof(*adc)); in adc128_probe()
150 adc = iio_priv(indio_dev); in adc128_probe()
151 adc->spi = spi; in adc128_probe()
162 adc->reg = devm_regulator_get(&spi->dev, "vref"); in adc128_probe()
163 if (IS_ERR(adc->reg)) in adc128_probe()
164 return PTR_ERR(adc->reg); in adc128_probe()
166 ret = regulator_enable(adc->reg); in adc128_probe()
170 adc->reg); in adc128_probe()
174 mutex_init(&adc->lock); in adc128_probe()