aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/iio/industrialio-buffer.c
diff options
context:
space:
mode:
authorLars-Peter Clausen <lars@metafoo.de>2012-06-18 12:33:47 -0400
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2012-06-18 20:26:09 -0400
commitf5b81ddd12da71bd00b2963203c23ff929e0c182 (patch)
treeae0d93635fc5f5d98d1192f5993e6d7fa8988849 /drivers/iio/industrialio-buffer.c
parent493b67b73c7f575058acec61903a2cb128207106 (diff)
iio: iio_buffer_register: Skip channels with negative scan index
It is not always the case that all channels can be used in buffered mode. This patch allows channels, which can not be used in buffered mode, to set their scan index to a negative number, which will cause iio_buffer_register to ignore the channel. Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Acked-by: Jonathan Cameron <jic23@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/iio/industrialio-buffer.c')
-rw-r--r--drivers/iio/industrialio-buffer.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/iio/industrialio-buffer.c b/drivers/iio/industrialio-buffer.c
index 2f35db93cdb6..3d8d187eef2a 100644
--- a/drivers/iio/industrialio-buffer.c
+++ b/drivers/iio/industrialio-buffer.c
@@ -285,6 +285,9 @@ int iio_buffer_register(struct iio_dev *indio_dev,
285 if (channels) { 285 if (channels) {
286 /* new magic */ 286 /* new magic */
287 for (i = 0; i < num_channels; i++) { 287 for (i = 0; i < num_channels; i++) {
288 if (channels[i].scan_index < 0)
289 continue;
290
288 /* Establish necessary mask length */ 291 /* Establish necessary mask length */
289 if (channels[i].scan_index > 292 if (channels[i].scan_index >
290 (int)indio_dev->masklength - 1) 293 (int)indio_dev->masklength - 1)