summaryrefslogtreecommitdiffstats
path: root/drivers/iio/inkern.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/iio/inkern.c')
-rw-r--r--drivers/iio/inkern.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/drivers/iio/inkern.c b/drivers/iio/inkern.c
index 06ca3f7fcc44..f19dbde3c945 100644
--- a/drivers/iio/inkern.c
+++ b/drivers/iio/inkern.c
@@ -733,6 +733,26 @@ static int iio_channel_read_avail(struct iio_channel *chan,
733 vals, type, length, info); 733 vals, type, length, info);
734} 734}
735 735
736int iio_read_avail_channel_attribute(struct iio_channel *chan,
737 const int **vals, int *type, int *length,
738 enum iio_chan_info_enum attribute)
739{
740 int ret;
741
742 mutex_lock(&chan->indio_dev->info_exist_lock);
743 if (!chan->indio_dev->info) {
744 ret = -ENODEV;
745 goto err_unlock;
746 }
747
748 ret = iio_channel_read_avail(chan, vals, type, length, attribute);
749err_unlock:
750 mutex_unlock(&chan->indio_dev->info_exist_lock);
751
752 return ret;
753}
754EXPORT_SYMBOL_GPL(iio_read_avail_channel_attribute);
755
736int iio_read_avail_channel_raw(struct iio_channel *chan, 756int iio_read_avail_channel_raw(struct iio_channel *chan,
737 const int **vals, int *length) 757 const int **vals, int *length)
738{ 758{