iio: adc: at91-sama5d2: use IIO_DECLARE_BUFFER_WITH_TS
authorDavid Lechner <dlechner@baylibre.com>
Wed, 7 May 2025 20:42:46 +0000 (15:42 -0500)
committerJonathan Cameron <Jonathan.Cameron@huawei.com>
Wed, 21 May 2025 13:20:32 +0000 (14:20 +0100)
Use IIO_DECLARE_BUFFER_WITH_TS() to declare the buffer that gets used
with iio_push_to_buffers_with_ts(). This makes the code a bit easier to
read and understand.

Reviewed-by: Nuno Sá <nuno.sa@analog.com>
Signed-off-by: David Lechner <dlechner@baylibre.com>
Link: https://patch.msgid.link/20250507-iio-introduce-iio_declare_buffer_with_ts-v6-7-4aee1b9f1b89@baylibre.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
drivers/iio/adc/at91-sama5d2_adc.c

index 414610afcb2c4128a63cf76767803c32cb01ac5e..c3450246730e08cdacc975ed19f46044dc76848f 100644 (file)
@@ -586,15 +586,6 @@ struct at91_adc_temp {
        u16                             saved_oversampling;
 };
 
-/*
- * Buffer size requirements:
- * No channels * bytes_per_channel(2) + timestamp bytes (8)
- * Divided by 2 because we need half words.
- * We assume 32 channels for now, has to be increased if needed.
- * Nobody minds a buffer being too big.
- */
-#define AT91_BUFFER_MAX_HWORDS ((32 * 2 + 8) / 2)
-
 struct at91_adc_state {
        void __iomem                    *base;
        int                             irq;
@@ -616,8 +607,8 @@ struct at91_adc_state {
        struct at91_adc_temp            temp_st;
        struct iio_dev                  *indio_dev;
        struct device                   *dev;
-       /* Ensure naturally aligned timestamp */
-       u16                             buffer[AT91_BUFFER_MAX_HWORDS] __aligned(8);
+       /* We assume 32 channels for now, has to be increased if needed. */
+       IIO_DECLARE_BUFFER_WITH_TS(u16, buffer, 32);
        /*
         * lock to prevent concurrent 'single conversion' requests through
         * sysfs.