V4L/DVB: cx23885: Convert cx23885-input to use new in kernel IR pulse decoders
Convert the cx23885 driver to use the new in kernel IR pulse
decoders for the integrated CX2388[578] IR controllers. Rip out a lot
of RC-5 decoding related code in the process and rename some variables
for clarity or to more accurately describe their usage.
Signed-off-by: Andy Walls <awalls@md.metrocast.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
diff --git a/drivers/media/video/cx23885/cx23885.h b/drivers/media/video/cx23885/cx23885.h
index 25167dd..a33f2b7 100644
--- a/drivers/media/video/cx23885/cx23885.h
+++ b/drivers/media/video/cx23885/cx23885.h
@@ -30,7 +30,7 @@
#include <media/tveeprom.h>
#include <media/videobuf-dma-sg.h>
#include <media/videobuf-dvb.h>
-#include <media/ir-common.h>
+#include <media/ir-core.h>
#include "btcx-risc.h"
#include "cx23885-reg.h"
@@ -305,20 +305,13 @@
void *port_priv;
};
-struct cx23885_ir_input {
- struct input_dev *dev;
- struct ir_input_state ir;
+struct cx23885_kernel_ir {
+ struct cx23885_dev *cx;
char *name;
char *phys;
- int start;
- int addr;
- int rc5_key_timeout;
- struct timer_list timer_keyup;
- u32 last_rc5;
- u32 last_bit;
- u32 code;
- int active;
+ struct input_dev *inp_dev;
+ struct ir_dev_props props;
};
struct cx23885_dev {
@@ -380,7 +373,7 @@
struct work_struct ir_tx_work;
unsigned long ir_tx_notifications;
- struct cx23885_ir_input *ir_input;
+ struct cx23885_kernel_ir *kernel_ir;
atomic_t ir_input_stopping;
/* V4l */