aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media/dvb/dm1105/dm1105.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/media/dvb/dm1105/dm1105.c')
-rw-r--r--drivers/media/dvb/dm1105/dm1105.c14
1 files changed, 4 insertions, 10 deletions
diff --git a/drivers/media/dvb/dm1105/dm1105.c b/drivers/media/dvb/dm1105/dm1105.c
index 53e3f2a7d31a..f0f483ac8b89 100644
--- a/drivers/media/dvb/dm1105/dm1105.c
+++ b/drivers/media/dvb/dm1105/dm1105.c
@@ -589,7 +589,7 @@ int __devinit dm1105_ir_init(struct dm1105dvb *dm1105)
589 snprintf(dm1105->ir.input_phys, sizeof(dm1105->ir.input_phys), 589 snprintf(dm1105->ir.input_phys, sizeof(dm1105->ir.input_phys),
590 "pci-%s/ir0", pci_name(dm1105->pdev)); 590 "pci-%s/ir0", pci_name(dm1105->pdev));
591 591
592 err = ir_input_init(input_dev, &dm1105->ir.ir, ir_type, ir_codes); 592 err = ir_input_init(input_dev, &dm1105->ir.ir, ir_type);
593 if (err < 0) { 593 if (err < 0) {
594 input_free_device(input_dev); 594 input_free_device(input_dev);
595 return err; 595 return err;
@@ -611,20 +611,14 @@ int __devinit dm1105_ir_init(struct dm1105dvb *dm1105)
611 611
612 INIT_WORK(&dm1105->ir.work, dm1105_emit_key); 612 INIT_WORK(&dm1105->ir.work, dm1105_emit_key);
613 613
614 err = input_register_device(input_dev); 614 err = ir_input_register(input_dev, ir_codes);
615 if (err) {
616 ir_input_free(input_dev);
617 input_free_device(input_dev);
618 return err;
619 }
620 615
621 return 0; 616 return err;
622} 617}
623 618
624void __devexit dm1105_ir_exit(struct dm1105dvb *dm1105) 619void __devexit dm1105_ir_exit(struct dm1105dvb *dm1105)
625{ 620{
626 ir_input_free(dm1105->ir.input_dev); 621 ir_input_unregister(dm1105->ir.input_dev);
627 input_unregister_device(dm1105->ir.input_dev);
628} 622}
629 623
630static int __devinit dm1105dvb_hw_init(struct dm1105dvb *dm1105dvb) 624static int __devinit dm1105dvb_hw_init(struct dm1105dvb *dm1105dvb)