Lines Matching refs:gpadc
90 struct da9150_gpadc *gpadc = data; in da9150_gpadc_irq() local
92 complete(&gpadc->complete); in da9150_gpadc_irq()
97 static int da9150_gpadc_read_adc(struct da9150_gpadc *gpadc, int hw_chan) in da9150_gpadc_read_adc() argument
102 mutex_lock(&gpadc->lock); in da9150_gpadc_read_adc()
105 da9150_reg_write(gpadc->da9150, DA9150_GPADC_MAN, in da9150_gpadc_read_adc()
110 try_wait_for_completion(&gpadc->complete); in da9150_gpadc_read_adc()
113 wait_for_completion_timeout(&gpadc->complete, msecs_to_jiffies(5)); in da9150_gpadc_read_adc()
116 da9150_bulk_read(gpadc->da9150, DA9150_GPADC_RES_A, 2, result_regs); in da9150_gpadc_read_adc()
118 mutex_unlock(&gpadc->lock); in da9150_gpadc_read_adc()
122 dev_err(gpadc->dev, "Timeout on channel %d of GPADC\n", in da9150_gpadc_read_adc()
160 static int da9150_gpadc_read_processed(struct da9150_gpadc *gpadc, int channel, in da9150_gpadc_read_processed() argument
165 raw_val = da9150_gpadc_read_adc(gpadc, hw_chan); in da9150_gpadc_read_processed()
230 struct da9150_gpadc *gpadc = iio_priv(indio_dev); in da9150_gpadc_read_raw() local
239 return da9150_gpadc_read_processed(gpadc, chan->channel, in da9150_gpadc_read_raw()
327 struct da9150_gpadc *gpadc; in da9150_gpadc_probe() local
331 indio_dev = devm_iio_device_alloc(dev, sizeof(*gpadc)); in da9150_gpadc_probe()
336 gpadc = iio_priv(indio_dev); in da9150_gpadc_probe()
339 gpadc->da9150 = da9150; in da9150_gpadc_probe()
340 gpadc->dev = dev; in da9150_gpadc_probe()
341 mutex_init(&gpadc->lock); in da9150_gpadc_probe()
342 init_completion(&gpadc->complete); in da9150_gpadc_probe()
351 IRQF_ONESHOT, "GPADC", gpadc); in da9150_gpadc_probe()