summaryrefslogtreecommitdiff
path: root/drivers/media
diff options
context:
space:
mode:
authorFabio Estevam <fabio.estevam@freescale.com>2015-06-01 14:14:07 -0300
committerMauro Carvalho Chehab <mchehab@osg.samsung.com>2015-06-06 07:34:08 -0300
commit4d38cde776185a78b96f5e3a3e653450050600bd (patch)
tree2b2e73f79b7ee9e8ff78f1df3ce41aad2e081356 /drivers/media
parentebbb5637558e6ff087f6f4cc74e1847bb6992f02 (diff)
[media] radio-si470x-i2c: Pass the IRQF_ONESHOT flag
Since commit 1c6c69525b40 ("genirq: Reject bogus threaded irq requests") threaded IRQs without a primary handler need to be requested with IRQF_ONESHOT, otherwise the request will fail. So pass the IRQF_ONESHOT flag in this case. The semantic patch that makes this change is available in scripts/coccinelle/misc/irqf_oneshot.cocci. Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com> Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
Diffstat (limited to 'drivers/media')
-rw-r--r--drivers/media/radio/si470x/radio-si470x-i2c.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/media/radio/si470x/radio-si470x-i2c.c b/drivers/media/radio/si470x/radio-si470x-i2c.c
index 2a497c80c77f..49fe8453e218 100644
--- a/drivers/media/radio/si470x/radio-si470x-i2c.c
+++ b/drivers/media/radio/si470x/radio-si470x-i2c.c
@@ -421,7 +421,8 @@ static int si470x_i2c_probe(struct i2c_client *client,
init_waitqueue_head(&radio->read_queue);
retval = request_threaded_irq(client->irq, NULL, si470x_i2c_interrupt,
- IRQF_TRIGGER_FALLING, DRIVER_NAME, radio);
+ IRQF_TRIGGER_FALLING | IRQF_ONESHOT, DRIVER_NAME,
+ radio);
if (retval) {
dev_err(&client->dev, "Failed to register interrupt\n");
goto err_rds;