]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
iio: adc: ad7280a: Fix alignment for DMA safety
authorJonathan Cameron <Jonathan.Cameron@huawei.com>
Sun, 8 May 2022 17:55:50 +0000 (18:55 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 17 Aug 2022 12:41:24 +0000 (14:41 +0200)
[ Upstream commit 4e2008429588b857bbc13d048b67b931a8d84816 ]

____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.

Fixes: 003f1d48de52 ("staging:iio:adc:ad7280a: Split buff[2] into tx and rx parts")
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Acked-by: Nuno Sá <nuno.sa@analog.com>
Link: https://lore.kernel.org/r/20220508175712.647246-11-jic23@kernel.org
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/iio/adc/ad7280a.c

index ec9acbf12b9a5d6fe24990cb31a334be8e4711bf..047a9d0dbcf756272c2e5d114b8f7cf9e5a7ea1d 100644 (file)
@@ -183,7 +183,7 @@ struct ad7280_state {
        unsigned char                   cb_mask[AD7280A_MAX_CHAIN];
        struct mutex                    lock; /* protect sensor state */
 
-       __be32                          tx ____cacheline_aligned;
+       __be32                          tx __aligned(IIO_DMA_MINALIGN);
        __be32                          rx;
 };