diff --git a/drivers/media/video/bttv-input.c b/drivers/media/video/bttv-input.c
index fa6ccbc6f26df90d10c8b8b100659fe0a8c4ff8a..12197f1b27578a7957dac30f78613f4f1b81ae55 100644
--- a/drivers/media/video/bttv-input.c
+++ b/drivers/media/video/bttv-input.c
@@ -668,7 +668,7 @@ void bttv_input_fini(struct bttv *btv)
 	if (btv->remote->rc5_gpio) {
 		u32 gpio;
 
-		del_timer(&btv->remote->timer_end);
+		del_timer_sync(&btv->remote->timer_end);
 		flush_scheduled_work();
 
 		gpio = bttv_gpio_read(&btv->c);