Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

Input: twl6040-vibra - pass the IRQF_ONESHOT flag

Since commit 1c6c69525b40eb76de8adf039409722015927dc3 ("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: Dmitry Torokhov <dmitry.torokhov@gmail.com>

authored by

Fabio Estevam and committed by
Dmitry Torokhov
4be01a29 6b36d8f6

+2 -1
+2 -1
drivers/input/misc/twl6040-vibra.c
··· 308 308 mutex_init(&info->mutex); 309 309 310 310 error = devm_request_threaded_irq(&pdev->dev, info->irq, NULL, 311 - twl6040_vib_irq_handler, 0, 311 + twl6040_vib_irq_handler, 312 + IRQF_ONESHOT, 312 313 "twl6040_irq_vib", info); 313 314 if (error) { 314 315 dev_err(info->dev, "VIB IRQ request failed: %d\n", error);