summaryrefslogtreecommitdiffstats
path: root/drivers/media/video/cx23885/cx23885-input.c
diff options
context:
space:
mode:
authorMauro Carvalho Chehab2009-12-11 15:20:59 +0100
committerMauro Carvalho Chehab2009-12-16 03:18:45 +0100
commit579e7d60ba0035228aadad69eb2ffeb138c51311 (patch)
tree0872698fe02dba92cead8e9d9a7ca7e7f38e1291 /drivers/media/video/cx23885/cx23885-input.c
parentV4L/DVB (13616): IR: rename ir_input_free as ir_input_unregister (diff)
downloadkernel-qcow2-linux-579e7d60ba0035228aadad69eb2ffeb138c51311.tar.gz
kernel-qcow2-linux-579e7d60ba0035228aadad69eb2ffeb138c51311.tar.xz
kernel-qcow2-linux-579e7d60ba0035228aadad69eb2ffeb138c51311.zip
V4L/DVB (13617): ir: move input_register_device() to happen inside ir_input_register()
We'll need to register a sysfs class for the IR devices. As such, the better is to have the input_register_device()/input_unregister_device() inside the ir register/unregister functions. Also, solves a naming problem with V4L ir_input_init() function, that were, in fact, registering a device. While here, do a few cleanups at budget-ci IR logic. Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/video/cx23885/cx23885-input.c')
-rw-r--r--drivers/media/video/cx23885/cx23885-input.c7
1 files changed, 2 insertions, 5 deletions
diff --git a/drivers/media/video/cx23885/cx23885-input.c b/drivers/media/video/cx23885/cx23885-input.c
index 2a5e4d959e8e..768eec92ccf9 100644
--- a/drivers/media/video/cx23885/cx23885-input.c
+++ b/drivers/media/video/cx23885/cx23885-input.c
@@ -377,7 +377,7 @@ int cx23885_input_init(struct cx23885_dev *dev)
cx23885_boards[dev->board].name);
snprintf(ir->phys, sizeof(ir->phys), "pci-%s/ir0", pci_name(dev->pci));
- ret = ir_input_init(input_dev, &ir->ir, ir_type, ir_codes);
+ ret = ir_input_init(input_dev, &ir->ir, ir_type);
if (ret < 0)
goto err_out_free;
@@ -397,7 +397,7 @@ int cx23885_input_init(struct cx23885_dev *dev)
dev->ir_input = ir;
cx23885_input_ir_start(dev);
- ret = input_register_device(ir->dev);
+ ret = ir_input_register(ir->dev, ir_codes);
if (ret)
goto err_out_stop;
@@ -407,8 +407,6 @@ err_out_stop:
cx23885_input_ir_stop(dev);
dev->ir_input = NULL;
err_out_free:
- ir_input_unregister(input_dev);
- input_free_device(input_dev);
kfree(ir);
return ret;
}
@@ -421,7 +419,6 @@ void cx23885_input_fini(struct cx23885_dev *dev)
if (dev->ir_input == NULL)
return;
ir_input_unregister(dev->ir_input->dev);
- input_unregister_device(dev->ir_input->dev);
kfree(dev->ir_input);
dev->ir_input = NULL;
}