Lines Matching refs:iio_dev
110 static void ingenic_adc_set_adcmd(struct iio_dev *iio_dev, unsigned long mask)
112 struct ingenic_adc *adc = iio_priv(iio_dev);
233 static int ingenic_adc_write_raw(struct iio_dev *iio_dev,
239 struct ingenic_adc *adc = iio_priv(iio_dev);
240 struct device *dev = iio_dev->dev.parent;
543 static int ingenic_adc_read_avail(struct iio_dev *iio_dev,
550 struct ingenic_adc *adc = iio_priv(iio_dev);
568 static int ingenic_adc_read_chan_info_raw(struct iio_dev *iio_dev,
573 struct ingenic_adc *adc = iio_priv(iio_dev);
577 dev_err(iio_dev->dev.parent, "Failed to enable clock: %d\n",
611 static int ingenic_adc_read_raw(struct iio_dev *iio_dev,
617 struct ingenic_adc *adc = iio_priv(iio_dev);
621 return ingenic_adc_read_chan_info_raw(iio_dev, chan, val);
646 static int ingenic_adc_of_xlate(struct iio_dev *iio_dev,
654 for (i = 0; i < iio_dev->num_channels; ++i)
655 if (iio_dev->channels[i].channel == iiospec->args[0])
673 static int ingenic_adc_buffer_enable(struct iio_dev *iio_dev)
675 struct ingenic_adc *adc = iio_priv(iio_dev);
680 dev_err(iio_dev->dev.parent, "Failed to enable clock: %d\n",
698 ingenic_adc_set_adcmd(iio_dev, iio_dev->active_scan_mask[0]);
705 static int ingenic_adc_buffer_disable(struct iio_dev *iio_dev)
707 struct ingenic_adc *adc = iio_priv(iio_dev);
730 struct iio_dev *iio_dev = data;
731 struct ingenic_adc *adc = iio_priv(iio_dev);
732 unsigned long mask = iio_dev->active_scan_mask[0];
743 iio_push_to_buffers(iio_dev, tdat);
752 struct iio_dev *iio_dev;
761 iio_dev = devm_iio_device_alloc(dev, sizeof(*adc));
762 if (!iio_dev)
765 adc = iio_priv(iio_dev);
775 dev_name(dev), iio_dev);
818 iio_dev->name = "jz-adc";
819 iio_dev->modes = INDIO_DIRECT_MODE | INDIO_BUFFER_SOFTWARE;
820 iio_dev->setup_ops = &ingenic_buffer_setup_ops;
821 iio_dev->channels = soc_data->channels;
822 iio_dev->num_channels = soc_data->num_channels;
823 iio_dev->info = &ingenic_adc_info;
825 ret = devm_iio_device_register(dev, iio_dev);