[PATCH] wm831x-dcdc: fix coccinelle warnings of missing IRQF_ONESHOT

From: Feng Tang
Date: Thu Aug 09 2012 - 21:03:39 EST


From: Fengguang Wu <fengguang.wu@xxxxxxxxx>

/c/kernel-tests/src/linux/drivers/regulator/wm831x-dcdc.c:829:7-27: ERROR: Threaded IRQ with no primary handler requested without IRQF_ONESHOT
/c/kernel-tests/src/linux/drivers/regulator/wm831x-dcdc.c:695:7-27: ERROR: Threaded IRQ with no primary handler requested without IRQF_ONESHOT
/c/kernel-tests/src/linux/drivers/regulator/wm831x-dcdc.c:533:7-27: ERROR: Threaded IRQ with no primary handler requested without IRQF_ONESHOT
/c/kernel-tests/src/linux/drivers/regulator/wm831x-dcdc.c:542:7-27: ERROR: Threaded IRQ with no primary handler requested without IRQF_ONESHOT

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

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

Signed-off-by: Fengguang Wu <fengguang.wu@xxxxxxxxx>
Signed-off-by: Feng Tang <feng.tang@xxxxxxxxx>
---
drivers/regulator/wm831x-dcdc.c | 8 ++++----
1 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/drivers/regulator/wm831x-dcdc.c b/drivers/regulator/wm831x-dcdc.c
index 7413885..a2a6093 100644
--- a/drivers/regulator/wm831x-dcdc.c
+++ b/drivers/regulator/wm831x-dcdc.c
@@ -532,7 +532,7 @@ static __devinit int wm831x_buckv_probe(struct platform_device *pdev)

irq = wm831x_irq(wm831x, platform_get_irq_byname(pdev, "UV"));
ret = request_threaded_irq(irq, NULL, wm831x_dcdc_uv_irq,
- IRQF_TRIGGER_RISING, dcdc->name, dcdc);
+ IRQF_TRIGGER_RISING | IRQF_ONESHOT, dcdc->name, dcdc);
if (ret != 0) {
dev_err(&pdev->dev, "Failed to request UV IRQ %d: %d\n",
irq, ret);
@@ -541,7 +541,7 @@ static __devinit int wm831x_buckv_probe(struct platform_device *pdev)

irq = wm831x_irq(wm831x, platform_get_irq_byname(pdev, "HC"));
ret = request_threaded_irq(irq, NULL, wm831x_dcdc_oc_irq,
- IRQF_TRIGGER_RISING, dcdc->name, dcdc);
+ IRQF_TRIGGER_RISING | IRQF_ONESHOT, dcdc->name, dcdc);
if (ret != 0) {
dev_err(&pdev->dev, "Failed to request HC IRQ %d: %d\n",
irq, ret);
@@ -694,7 +694,7 @@ static __devinit int wm831x_buckp_probe(struct platform_device *pdev)

irq = wm831x_irq(wm831x, platform_get_irq_byname(pdev, "UV"));
ret = request_threaded_irq(irq, NULL, wm831x_dcdc_uv_irq,
- IRQF_TRIGGER_RISING, dcdc->name, dcdc);
+ IRQF_TRIGGER_RISING | IRQF_ONESHOT, dcdc->name, dcdc);
if (ret != 0) {
dev_err(&pdev->dev, "Failed to request UV IRQ %d: %d\n",
irq, ret);
@@ -828,7 +828,7 @@ static __devinit int wm831x_boostp_probe(struct platform_device *pdev)

irq = wm831x_irq(wm831x, platform_get_irq_byname(pdev, "UV"));
ret = request_threaded_irq(irq, NULL, wm831x_dcdc_uv_irq,
- IRQF_TRIGGER_RISING, dcdc->name,
+ IRQF_TRIGGER_RISING | IRQF_ONESHOT, dcdc->name,
dcdc);
if (ret != 0) {
dev_err(&pdev->dev, "Failed to request UV IRQ %d: %d\n",
--
1.7.1

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/