summaryrefslogtreecommitdiffstats
path: root/drivers/media/rc/ene_ir.c
diff options
context:
space:
mode:
authorMaxim Levitsky <maximlevitsky@gmail.com>2013-07-08 01:22:45 +0200
committerMauro Carvalho Chehab <m.chehab@samsung.com>2013-07-29 15:39:40 +0200
commit1de6ebba2c2759da4d8ccb167336a4d136d08471 (patch)
tree6d520cc72d5512d636b834275ddc30d120742602 /drivers/media/rc/ene_ir.c
parent[media] staging: lirc: clean error handling in probe() (diff)
downloadlinux-1de6ebba2c2759da4d8ccb167336a4d136d08471.tar.xz
linux-1de6ebba2c2759da4d8ccb167336a4d136d08471.zip
[media] ene_ir: Fix interrupt line passthrough to hardware
While we can delay IRQ intialization, we need the interrupt number right away because unusually hardware have programable interrupt number, and thus we give it the number that was allocated by BIOS Signed-off-by: Maxim Levitsky <maximlevitsky@gmail.com> Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Diffstat (limited to 'drivers/media/rc/ene_ir.c')
-rw-r--r--drivers/media/rc/ene_ir.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/media/rc/ene_ir.c b/drivers/media/rc/ene_ir.c
index ed184f68c17c..4214311e3901 100644
--- a/drivers/media/rc/ene_ir.c
+++ b/drivers/media/rc/ene_ir.c
@@ -1022,6 +1022,8 @@ static int ene_probe(struct pnp_dev *pnp_dev, const struct pnp_device_id *id)
spin_lock_init(&dev->hw_lock);
dev->hw_io = pnp_port_start(pnp_dev, 0);
+ dev->irq = pnp_irq(pnp_dev, 0);
+
pnp_set_drvdata(pnp_dev, dev);
dev->pnp_dev = pnp_dev;
@@ -1085,7 +1087,6 @@ static int ene_probe(struct pnp_dev *pnp_dev, const struct pnp_device_id *id)
goto exit_unregister_device;
}
- dev->irq = pnp_irq(pnp_dev, 0);
if (request_irq(dev->irq, ene_isr,
IRQF_SHARED, ENE_DRIVER_NAME, (void *)dev)) {
goto exit_release_hw_io;