iio:accel:stk8312: drop local buffer
authorHartmut Knaack <knaack.h@gmx.de>
Wed, 29 Jul 2015 21:39:40 +0000 (23:39 +0200)
committerJonathan Cameron <jic23@kernel.org>
Sat, 8 Aug 2015 11:24:58 +0000 (12:24 +0100)
Drop the local buffer in stk8312_trigger_handler() and use data->buffer
instead for bulk reads.

Signed-off-by: Hartmut Knaack <knaack.h@gmx.de>
Reviewed-by: Tiberiu Breana <tiberiu.a.breana@intel.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
drivers/iio/accel/stk8312.c

index c5a4765..c764af2 100644 (file)
@@ -435,7 +435,6 @@ static irqreturn_t stk8312_trigger_handler(int irq, void *p)
        struct iio_dev *indio_dev = pf->indio_dev;
        struct stk8312_data *data = iio_priv(indio_dev);
        int bit, ret, i = 0;
-       u8 buffer[STK8312_ALL_CHANNEL_SIZE];
 
        mutex_lock(&data->lock);
        /*
@@ -446,15 +445,12 @@ static irqreturn_t stk8312_trigger_handler(int irq, void *p)
                ret = i2c_smbus_read_i2c_block_data(data->client,
                                                    STK8312_REG_XOUT,
                                                    STK8312_ALL_CHANNEL_SIZE,
-                                                   buffer);
+                                                   data->buffer);
                if (ret < STK8312_ALL_CHANNEL_SIZE) {
                        dev_err(&data->client->dev, "register read failed\n");
                        mutex_unlock(&data->lock);
                        goto err;
                }
-               data->buffer[0] = buffer[0];
-               data->buffer[1] = buffer[1];
-               data->buffer[2] = buffer[2];
        } else {
                for_each_set_bit(bit, indio_dev->active_scan_mask,
                                 indio_dev->masklength) {