1
0
Fork 0
alistair23-linux/drivers/iio/pressure
Jonathan Cameron 91b7b231f5 iio:pressure:mpl3115: Force alignment of buffer
commit 198cf32f05 upstream.

Whilst this is another case of the issue Lars reported with
an array of elements of smaller than 8 bytes being passed
to iio_push_to_buffers_with_timestamp(), the solution here is
a bit different from the other cases and relies on __aligned
working on the stack (true since 4.6?)

This one is unusual.  We have to do an explicit memset() each time
as we are reading 3 bytes into a potential 4 byte channel which
may sometimes be a 2 byte channel depending on what is enabled.
As such, moving the buffer to the heap in the iio_priv structure
doesn't save us much.  We can't use a nice explicit structure
on the stack either as the data channels have different storage
sizes and are all separately controlled.

Fixes: cc26ad455f ("iio: Add Freescale MPL3115A2 pressure / temperature sensor driver")
Reported-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com>
Reviewed-by: Alexandru Ardelean <alexandru.ardelean@analog.com>
Cc: Peter Meerwald <pmeerw@pmeerw.net>
Cc: <Stable@vger.kernel.org>
Link: https://lore.kernel.org/r/20200920112742.170751-7-jic23@kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2020-12-30 11:51:44 +01:00
..
Kconfig Second set of IIO device support, features, cleanups and minor fixes for 5.3. 2019-07-01 10:58:13 +02:00
Makefile iio: Add driver for Infineon DPS310 2019-05-27 10:51:58 +01:00
abp060mg.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 2019-05-30 11:26:37 -07:00
bmp280-core.c iio: bmp280: fix compensation of humidity 2020-06-24 17:50:12 +02:00
bmp280-i2c.c treewide: Add SPDX license identifier for more missed files 2019-05-21 10:50:45 +02:00
bmp280-regmap.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
bmp280-spi.c treewide: Add SPDX license identifier for more missed files 2019-05-21 10:50:45 +02:00
bmp280.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
cros_ec_baro.c iio: cros_ec_baro: set info_mask_shared_by_all_available field 2019-12-31 16:45:15 +01:00
dps310.c iio: dps310: Add pressure sensing capability 2019-06-08 12:33:32 +01:00
hid-sensor-press.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 309 2019-06-05 17:37:04 +02:00
hp03.c iio: pressure: hp03: convert to i2c_new_dummy_device 2019-07-27 22:52:07 +01:00
hp206c.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 330 2019-06-05 17:37:06 +02:00
mpl115.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 330 2019-06-05 17:37:06 +02:00
mpl115.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 330 2019-06-05 17:37:06 +02:00
mpl115_i2c.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 330 2019-06-05 17:37:06 +02:00
mpl115_spi.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 330 2019-06-05 17:37:06 +02:00
mpl3115.c iio:pressure:mpl3115: Force alignment of buffer 2020-12-30 11:51:44 +01:00
ms5611.h iio: pressure: ms5611: switch to SPDX identifier 2018-09-08 15:04:02 +01:00
ms5611_core.c iio:pressure:ms5611 Fix buffer element alignment 2020-07-22 09:32:54 +02:00
ms5611_i2c.c iio: pressure: ms5611: switch to SPDX identifier 2018-09-08 15:04:02 +01:00
ms5611_spi.c iio: pressure: ms5611: switch to SPDX identifier 2018-09-08 15:04:02 +01:00
ms5637.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 177 2019-05-30 11:29:19 -07:00
st_pressure.h iio:pressure: introduce st_press_get_settings() function 2019-07-27 22:52:05 +01:00
st_pressure_buffer.c iio:st_sensors: remove buffer allocation at each buffer enable 2019-08-11 09:26:04 +01:00
st_pressure_core.c iio: remove get_irq_data_ready() function pointer and use IRQ number directly 2019-08-05 16:50:08 +01:00
st_pressure_i2c.c iio: make st_sensors drivers use regmap 2019-07-27 22:52:06 +01:00
st_pressure_spi.c iio: move 3-wire spi initialization to st_sensors_spi 2019-07-27 22:52:06 +01:00
t5403.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 330 2019-06-05 17:37:06 +02:00
zpa2326.c iio: pressure: zpa2326: handle pm_runtime_get_sync failure 2020-07-22 09:32:54 +02:00
zpa2326.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 174 2019-05-30 11:26:41 -07:00
zpa2326_i2c.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 174 2019-05-30 11:26:41 -07:00
zpa2326_spi.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 174 2019-05-30 11:26:41 -07:00