Skip to contentSkip to conversation

mfd: use IRQF_ONESHOT for 88pm860x

PATCH In review Fengguang Wu 4 participants 7 messages Sep 19, 2012 – Sep 20, 2012

Subsystems (3)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 mfd: use IRQF_ONESHOT for 88pm860x

Generated by: scripts/coccinelle/misc/irqf_oneshot.cocci

Make sure threaded IRQs without a primary handler are always request with IRQF_ONESHOT.

---

Please take the patch only if it's a positive warning. Thanks!

 drivers/mfd/88pm860x-core.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
drivers/mfd/88pm860x-core.c +1 -1
@@ -498,7 +498,7 @@ static int __devinit device_irq_init(str
 #endif
 	}
 
-	ret = request_threaded_irq(chip->core_irq, NULL, pm860x_irq, flags,
+	ret = request_threaded_irq(chip->core_irq, NULL, pm860x_irq, flags | IRQF_ONESHOT,
 				   "88pm860x", chip);
 	if (ret) {
 		dev_err(chip->dev, "Failed to request IRQ: %d\n", ret);
#1 lore raw

PATCH 1/1 mfd: use IRQF_ONESHOT for twl6040

Generated by: scripts/coccinelle/misc/irqf_oneshot.cocci

Make sure threaded IRQs without a primary handler are always request with IRQF_ONESHOT.

---

Please take the patch only if it's a positive warning. Thanks!

 drivers/mfd/twl6040-core.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
drivers/mfd/twl6040-core.c +1 -1
@@ -584,7 +584,7 @@ static int __devinit twl6040_probe(struc
 		goto irq_init_err;
 
 	ret = request_threaded_irq(twl6040->irq_base + TWL6040_IRQ_READY,
-				   NULL, twl6040_naudint_handler, 0,
+				   NULL, twl6040_naudint_handler, IRQF_ONESHOT,
 				   "twl6040_irq_ready", twl6040);
 	if (ret) {
 		dev_err(twl6040->dev, "READY IRQ request failed: %d\n",
Acked-by on v1 1/1
#2 lore raw

Re: [PATCH] mfd: use IRQF_ONESHOT for twl6040

Quoted 6 lines · Fengguang Wu

Generated by: scripts/coccinelle/misc/irqf_oneshot.cocci

Make sure threaded IRQs without a primary handler are always request with IRQF_ONESHOT.

Quoted 19 lines

---

Please take the patch only if it's a positive warning. Thanks!

 drivers/mfd/twl6040-core.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
drivers/mfd/twl6040-core.c +1 -1
@@ -584,7 +584,7 @@ static int __devinit twl6040_probe(struc
 		goto irq_init_err;
 
 	ret = request_threaded_irq(twl6040->irq_base + TWL6040_IRQ_READY,
-				   NULL, twl6040_naudint_handler, 0,
+				   NULL, twl6040_naudint_handler, IRQF_ONESHOT,
 				   "twl6040_irq_ready", twl6040);
 	if (ret) {
 		dev_err(twl6040->dev, "READY IRQ request failed: %d\n",
#3 lore raw

PATCH 1/1 mfd: use IRQF_ONESHOT for max8925

In reply to Fengguang Wu

Generated by: scripts/coccinelle/misc/irqf_oneshot.cocci

Make sure threaded IRQs without a primary handler are always request with IRQF_ONESHOT.

---

Please take the patch only if it's a positive warning. Thanks!

 drivers/mfd/max8925-core.c |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
drivers/mfd/max8925-core.c +2 -2
@@ -547,7 +547,7 @@ static int max8925_irq_init(struct max89
 		goto tsc_irq;
 	}
 
-	ret = request_threaded_irq(irq, NULL, max8925_irq, flags,
+	ret = request_threaded_irq(irq, NULL, max8925_irq, flags | IRQF_ONESHOT,
 				   "max8925", chip);
 	if (ret) {
 		dev_err(chip->dev, "Failed to request core IRQ: %d\n", ret);
@@ -565,7 +565,7 @@ tsc_irq:
 	chip->tsc_irq = pdata->tsc_irq;
 
 	ret = request_threaded_irq(chip->tsc_irq, NULL, max8925_tsc_irq,
-				   flags, "max8925-tsc", chip);
+				   flags | IRQF_ONESHOT, "max8925-tsc", chip);
 	if (ret) {
 		dev_err(chip->dev, "Failed to request TSC IRQ: %d\n", ret);
 		chip->tsc_irq = 0;
#4 lore raw
In reply to Fengguang Wu

Hi Fengguang,

Quoted 6 lines · Fengguang Wu

Generated by: scripts/coccinelle/misc/irqf_oneshot.cocci

Make sure threaded IRQs without a primary handler are always request with IRQF_ONESHOT.

All 3 patches applied, thanks.

Cheers,
Samuel.

Signature · 2 lines
Intel Open Source Technology Centre
http://oss.intel.com/
#5 lore raw

PATCH 1/1 mfd: arizona: use IRQF_ONESHOT

In reply to Fengguang Wu

Generated by: scripts/coccinelle/misc/irqf_oneshot.cocci

Make sure threaded IRQs without a primary handler are always request with IRQF_ONESHOT.

---

Please take the patch only if it's a positive warning. Thanks!

 drivers/mfd/arizona-irq.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
drivers/mfd/arizona-irq.c +1 -1
@@ -236,7 +236,7 @@ int arizona_irq_init(struct arizona *ari
 	}
 
 	ret = request_threaded_irq(arizona->irq, NULL, arizona_irq_thread,
-				   flags, "arizona", arizona);
+				   flags | IRQF_ONESHOT, "arizona", arizona);
 
 	if (ret != 0) {
 		dev_err(arizona->dev, "Failed to request IRQ %d: %d\n",
#6 lore raw

Re: [PATCH] mfd: arizona: use IRQF_ONESHOT

Quoted 9 lines · Fengguang Wu

Generated by: scripts/coccinelle/misc/irqf_oneshot.cocci

Make sure threaded IRQs without a primary handler are always request with IRQF_ONESHOT.

---

Please take the patch only if it's a positive warning. Thanks!

It's a false positive - these interrupts can only be generated by a threaded interrupt controller.