[PATCH v9 4/8] iio: adc: ad4030: Use BIT macro to improve code readability

Marcelo Schmitt posted 8 patches 1 month, 2 weeks ago
There is a newer version of this series
[PATCH v9 4/8] iio: adc: ad4030: Use BIT macro to improve code readability
Posted by Marcelo Schmitt 1 month, 2 weeks ago
Use BIT macro to make the list of average modes more readable.

Suggested-by: Andy Shevchenko <andy.shevchenko@gmail.com>
Reviewed-by: Nuno Sá <nuno.sa@analog.com>
Acked-by: Andy Shevchenko <andy.shevchenko@gmail.com>
Signed-off-by: Marcelo Schmitt <marcelo.schmitt@analog.com>
---
No changes in v9.

 drivers/iio/adc/ad4030.c | 12 +++++++++---
 1 file changed, 9 insertions(+), 3 deletions(-)

diff --git a/drivers/iio/adc/ad4030.c b/drivers/iio/adc/ad4030.c
index 68446db9bef1..def3e1d01ceb 100644
--- a/drivers/iio/adc/ad4030.c
+++ b/drivers/iio/adc/ad4030.c
@@ -232,10 +232,16 @@ struct ad4030_state {
 	.num_ext_scan_type = ARRAY_SIZE(_scan_type),			\
 }
 
+/*
+ * AD4030 can average over 2^N samples, where N = 1, 2, 3, ..., 16.
+ * We use N = 0 to mean no sample averaging.
+ */
 static const int ad4030_average_modes[] = {
-	1, 2, 4, 8, 16, 32, 64, 128,
-	256, 512, 1024, 2048, 4096, 8192, 16384, 32768,
-	65536,
+	BIT(0),					/* No sampling average */
+	BIT(1), BIT(2), BIT(3), BIT(4),
+	BIT(5), BIT(6), BIT(7), BIT(8),
+	BIT(9), BIT(10), BIT(11), BIT(12),
+	BIT(13), BIT(14), BIT(15), BIT(16),
 };
 
 static int ad4030_enter_config_mode(struct ad4030_state *st)
-- 
2.39.2

Re: [PATCH v9 4/8] iio: adc: ad4030: Use BIT macro to improve code readability
Posted by Jonathan Cameron 1 month, 1 week ago
On Mon, 16 Feb 2026 12:00:22 -0300
Marcelo Schmitt <marcelo.schmitt@analog.com> wrote:

> Use BIT macro to make the list of average modes more readable.
> 
> Suggested-by: Andy Shevchenko <andy.shevchenko@gmail.com>
> Reviewed-by: Nuno Sá <nuno.sa@analog.com>
> Acked-by: Andy Shevchenko <andy.shevchenko@gmail.com>
> Signed-off-by: Marcelo Schmitt <marcelo.schmitt@analog.com>
Stands on it's own a good improvement so picked up now
as another one we can all forget about ;)

Applied to the testing branch of iio.git.

thanks,

Jonathan

> ---
> No changes in v9.
> 
>  drivers/iio/adc/ad4030.c | 12 +++++++++---
>  1 file changed, 9 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/iio/adc/ad4030.c b/drivers/iio/adc/ad4030.c
> index 68446db9bef1..def3e1d01ceb 100644
> --- a/drivers/iio/adc/ad4030.c
> +++ b/drivers/iio/adc/ad4030.c
> @@ -232,10 +232,16 @@ struct ad4030_state {
>  	.num_ext_scan_type = ARRAY_SIZE(_scan_type),			\
>  }
>  
> +/*
> + * AD4030 can average over 2^N samples, where N = 1, 2, 3, ..., 16.
> + * We use N = 0 to mean no sample averaging.
> + */
>  static const int ad4030_average_modes[] = {
> -	1, 2, 4, 8, 16, 32, 64, 128,
> -	256, 512, 1024, 2048, 4096, 8192, 16384, 32768,
> -	65536,
> +	BIT(0),					/* No sampling average */
> +	BIT(1), BIT(2), BIT(3), BIT(4),
> +	BIT(5), BIT(6), BIT(7), BIT(8),
> +	BIT(9), BIT(10), BIT(11), BIT(12),
> +	BIT(13), BIT(14), BIT(15), BIT(16),
>  };
>  
>  static int ad4030_enter_config_mode(struct ad4030_state *st)