Lines Matching refs:indio_dev

22 	struct iio_dev *indio_dev;  member
30 int iio_map_array_register(struct iio_dev *indio_dev, struct iio_map *maps) in iio_map_array_register() argument
46 mapi->indio_dev = indio_dev; in iio_map_array_register()
61 int iio_map_array_unregister(struct iio_dev *indio_dev) in iio_map_array_unregister() argument
70 if (indio_dev == mapi->indio_dev) { in iio_map_array_unregister()
82 *iio_chan_spec_from_name(const struct iio_dev *indio_dev, const char *name) in iio_chan_spec_from_name() argument
87 for (i = 0; i < indio_dev->num_channels; i++) in iio_chan_spec_from_name()
88 if (indio_dev->channels[i].datasheet_name && in iio_chan_spec_from_name()
89 strcmp(name, indio_dev->channels[i].datasheet_name) == 0) { in iio_chan_spec_from_name()
90 chan = &indio_dev->channels[i]; in iio_chan_spec_from_name()
113 static int __of_iio_simple_xlate(struct iio_dev *indio_dev, in __of_iio_simple_xlate() argument
119 if (iiospec->args[0] >= indio_dev->num_channels) { in __of_iio_simple_xlate()
120 dev_err(&indio_dev->dev, "invalid channel index %u\n", in __of_iio_simple_xlate()
132 struct iio_dev *indio_dev; in __of_iio_channel_get() local
148 indio_dev = dev_to_iio_dev(idev); in __of_iio_channel_get()
149 channel->indio_dev = indio_dev; in __of_iio_channel_get()
150 if (indio_dev->info->of_xlate) in __of_iio_channel_get()
151 index = indio_dev->info->of_xlate(indio_dev, &iiospec); in __of_iio_channel_get()
153 index = __of_iio_simple_xlate(indio_dev, &iiospec); in __of_iio_channel_get()
156 channel->channel = &indio_dev->channels[index]; in __of_iio_channel_get()
161 iio_device_put(indio_dev); in __of_iio_channel_get()
262 iio_device_put(chans[i].indio_dev); in of_iio_channel_get_all()
300 iio_device_get(c->indio_dev); in iio_channel_get_sys()
313 channel->indio_dev = c->indio_dev; in iio_channel_get_sys()
317 iio_chan_spec_from_name(channel->indio_dev, in iio_channel_get_sys()
331 iio_device_put(c->indio_dev); in iio_channel_get_sys()
356 iio_device_put(channel->indio_dev); in iio_channel_release()
403 chans[mapind].indio_dev = c->indio_dev; in iio_channel_get_all()
406 iio_chan_spec_from_name(chans[mapind].indio_dev, in iio_channel_get_all()
412 iio_device_get(chans[mapind].indio_dev); in iio_channel_get_all()
425 iio_device_put(chans[i].indio_dev); in iio_channel_get_all()
438 while (chan->indio_dev) { in iio_channel_release_all()
439 iio_device_put(chan->indio_dev); in iio_channel_release_all()
460 if (chan->indio_dev->info->read_raw_multi) { in iio_channel_read()
461 ret = chan->indio_dev->info->read_raw_multi(chan->indio_dev, in iio_channel_read()
467 ret = chan->indio_dev->info->read_raw(chan->indio_dev, in iio_channel_read()
477 mutex_lock(&chan->indio_dev->info_exist_lock); in iio_read_channel_raw()
478 if (chan->indio_dev->info == NULL) { in iio_read_channel_raw()
485 mutex_unlock(&chan->indio_dev->info_exist_lock); in iio_read_channel_raw()
495 mutex_lock(&chan->indio_dev->info_exist_lock); in iio_read_channel_average_raw()
496 if (chan->indio_dev->info == NULL) { in iio_read_channel_average_raw()
503 mutex_unlock(&chan->indio_dev->info_exist_lock); in iio_read_channel_average_raw()
564 mutex_lock(&chan->indio_dev->info_exist_lock); in iio_convert_raw_to_processed()
565 if (chan->indio_dev->info == NULL) { in iio_convert_raw_to_processed()
573 mutex_unlock(&chan->indio_dev->info_exist_lock); in iio_convert_raw_to_processed()
583 mutex_lock(&chan->indio_dev->info_exist_lock); in iio_read_channel_processed()
584 if (chan->indio_dev->info == NULL) { in iio_read_channel_processed()
600 mutex_unlock(&chan->indio_dev->info_exist_lock); in iio_read_channel_processed()
610 mutex_lock(&chan->indio_dev->info_exist_lock); in iio_read_channel_scale()
611 if (chan->indio_dev->info == NULL) { in iio_read_channel_scale()
618 mutex_unlock(&chan->indio_dev->info_exist_lock); in iio_read_channel_scale()
629 mutex_lock(&chan->indio_dev->info_exist_lock); in iio_get_channel_type()
630 if (chan->indio_dev->info == NULL) { in iio_get_channel_type()
637 mutex_unlock(&chan->indio_dev->info_exist_lock); in iio_get_channel_type()
646 return chan->indio_dev->info->write_raw(chan->indio_dev, in iio_channel_write()
654 mutex_lock(&chan->indio_dev->info_exist_lock); in iio_write_channel_raw()
655 if (chan->indio_dev->info == NULL) { in iio_write_channel_raw()
662 mutex_unlock(&chan->indio_dev->info_exist_lock); in iio_write_channel_raw()