Input: zhenhua - switch to using bitrev8()
Instead of custom zhenhua_bitreverse() let's use generic bitrev8(). Signed-off-by: Yalin Wang <yalin.wang2010@gmail.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
This commit is contained in:
Родитель
95ecdc2549
Коммит
012bd2a533
|
@ -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);
|
||||
|
|
Загрузка…
Ссылка в новой задаче