iio: dac: ad5064: Fix alignment for DMA safety
____cacheline_aligned is an insufficient guarantee for non-coherent DMA
on platforms with 128 byte cachelines above L1. Switch to the updated
IIO_DMA_MINALIGN definition.
Update the comment to include 'may'.
Fixes: 6a17a0768f
("iio:dac:ad5064: Add support for the ad5629r and ad5669r")
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Cc: Lars-Peter Clausen <lars@metafoo.de>
Acked-by: Nuno Sá <nuno.sa@analog.com>
Link: https://lore.kernel.org/r/20220508175712.647246-44-jic23@kernel.org
This commit is contained in:
Родитель
314d2b1978
Коммит
8779b88c21
|
@ -115,13 +115,13 @@ struct ad5064_state {
|
||||||
struct mutex lock;
|
struct mutex lock;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* DMA (thus cache coherency maintenance) requires the
|
* DMA (thus cache coherency maintenance) may require the
|
||||||
* transfer buffers to live in their own cache lines.
|
* transfer buffers to live in their own cache lines.
|
||||||
*/
|
*/
|
||||||
union {
|
union {
|
||||||
u8 i2c[3];
|
u8 i2c[3];
|
||||||
__be32 spi;
|
__be32 spi;
|
||||||
} data ____cacheline_aligned;
|
} data __aligned(IIO_DMA_MINALIGN);
|
||||||
};
|
};
|
||||||
|
|
||||||
enum ad5064_type {
|
enum ad5064_type {
|
||||||
|
|
Загрузка…
Ссылка в новой задаче