2015-08-11 05:49:40

by yalin wang

[permalink] [raw]
Subject: [PATCH] joystick/zhenhua: remove zhenhua_bitreverse()

This change remove zhenhua_bitreverse() function, use generic
bitrev8() function instead.

Signed-off-by: yalin wang <[email protected]>
---
drivers/input/joystick/zhenhua.c | 13 ++-----------
1 file changed, 2 insertions(+), 11 deletions(-)

diff --git a/drivers/input/joystick/zhenhua.c b/drivers/input/joystick/zhenhua.c
index 30af2e8..4a8258b 100644
--- a/drivers/input/joystick/zhenhua.c
+++ b/drivers/input/joystick/zhenhua.c
@@ -47,6 +47,7 @@
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/slab.h>
+#include <linux/bitrev.h>
#include <linux/input.h>
#include <linux/serio.h>

@@ -72,16 +73,6 @@ struct zhenhua {
char phys[32];
};

-
-/* bits in all incoming bytes needs to be "reversed" */
-static int zhenhua_bitreverse(int x)
-{
- x = ((x & 0xaa) >> 1) | ((x & 0x55) << 1);
- x = ((x & 0xcc) >> 2) | ((x & 0x33) << 2);
- x = ((x & 0xf0) >> 4) | ((x & 0x0f) << 4);
- return x;
-}
-
/*
* zhenhua_process_packet() decodes packets the driver receives from the
* RC transmitter. It updates the data accordingly.
@@ -120,7 +111,7 @@ static irqreturn_t zhenhua_interrupt(struct serio *serio, unsigned char data, un
return IRQ_HANDLED; /* wrong MSB -- ignore this byte */

if (zhenhua->idx < ZHENHUA_MAX_LENGTH)
- zhenhua->data[zhenhua->idx++] = zhenhua_bitreverse(data);
+ zhenhua->data[zhenhua->idx++] = bitrev8(data);

if (zhenhua->idx == ZHENHUA_MAX_LENGTH) {
zhenhua_process_packet(zhenhua);
--
1.9.1


2015-08-21 00:43:14

by Dmitry Torokhov

[permalink] [raw]
Subject: Re: [PATCH] joystick/zhenhua: remove zhenhua_bitreverse()

On Tue, Aug 11, 2015 at 01:49:34PM +0800, yalin wang wrote:
> This change remove zhenhua_bitreverse() function, use generic
> bitrev8() function instead.
>
> Signed-off-by: yalin wang <[email protected]>

Applied, thank you.

> ---
> drivers/input/joystick/zhenhua.c | 13 ++-----------
> 1 file changed, 2 insertions(+), 11 deletions(-)
>
> diff --git a/drivers/input/joystick/zhenhua.c b/drivers/input/joystick/zhenhua.c
> index 30af2e8..4a8258b 100644
> --- a/drivers/input/joystick/zhenhua.c
> +++ b/drivers/input/joystick/zhenhua.c
> @@ -47,6 +47,7 @@
> #include <linux/kernel.h>
> #include <linux/module.h>
> #include <linux/slab.h>
> +#include <linux/bitrev.h>
> #include <linux/input.h>
> #include <linux/serio.h>
>
> @@ -72,16 +73,6 @@ struct zhenhua {
> char phys[32];
> };
>
> -
> -/* bits in all incoming bytes needs to be "reversed" */
> -static int zhenhua_bitreverse(int x)
> -{
> - x = ((x & 0xaa) >> 1) | ((x & 0x55) << 1);
> - x = ((x & 0xcc) >> 2) | ((x & 0x33) << 2);
> - x = ((x & 0xf0) >> 4) | ((x & 0x0f) << 4);
> - return x;
> -}
> -
> /*
> * zhenhua_process_packet() decodes packets the driver receives from the
> * RC transmitter. It updates the data accordingly.
> @@ -120,7 +111,7 @@ static irqreturn_t zhenhua_interrupt(struct serio *serio, unsigned char data, un
> return IRQ_HANDLED; /* wrong MSB -- ignore this byte */
>
> if (zhenhua->idx < ZHENHUA_MAX_LENGTH)
> - zhenhua->data[zhenhua->idx++] = zhenhua_bitreverse(data);
> + zhenhua->data[zhenhua->idx++] = bitrev8(data);
>
> if (zhenhua->idx == ZHENHUA_MAX_LENGTH) {
> zhenhua_process_packet(zhenhua);
> --
> 1.9.1
> --
> To unsubscribe from this list: send the line "unsubscribe linux-input" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html

--
Dmitry