Lines Matching defs:iio
24 #include <linux/iio/events.h>
25 #include <linux/iio/iio.h>
26 #include <linux/iio/sysfs.h>
386 static int opt3001_read_raw(struct iio_dev *iio,
390 struct opt3001 *opt = iio_priv(iio);
417 static int opt3001_write_raw(struct iio_dev *iio,
421 struct opt3001 *opt = iio_priv(iio);
443 static int opt3001_read_event_value(struct iio_dev *iio,
448 struct opt3001 *opt = iio_priv(iio);
471 static int opt3001_write_event_value(struct iio_dev *iio,
476 struct opt3001 *opt = iio_priv(iio);
527 static int opt3001_read_event_config(struct iio_dev *iio,
531 struct opt3001 *opt = iio_priv(iio);
536 static int opt3001_write_event_config(struct iio_dev *iio,
540 struct opt3001 *opt = iio_priv(iio);
687 struct iio_dev *iio = _iio;
688 struct opt3001 *opt = iio_priv(iio);
705 iio_push_event(iio,
709 iio_get_time_ns(iio));
711 iio_push_event(iio,
715 iio_get_time_ns(iio));
743 struct iio_dev *iio;
748 iio = devm_iio_device_alloc(dev, sizeof(*opt));
749 if (!iio)
752 opt = iio_priv(iio);
758 i2c_set_clientdata(client, iio);
768 iio->name = client->name;
769 iio->channels = opt3001_channels;
770 iio->num_channels = ARRAY_SIZE(opt3001_channels);
771 iio->modes = INDIO_DIRECT_MODE;
772 iio->info = &opt3001_info;
774 ret = devm_iio_device_register(dev, iio);
784 "opt3001", iio);
799 struct iio_dev *iio = i2c_get_clientdata(client);
800 struct opt3001 *opt = iio_priv(iio);
805 free_irq(client->irq, iio);