Lines Matching refs:adc
44 static int adc128_adc_conversion(struct adc128 *adc, u8 channel) in adc128_adc_conversion() argument
48 guard(mutex)(&adc->lock); in adc128_adc_conversion()
50 adc->buffer[0] = channel << 3; in adc128_adc_conversion()
51 adc->buffer[1] = 0; in adc128_adc_conversion()
53 ret = spi_write(adc->spi, &adc->buffer, sizeof(adc->buffer)); in adc128_adc_conversion()
57 ret = spi_read(adc->spi, &adc->buffer16, sizeof(adc->buffer16)); in adc128_adc_conversion()
61 return be16_to_cpu(adc->buffer16) & 0xFFF; in adc128_adc_conversion()
68 struct adc128 *adc = iio_priv(indio_dev); in adc128_read_raw() local
74 ret = adc128_adc_conversion(adc, channel->channel); in adc128_read_raw()
83 *val = adc->vref_mv; in adc128_read_raw()
157 struct adc128 *adc; in adc128_probe() local
160 indio_dev = devm_iio_device_alloc(&spi->dev, sizeof(*adc)); in adc128_probe()
164 adc = iio_priv(indio_dev); in adc128_probe()
165 adc->spi = spi; in adc128_probe()
183 adc->vref_mv = ret / 1000; in adc128_probe()
194 ret = devm_mutex_init(&spi->dev, &adc->lock); in adc128_probe()