linux/drivers/iio/pressure
Jonathan Cameron 198cf32f05 iio:pressure:mpl3115: Force alignment of buffer
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
2020-12-03 19:40:28 +00:00
..
abp060mg.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
bmp280-core.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
bmp280-i2c.c iio: pressure: bmp280: Allow device to be enumerated from ACPI 2019-12-29 15:20:10 +00:00
bmp280-regmap.c iio: pressure: bmp280: remove unneeded semicolon 2020-11-01 14:58:54 +00:00
bmp280-spi.c iio: pressure: bmp280: use devm action and remove labels from probe 2019-10-22 11:10:23 +01:00
bmp280.h iio: pressure: bmp280: use devm action and remove labels from probe 2019-10-22 11:10:23 +01:00
cros_ec_baro.c iio: cros_ec: unify hw fifo attributes into the core file 2020-09-29 17:27:07 +01:00
dlhl60d.c Replace HTTP links with HTTPS ones: drivers/iio 2020-07-13 15:05:59 +01:00
dps310.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
hid-sensor-press.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
hp03.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
hp206c.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
icp10100.c iio:pressure:icp10100: Drop of_match_ptr and CONFIG_OF protections 2020-09-21 18:41:29 +01:00
Kconfig iio: pressure: icp10100: add driver for InvenSense ICP-101xx 2020-03-08 17:28:52 +00:00
Makefile iio: pressure: icp10100: add driver for InvenSense ICP-101xx 2020-03-08 17:28:52 +00: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
mpl115.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
mpl115.h 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-03 19:40:28 +00:00
ms5611_core.c Linux 5.8-rc6 2020-07-20 09:37:31 +02:00
ms5611_i2c.c iio:pressure:ms5611: Drop of_match_ptr and CONFIG_OF protections 2020-09-21 18:41:29 +01:00
ms5611_spi.c iio:pressure:ms5611: Drop of_match_ptr and CONFIG_OF protections 2020-09-21 18:41:29 +01:00
ms5611.h
ms5637.c iio:pressure:ms5637: Drop of_match_ptr protection 2020-09-21 18:41:30 +01:00
st_pressure_buffer.c iio: Move attach/detach of the poll func to the core 2020-06-20 17:34:44 +01:00
st_pressure_core.c iio: st_sensors: Drop unneeded explicit castings 2020-03-21 10:26:21 +00:00
st_pressure_i2c.c iio: st_sensors: Make use of device properties 2020-01-13 21:53:39 +00:00
st_pressure_spi.c iio: st_sensors: Make use of device properties 2020-01-13 21:53:39 +00:00
st_pressure.h iio: pressure: st_press: Mark default_press_pdata with __maybe_unused 2019-12-29 15:20:05 +00:00
t5403.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
zpa2326_i2c.c iio:pressure:zpa2326: Drop of_match_ptr protection 2020-09-21 18:41:30 +01:00
zpa2326_spi.c iio:pressure:zpa2326: Drop of_match_ptr protection 2020-09-21 18:41:30 +01:00
zpa2326.c Linux 5.8-rc6 2020-07-20 09:37:31 +02:00
zpa2326.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 174 2019-05-30 11:26:41 -07:00