Re: [PATCH] Drivers: i2c: busses: Use max macro instead of ternary operator

From: Joe Perches
Date: Sat Sep 10 2016 - 15:22:06 EST


On Sun, 2016-09-11 at 00:38 +0530, Bhumika Goyal wrote:
> Replace ternary operators with macro 'max' as it is shorter
> and thus increases code readability. Macro max returns
> the maximum of the two compared values.
> Done using coccinelle:
>
> @@
> type T;
> T x;
> T y;
> @@
> (
> - x < y ? x : y
> + min(x,y)
> - x > y ? x : y
> + max(x,y)
> )

Hello.

Please make sure to inspect and if appropriate modify the coccinelle
output for the 'best' coding style, for whatever definition of 'best'
you might use, before submitting automatically produced patches.

> diff --git a/drivers/i2c/busses/i2c-jz4780.c b/drivers/i2c/busses/i2c-jz4780.c
[]
> @@ -133,10 +133,10 @@ static const char * const jz4780_i2c_abrt_src[] = {
>  
> #define JZ4780_I2C_ENB_I2C BIT(0)
>  
> -#define JZ4780_I2CSHCNT_ADJUST(n) (((n) - 8) < 6 ? 6 : ((n) - 8))
> -#define JZ4780_I2CSLCNT_ADJUST(n) (((n) - 1) < 8 ? 8 : ((n) - 1))
> -#define JZ4780_I2CFHCNT_ADJUST(n) (((n) - 8) < 6 ? 6 : ((n) - 8))
> -#define JZ4780_I2CFLCNT_ADJUST(n) (((n) - 1) < 8 ? 8 : ((n) - 1))
> +#define JZ4780_I2CSHCNT_ADJUST(n) (max(6, (n) - 8))
> +#define JZ4780_I2CSLCNT_ADJUST(n) (max(8, (n) - 1))
> +#define JZ4780_I2CFHCNT_ADJUST(n) (max(6, (n) - 8))
> +#define JZ4780_I2CFLCNT_ADJUST(n) (max(8, (n) - 1))

For instance: the parentheses are unnecessary and could be removed
like the BIT macro above.
>