diff options
Diffstat (limited to 'drivers/iio/light/isl29125.c')
| -rw-r--r-- | drivers/iio/light/isl29125.c | 14 | 
1 files changed, 7 insertions, 7 deletions
diff --git a/drivers/iio/light/isl29125.c b/drivers/iio/light/isl29125.c index 6bc23b164cc5..3acb8a4f1d12 100644 --- a/drivers/iio/light/isl29125.c +++ b/drivers/iio/light/isl29125.c @@ -51,11 +51,6 @@  struct isl29125_data {  	struct i2c_client *client;  	u8 conf1; -	/* Ensure timestamp is naturally aligned */ -	struct { -		u16 chans[3]; -		aligned_s64 timestamp; -	} scan;  };  #define ISL29125_CHANNEL(_color, _si) { \ @@ -179,6 +174,11 @@ static irqreturn_t isl29125_trigger_handler(int irq, void *p)  	struct iio_dev *indio_dev = pf->indio_dev;  	struct isl29125_data *data = iio_priv(indio_dev);  	int i, j = 0; +	/* Ensure timestamp is naturally aligned */ +	struct { +		u16 chans[3]; +		aligned_s64 timestamp; +	} scan = { };  	iio_for_each_active_channel(indio_dev, i) {  		int ret = i2c_smbus_read_word_data(data->client, @@ -186,10 +186,10 @@ static irqreturn_t isl29125_trigger_handler(int irq, void *p)  		if (ret < 0)  			goto done; -		data->scan.chans[j++] = ret; +		scan.chans[j++] = ret;  	} -	iio_push_to_buffers_with_timestamp(indio_dev, &data->scan, +	iio_push_to_buffers_with_ts(indio_dev, &scan, sizeof(scan),  		iio_get_time_ns(indio_dev));  done:  | 
