From: David Härdeman Date: Thu, 15 Apr 2010 21:46:15 +0000 (-0300) Subject: V4L/DVB: ir-core: remove ir-functions usage from dm1105 X-Git-Tag: MMI-PSA29.97-13-9~23880^2~153 X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=15100d891a53ffc717cec21d805f8c49db51fb65;p=GitHub%2FMotorolaMobilityLLC%2Fkernel-slsi.git V4L/DVB: ir-core: remove ir-functions usage from dm1105 Convert drivers/media/dvb/dm1105/dm1105.c to not rely on ir-functions.c. Signed-off-by: David Härdeman Signed-off-by: Mauro Carvalho Chehab --- diff --git a/drivers/media/dvb/dm1105/dm1105.c b/drivers/media/dvb/dm1105/dm1105.c index 9d389bdaca41..b762e561a6d5 100644 --- a/drivers/media/dvb/dm1105/dm1105.c +++ b/drivers/media/dvb/dm1105/dm1105.c @@ -28,7 +28,7 @@ #include #include #include -#include +#include #include "demux.h" #include "dmxdev.h" @@ -267,7 +267,6 @@ static void dm1105_card_list(struct pci_dev *pci) /* infrared remote control */ struct infrared { struct input_dev *input_dev; - struct ir_input_state ir; char input_phys[32]; struct work_struct work; u32 ir_command; @@ -533,8 +532,7 @@ static void dm1105_emit_key(struct work_struct *work) data = (ircom >> 8) & 0x7f; - ir_input_keydown(ir->input_dev, &ir->ir, data); - ir_input_nokey(ir->input_dev, &ir->ir); + ir_keydown(ir->input_dev, data, 0); } /* work handler */ @@ -597,7 +595,6 @@ int __devinit dm1105_ir_init(struct dm1105_dev *dm1105) { struct input_dev *input_dev; char *ir_codes = NULL; - u64 ir_type = IR_TYPE_OTHER; int err = -ENOMEM; input_dev = input_allocate_device(); @@ -608,12 +605,6 @@ int __devinit dm1105_ir_init(struct dm1105_dev *dm1105) snprintf(dm1105->ir.input_phys, sizeof(dm1105->ir.input_phys), "pci-%s/ir0", pci_name(dm1105->pdev)); - err = ir_input_init(input_dev, &dm1105->ir.ir, ir_type); - if (err < 0) { - input_free_device(input_dev); - return err; - } - input_dev->name = "DVB on-card IR receiver"; input_dev->phys = dm1105->ir.input_phys; input_dev->id.bustype = BUS_PCI; @@ -631,8 +622,12 @@ int __devinit dm1105_ir_init(struct dm1105_dev *dm1105) INIT_WORK(&dm1105->ir.work, dm1105_emit_key); err = ir_input_register(input_dev, ir_codes, NULL, MODULE_NAME); + if (err < 0) { + input_free_device(input_dev); + return err; + } - return err; + return 0; } void __devexit dm1105_ir_exit(struct dm1105_dev *dm1105)