Lines Matching refs:indio_dev

109 static u16 cc10001_adc_poll_done(struct iio_dev *indio_dev,  in cc10001_adc_poll_done()  argument
113 struct cc10001_adc_device *adc_dev = iio_priv(indio_dev); in cc10001_adc_poll_done()
142 struct iio_dev *indio_dev; in cc10001_adc_trigger_h() local
150 indio_dev = pf->indio_dev; in cc10001_adc_trigger_h()
151 adc_dev = iio_priv(indio_dev); in cc10001_adc_trigger_h()
163 for_each_set_bit(scan_idx, indio_dev->active_scan_mask, in cc10001_adc_trigger_h()
164 indio_dev->masklength) { in cc10001_adc_trigger_h()
166 channel = indio_dev->channels[scan_idx].channel; in cc10001_adc_trigger_h()
169 data[i] = cc10001_adc_poll_done(indio_dev, channel, delay_ns); in cc10001_adc_trigger_h()
171 dev_warn(&indio_dev->dev, in cc10001_adc_trigger_h()
185 iio_push_to_buffers_with_timestamp(indio_dev, data, in cc10001_adc_trigger_h()
187 iio_trigger_notify_done(indio_dev->trig); in cc10001_adc_trigger_h()
192 static u16 cc10001_adc_read_raw_voltage(struct iio_dev *indio_dev, in cc10001_adc_read_raw_voltage() argument
195 struct cc10001_adc_device *adc_dev = iio_priv(indio_dev); in cc10001_adc_read_raw_voltage()
206 val = cc10001_adc_poll_done(indio_dev, chan->channel, delay_ns); in cc10001_adc_read_raw_voltage()
213 static int cc10001_adc_read_raw(struct iio_dev *indio_dev, in cc10001_adc_read_raw() argument
217 struct cc10001_adc_device *adc_dev = iio_priv(indio_dev); in cc10001_adc_read_raw()
222 if (iio_buffer_enabled(indio_dev)) in cc10001_adc_read_raw()
225 *val = cc10001_adc_read_raw_voltage(indio_dev, chan); in cc10001_adc_read_raw()
246 static int cc10001_update_scan_mode(struct iio_dev *indio_dev, in cc10001_update_scan_mode() argument
249 struct cc10001_adc_device *adc_dev = iio_priv(indio_dev); in cc10001_update_scan_mode()
252 adc_dev->buf = kmalloc(indio_dev->scan_bytes, GFP_KERNEL); in cc10001_update_scan_mode()
265 static int cc10001_adc_channel_init(struct iio_dev *indio_dev, in cc10001_adc_channel_init() argument
271 indio_dev->num_channels = bitmap_weight(&channel_map, in cc10001_adc_channel_init()
274 chan_array = devm_kcalloc(&indio_dev->dev, indio_dev->num_channels, in cc10001_adc_channel_init()
303 indio_dev->channels = chan_array; in cc10001_adc_channel_init()
314 struct iio_dev *indio_dev; in cc10001_adc_probe() local
318 indio_dev = devm_iio_device_alloc(&pdev->dev, sizeof(*adc_dev)); in cc10001_adc_probe()
319 if (indio_dev == NULL) in cc10001_adc_probe()
322 adc_dev = iio_priv(indio_dev); in cc10001_adc_probe()
336 indio_dev->dev.parent = &pdev->dev; in cc10001_adc_probe()
337 indio_dev->name = dev_name(&pdev->dev); in cc10001_adc_probe()
338 indio_dev->info = &cc10001_adc_info; in cc10001_adc_probe()
339 indio_dev->modes = INDIO_DIRECT_MODE; in cc10001_adc_probe()
372 ret = cc10001_adc_channel_init(indio_dev, channel_map); in cc10001_adc_probe()
378 ret = iio_triggered_buffer_setup(indio_dev, NULL, in cc10001_adc_probe()
383 ret = iio_device_register(indio_dev); in cc10001_adc_probe()
387 platform_set_drvdata(pdev, indio_dev); in cc10001_adc_probe()
392 iio_triggered_buffer_cleanup(indio_dev); in cc10001_adc_probe()
402 struct iio_dev *indio_dev = platform_get_drvdata(pdev); in cc10001_adc_remove() local
403 struct cc10001_adc_device *adc_dev = iio_priv(indio_dev); in cc10001_adc_remove()
405 iio_device_unregister(indio_dev); in cc10001_adc_remove()
406 iio_triggered_buffer_cleanup(indio_dev); in cc10001_adc_remove()