Lines Matching refs:indio_dev
236 static int adis16480_debugfs_init(struct iio_dev *indio_dev) in adis16480_debugfs_init() argument
238 struct adis16480 *adis16480 = iio_priv(indio_dev); in adis16480_debugfs_init()
241 indio_dev->debugfs_dentry, adis16480, in adis16480_debugfs_init()
243 debugfs_create_file("firmware_date", 0400, indio_dev->debugfs_dentry, in adis16480_debugfs_init()
245 debugfs_create_file("serial_number", 0400, indio_dev->debugfs_dentry, in adis16480_debugfs_init()
247 debugfs_create_file("product_id", 0400, indio_dev->debugfs_dentry, in adis16480_debugfs_init()
249 debugfs_create_file("flash_count", 0400, indio_dev->debugfs_dentry, in adis16480_debugfs_init()
257 static int adis16480_debugfs_init(struct iio_dev *indio_dev) in adis16480_debugfs_init() argument
264 static int adis16480_set_freq(struct iio_dev *indio_dev, int val, int val2) in adis16480_set_freq() argument
266 struct adis16480 *st = iio_priv(indio_dev); in adis16480_set_freq()
283 static int adis16480_get_freq(struct iio_dev *indio_dev, int *val, int *val2) in adis16480_get_freq() argument
285 struct adis16480 *st = iio_priv(indio_dev); in adis16480_get_freq()
337 static int adis16480_set_calibbias(struct iio_dev *indio_dev, in adis16480_set_calibbias() argument
341 struct adis16480 *st = iio_priv(indio_dev); in adis16480_set_calibbias()
359 static int adis16480_get_calibbias(struct iio_dev *indio_dev, in adis16480_get_calibbias() argument
363 struct adis16480 *st = iio_priv(indio_dev); in adis16480_get_calibbias()
389 static int adis16480_set_calibscale(struct iio_dev *indio_dev, in adis16480_set_calibscale() argument
393 struct adis16480 *st = iio_priv(indio_dev); in adis16480_set_calibscale()
401 static int adis16480_get_calibscale(struct iio_dev *indio_dev, in adis16480_get_calibscale() argument
405 struct adis16480 *st = iio_priv(indio_dev); in adis16480_get_calibscale()
436 static int adis16480_get_filter_freq(struct iio_dev *indio_dev, in adis16480_get_filter_freq() argument
439 struct adis16480 *st = iio_priv(indio_dev); in adis16480_get_filter_freq()
460 static int adis16480_set_filter_freq(struct iio_dev *indio_dev, in adis16480_set_filter_freq() argument
463 struct adis16480 *st = iio_priv(indio_dev); in adis16480_set_filter_freq()
501 static int adis16480_read_raw(struct iio_dev *indio_dev, in adis16480_read_raw() argument
504 struct adis16480 *st = iio_priv(indio_dev); in adis16480_read_raw()
508 return adis_single_conversion(indio_dev, chan, 0, val); in adis16480_read_raw()
539 return adis16480_get_calibbias(indio_dev, chan, val); in adis16480_read_raw()
541 return adis16480_get_calibscale(indio_dev, chan, val); in adis16480_read_raw()
543 return adis16480_get_filter_freq(indio_dev, chan, val); in adis16480_read_raw()
545 return adis16480_get_freq(indio_dev, val, val2); in adis16480_read_raw()
551 static int adis16480_write_raw(struct iio_dev *indio_dev, in adis16480_write_raw() argument
556 return adis16480_set_calibbias(indio_dev, chan, val); in adis16480_write_raw()
558 return adis16480_set_calibscale(indio_dev, chan, val); in adis16480_write_raw()
560 return adis16480_set_filter_freq(indio_dev, chan, val); in adis16480_write_raw()
562 return adis16480_set_freq(indio_dev, val, val2); in adis16480_write_raw()
726 static int adis16480_stop_device(struct iio_dev *indio_dev) in adis16480_stop_device() argument
728 struct adis16480 *st = iio_priv(indio_dev); in adis16480_stop_device()
733 dev_err(&indio_dev->dev, in adis16480_stop_device()
745 static int adis16480_initial_setup(struct iio_dev *indio_dev) in adis16480_initial_setup() argument
747 struct adis16480 *st = iio_priv(indio_dev); in adis16480_initial_setup()
768 sscanf(indio_dev->name, "adis%u\n", &device_id); in adis16480_initial_setup()
771 dev_warn(&indio_dev->dev, "Device ID(%u) and product ID(%u) do not match.", in adis16480_initial_setup()
827 struct iio_dev *indio_dev; in adis16480_probe() local
831 indio_dev = devm_iio_device_alloc(&spi->dev, sizeof(*st)); in adis16480_probe()
832 if (indio_dev == NULL) in adis16480_probe()
835 spi_set_drvdata(spi, indio_dev); in adis16480_probe()
837 st = iio_priv(indio_dev); in adis16480_probe()
840 indio_dev->dev.parent = &spi->dev; in adis16480_probe()
841 indio_dev->name = spi_get_device_id(spi)->name; in adis16480_probe()
842 indio_dev->channels = st->chip_info->channels; in adis16480_probe()
843 indio_dev->num_channels = st->chip_info->num_channels; in adis16480_probe()
844 indio_dev->info = &adis16480_info; in adis16480_probe()
845 indio_dev->modes = INDIO_DIRECT_MODE; in adis16480_probe()
847 ret = adis_init(&st->adis, indio_dev, spi, &adis16480_data); in adis16480_probe()
851 ret = adis_setup_buffer_and_trigger(&st->adis, indio_dev, NULL); in adis16480_probe()
855 ret = adis16480_initial_setup(indio_dev); in adis16480_probe()
859 ret = iio_device_register(indio_dev); in adis16480_probe()
863 adis16480_debugfs_init(indio_dev); in adis16480_probe()
868 adis16480_stop_device(indio_dev); in adis16480_probe()
870 adis_cleanup_buffer_and_trigger(&st->adis, indio_dev); in adis16480_probe()
876 struct iio_dev *indio_dev = spi_get_drvdata(spi); in adis16480_remove() local
877 struct adis16480 *st = iio_priv(indio_dev); in adis16480_remove()
879 iio_device_unregister(indio_dev); in adis16480_remove()
880 adis16480_stop_device(indio_dev); in adis16480_remove()
882 adis_cleanup_buffer_and_trigger(&st->adis, indio_dev); in adis16480_remove()