summaryrefslogtreecommitdiffstats
path: root/drivers/media/video/bt8xx
diff options
context:
space:
mode:
authorDavid Härdeman2010-11-20 00:43:17 +0100
committerMauro Carvalho Chehab2010-12-29 11:16:54 +0100
commit3938e0cfeb812e7b66f4e1cb6e34eb2e6864c6a2 (patch)
tree893f95970f5892889f29f21b2cc2d553fa659c96 /drivers/media/video/bt8xx
parent[media] bttv: rename struct card_ir to bttv_ir (diff)
downloadkernel-qcow2-linux-3938e0cfeb812e7b66f4e1cb6e34eb2e6864c6a2.tar.gz
kernel-qcow2-linux-3938e0cfeb812e7b66f4e1cb6e34eb2e6864c6a2.tar.xz
kernel-qcow2-linux-3938e0cfeb812e7b66f4e1cb6e34eb2e6864c6a2.zip
[media] bttv: merge ir decoding timers
Similarly to saa7134, bttv_ir has two timers, only one of which is used at a time and which serve the same purpose. Merge them. Signed-off-by: David Härdeman <david@hardeman.nu> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/video/bt8xx')
-rw-r--r--drivers/media/video/bt8xx/bttv-input.c8
-rw-r--r--drivers/media/video/bt8xx/bttvp.h3
2 files changed, 4 insertions, 7 deletions
diff --git a/drivers/media/video/bt8xx/bttv-input.c b/drivers/media/video/bt8xx/bttv-input.c
index c344b626e113..989c0481e3b1 100644
--- a/drivers/media/video/bt8xx/bttv-input.c
+++ b/drivers/media/video/bt8xx/bttv-input.c
@@ -283,8 +283,7 @@ static int bttv_rc5_irq(struct bttv *btv)
ir->base_time = tv;
ir->last_bit = 0;
- mod_timer(&ir->timer_end,
- current_jiffies + msecs_to_jiffies(30));
+ mod_timer(&ir->timer, current_jiffies + msecs_to_jiffies(30));
}
/* toggle GPIO pin 4 to reset the irq */
@@ -303,8 +302,7 @@ static void bttv_ir_start(struct bttv *btv, struct bttv_ir *ir)
add_timer(&ir->timer);
} else if (ir->rc5_gpio) {
/* set timer_end for code completion */
- setup_timer(&ir->timer_end, bttv_rc5_timer_end,
- (unsigned long)ir);
+ setup_timer(&ir->timer, bttv_rc5_timer_end, (unsigned long)ir);
ir->shift_by = 1;
ir->start = 3;
ir->addr = 0x0;
@@ -322,7 +320,7 @@ static void bttv_ir_stop(struct bttv *btv)
if (btv->remote->rc5_gpio) {
u32 gpio;
- del_timer_sync(&btv->remote->timer_end);
+ del_timer_sync(&btv->remote->timer);
flush_scheduled_work();
gpio = bttv_gpio_read(&btv->c);
diff --git a/drivers/media/video/bt8xx/bttvp.h b/drivers/media/video/bt8xx/bttvp.h
index 3d5b2bc1d376..071232045605 100644
--- a/drivers/media/video/bt8xx/bttvp.h
+++ b/drivers/media/video/bt8xx/bttvp.h
@@ -122,6 +122,7 @@ struct bttv_format {
struct bttv_ir {
struct rc_dev *dev;
+ struct timer_list timer;
char name[32];
char phys[32];
@@ -136,11 +137,9 @@ struct bttv_ir {
int start; // What should RC5_START() be
int addr; // What RC5_ADDR() should be.
int rc5_remote_gap;
- struct timer_list timer;
/* RC5 gpio */
u32 rc5_gpio;
- struct timer_list timer_end; /* timer_end for code completion */
u32 last_bit; /* last raw bit seen */
u32 code; /* raw code under construction */
struct timeval base_time; /* time of last seen code */