diff --git a/[refs] b/[refs] index ccde81750d7d..cac744fb3c77 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 1d968cdaaec2ea994b2656c00b5a4f10d4159fe8 +refs/heads/master: 9b4539bebb86310afdc5563653ec4475ae110088 diff --git a/trunk/drivers/media/usb/em28xx/em28xx-input.c b/trunk/drivers/media/usb/em28xx/em28xx-input.c index 63b97285ddbd..1bef990b3f18 100644 --- a/trunk/drivers/media/usb/em28xx/em28xx-input.c +++ b/trunk/drivers/media/usb/em28xx/em28xx-input.c @@ -338,19 +338,14 @@ static void em28xx_ir_handle_key(struct em28xx_IR *ir) } } -static void em28xx_i2c_ir_work(struct work_struct *work) -{ - struct em28xx_IR *ir = container_of(work, struct em28xx_IR, work.work); - - em28xx_i2c_ir_handle_key(ir); - schedule_delayed_work(&ir->work, msecs_to_jiffies(ir->polling)); -} - static void em28xx_ir_work(struct work_struct *work) { struct em28xx_IR *ir = container_of(work, struct em28xx_IR, work.work); - em28xx_ir_handle_key(ir); + if (ir->i2c_dev_addr) /* external i2c device */ + em28xx_i2c_ir_handle_key(ir); + else /* internal device */ + em28xx_ir_handle_key(ir); schedule_delayed_work(&ir->work, msecs_to_jiffies(ir->polling)); } @@ -358,10 +353,7 @@ static int em28xx_ir_start(struct rc_dev *rc) { struct em28xx_IR *ir = rc->priv; - if (ir->i2c_dev_addr) /* external i2c device */ - INIT_DELAYED_WORK(&ir->work, em28xx_i2c_ir_work); - else /* internal device */ - INIT_DELAYED_WORK(&ir->work, em28xx_ir_work); + INIT_DELAYED_WORK(&ir->work, em28xx_ir_work); schedule_delayed_work(&ir->work, 0); return 0;