projects
/
linux-2.6-microblaze.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
82abef5
)
Input: ps2-gpio - use IRQF_NO_AUTOEN flag in request_irq()
author
Jinjie Ruan
<ruanjinjie@huawei.com>
Thu, 12 Sep 2024 03:30:13 +0000
(11:30 +0800)
committer
Dmitry Torokhov
<dmitry.torokhov@gmail.com>
Fri, 13 Sep 2024 17:20:48 +0000
(10:20 -0700)
disable_irq() after request_irq() still has a time gap in which
interrupts can come. request_irq() with IRQF_NO_AUTOEN flag will
disable IRQ auto-enable when request IRQ.
Fixes:
9ee0a0558819
("Input: PS/2 gpio bit banging driver for serio bus")
Signed-off-by: Jinjie Ruan <ruanjinjie@huawei.com>
Acked-by: Danilo Krummrich <dakr@kernel.org>
Link:
https://lore.kernel.org/r/20240912033013.2610949-1-ruanjinjie@huawei.com
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
drivers/input/serio/ps2-gpio.c
patch
|
blob
|
history
diff --git
a/drivers/input/serio/ps2-gpio.c
b/drivers/input/serio/ps2-gpio.c
index
0c8b390
..
3a43139
100644
(file)
--- a/
drivers/input/serio/ps2-gpio.c
+++ b/
drivers/input/serio/ps2-gpio.c
@@
-429,16
+429,14
@@
static int ps2_gpio_probe(struct platform_device *pdev)
}
error = devm_request_irq(dev, drvdata->irq, ps2_gpio_irq,
- IRQF_NO_THREAD, DRIVER_NAME, drvdata);
+ IRQF_NO_THREAD | IRQF_NO_AUTOEN, DRIVER_NAME,
+ drvdata);
if (error) {
dev_err(dev, "failed to request irq %d: %d\n",
drvdata->irq, error);
goto err_free_serio;
}
- /* Keep irq disabled until serio->open is called. */
- disable_irq(drvdata->irq);
-
serio->id.type = SERIO_8042;
serio->open = ps2_gpio_open;
serio->close = ps2_gpio_close;