Lines Matching refs:chan

85 	const struct iio_chan_spec *chan = NULL;  in iio_chan_spec_from_name()  local
90 chan = &indio_dev->channels[i]; in iio_chan_spec_from_name()
93 return chan; in iio_chan_spec_from_name()
191 struct iio_channel *chan = NULL; in of_iio_channel_get_by_name() local
206 chan = of_iio_channel_get(np, index); in of_iio_channel_get_by_name()
207 if (!IS_ERR(chan) || PTR_ERR(chan) == -EPROBE_DEFER) in of_iio_channel_get_by_name()
225 return chan; in of_iio_channel_get_by_name()
434 struct iio_channel *chan = &channels[0]; in iio_channel_release_all() local
436 while (chan->indio_dev) { in iio_channel_release_all()
437 iio_device_put(chan->indio_dev); in iio_channel_release_all()
438 chan++; in iio_channel_release_all()
444 static int iio_channel_read(struct iio_channel *chan, int *val, int *val2, in iio_channel_read() argument
455 if(!iio_channel_has_info(chan->channel, info)) in iio_channel_read()
458 if (chan->indio_dev->info->read_raw_multi) { in iio_channel_read()
459 ret = chan->indio_dev->info->read_raw_multi(chan->indio_dev, in iio_channel_read()
460 chan->channel, INDIO_MAX_RAW_ELEMENTS, in iio_channel_read()
465 ret = chan->indio_dev->info->read_raw(chan->indio_dev, in iio_channel_read()
466 chan->channel, val, val2, info); in iio_channel_read()
471 int iio_read_channel_raw(struct iio_channel *chan, int *val) in iio_read_channel_raw() argument
475 mutex_lock(&chan->indio_dev->info_exist_lock); in iio_read_channel_raw()
476 if (chan->indio_dev->info == NULL) { in iio_read_channel_raw()
481 ret = iio_channel_read(chan, val, NULL, IIO_CHAN_INFO_RAW); in iio_read_channel_raw()
483 mutex_unlock(&chan->indio_dev->info_exist_lock); in iio_read_channel_raw()
489 int iio_read_channel_average_raw(struct iio_channel *chan, int *val) in iio_read_channel_average_raw() argument
493 mutex_lock(&chan->indio_dev->info_exist_lock); in iio_read_channel_average_raw()
494 if (chan->indio_dev->info == NULL) { in iio_read_channel_average_raw()
499 ret = iio_channel_read(chan, val, NULL, IIO_CHAN_INFO_AVERAGE_RAW); in iio_read_channel_average_raw()
501 mutex_unlock(&chan->indio_dev->info_exist_lock); in iio_read_channel_average_raw()
507 static int iio_convert_raw_to_processed_unlocked(struct iio_channel *chan, in iio_convert_raw_to_processed_unlocked() argument
514 ret = iio_channel_read(chan, &offset, NULL, IIO_CHAN_INFO_OFFSET); in iio_convert_raw_to_processed_unlocked()
518 scale_type = iio_channel_read(chan, &scale_val, &scale_val2, in iio_convert_raw_to_processed_unlocked()
557 int iio_convert_raw_to_processed(struct iio_channel *chan, int raw, in iio_convert_raw_to_processed() argument
562 mutex_lock(&chan->indio_dev->info_exist_lock); in iio_convert_raw_to_processed()
563 if (chan->indio_dev->info == NULL) { in iio_convert_raw_to_processed()
568 ret = iio_convert_raw_to_processed_unlocked(chan, raw, processed, in iio_convert_raw_to_processed()
571 mutex_unlock(&chan->indio_dev->info_exist_lock); in iio_convert_raw_to_processed()
577 int iio_read_channel_processed(struct iio_channel *chan, int *val) in iio_read_channel_processed() argument
581 mutex_lock(&chan->indio_dev->info_exist_lock); in iio_read_channel_processed()
582 if (chan->indio_dev->info == NULL) { in iio_read_channel_processed()
587 if (iio_channel_has_info(chan->channel, IIO_CHAN_INFO_PROCESSED)) { in iio_read_channel_processed()
588 ret = iio_channel_read(chan, val, NULL, in iio_read_channel_processed()
591 ret = iio_channel_read(chan, val, NULL, IIO_CHAN_INFO_RAW); in iio_read_channel_processed()
594 ret = iio_convert_raw_to_processed_unlocked(chan, *val, val, 1); in iio_read_channel_processed()
598 mutex_unlock(&chan->indio_dev->info_exist_lock); in iio_read_channel_processed()
604 int iio_read_channel_scale(struct iio_channel *chan, int *val, int *val2) in iio_read_channel_scale() argument
608 mutex_lock(&chan->indio_dev->info_exist_lock); in iio_read_channel_scale()
609 if (chan->indio_dev->info == NULL) { in iio_read_channel_scale()
614 ret = iio_channel_read(chan, val, val2, IIO_CHAN_INFO_SCALE); in iio_read_channel_scale()
616 mutex_unlock(&chan->indio_dev->info_exist_lock); in iio_read_channel_scale()
622 int iio_get_channel_type(struct iio_channel *chan, enum iio_chan_type *type) in iio_get_channel_type() argument
627 mutex_lock(&chan->indio_dev->info_exist_lock); in iio_get_channel_type()
628 if (chan->indio_dev->info == NULL) { in iio_get_channel_type()
633 *type = chan->channel->type; in iio_get_channel_type()
635 mutex_unlock(&chan->indio_dev->info_exist_lock); in iio_get_channel_type()
641 static int iio_channel_write(struct iio_channel *chan, int val, int val2, in iio_channel_write() argument
644 return chan->indio_dev->info->write_raw(chan->indio_dev, in iio_channel_write()
645 chan->channel, val, val2, info); in iio_channel_write()
648 int iio_write_channel_raw(struct iio_channel *chan, int val) in iio_write_channel_raw() argument
652 mutex_lock(&chan->indio_dev->info_exist_lock); in iio_write_channel_raw()
653 if (chan->indio_dev->info == NULL) { in iio_write_channel_raw()
658 ret = iio_channel_write(chan, val, 0, IIO_CHAN_INFO_RAW); in iio_write_channel_raw()
660 mutex_unlock(&chan->indio_dev->info_exist_lock); in iio_write_channel_raw()