2015-06-06 01:53:39

by Vaishali Thakkar

[permalink] [raw]
Subject: [PATCH] [media] s5k5baf: Convert use of __constant_cpu_to_be16 to cpu_to_be16

In little endian cases, macro cpu_to_be16 unfolds to __swab16 which
provides special case for constants. In big endian cases,
__constant_cpu_to_be16 and cpu_to_be16 expand directly to the
same expression. So, replace __constant_cpu_to_be16 with
cpu_to_be16 with the goal of getting rid of the definition of
__constant_cpu_to_be16 completely.

The semantic patch that performs this transformation is as follows:

@@expression x;@@

- __constant_cpu_to_be16(x)
+ cpu_to_be16(x)

Signed-off-by: Vaishali Thakkar <[email protected]>
---
drivers/media/i2c/s5k5baf.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/media/i2c/s5k5baf.c b/drivers/media/i2c/s5k5baf.c
index 297ef04..7a43b55 100644
--- a/drivers/media/i2c/s5k5baf.c
+++ b/drivers/media/i2c/s5k5baf.c
@@ -491,7 +491,7 @@ static void s5k5baf_write_arr_seq(struct s5k5baf *state, u16 addr,
v4l2_dbg(3, debug, c, "i2c_write_seq(count=%d): %*ph\n", count,
min(2 * count, 64), seq);

- buf[0] = __constant_cpu_to_be16(REG_CMD_BUF);
+ buf[0] = cpu_to_be16(REG_CMD_BUF);

while (count > 0) {
int n = min_t(int, count, ARRAY_SIZE(buf) - 1);
--
1.9.1


2015-06-08 06:01:06

by Andrzej Hajda

[permalink] [raw]
Subject: Re: [PATCH] [media] s5k5baf: Convert use of __constant_cpu_to_be16 to cpu_to_be16

On 06/06/2015 03:53 AM, Vaishali Thakkar wrote:
> In little endian cases, macro cpu_to_be16 unfolds to __swab16 which
> provides special case for constants. In big endian cases,
> __constant_cpu_to_be16 and cpu_to_be16 expand directly to the
> same expression. So, replace __constant_cpu_to_be16 with
> cpu_to_be16 with the goal of getting rid of the definition of
> __constant_cpu_to_be16 completely.
>
> The semantic patch that performs this transformation is as follows:
>
> @@expression x;@@
>
> - __constant_cpu_to_be16(x)
> + cpu_to_be16(x)
>
> Signed-off-by: Vaishali Thakkar <[email protected]>
Reviewed-by: Andrzej Hajda <[email protected]>

> ---
> drivers/media/i2c/s5k5baf.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/media/i2c/s5k5baf.c b/drivers/media/i2c/s5k5baf.c
> index 297ef04..7a43b55 100644
> --- a/drivers/media/i2c/s5k5baf.c
> +++ b/drivers/media/i2c/s5k5baf.c
> @@ -491,7 +491,7 @@ static void s5k5baf_write_arr_seq(struct s5k5baf *state, u16 addr,
> v4l2_dbg(3, debug, c, "i2c_write_seq(count=%d): %*ph\n", count,
> min(2 * count, 64), seq);
>
> - buf[0] = __constant_cpu_to_be16(REG_CMD_BUF);
> + buf[0] = cpu_to_be16(REG_CMD_BUF);
>
> while (count > 0) {
> int n = min_t(int, count, ARRAY_SIZE(buf) - 1);