accessing first and last channel fails:
fakedata[0] is never accessed, out-of-bound access for last channel
Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>
Acked-by: Jonathan Cameron <jic23@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
                for (i = 0, j = 0;
                     i < bitmap_weight(indio_dev->active_scan_mask,
                                       indio_dev->masklength);
-                    i++) {
+                    i++, j++) {
                        j = find_next_bit(buffer->scan_mask,
-                                         indio_dev->masklength, j + 1);
+                                         indio_dev->masklength, j);
                        /* random access read from the 'device' */
                        data[i] = fakedata[j];
                        len += 2;