diff options
| author | Sebastian Andrzej Siewior <bigeasy@linutronix.de> | 2026-01-28 10:55:31 +0100 |
|---|---|---|
| committer | Thomas Gleixner <tglx@kernel.org> | 2026-02-01 17:37:16 +0100 |
| commit | a7fb84ea70aae9a92a842932206e70ed1b3c7007 (patch) | |
| tree | c004459ab3da6c9715e56866e3a6a9b9475a755a /drivers/usb | |
| parent | 5c858d6c66304b4c7579582ec5235f02d43578ea (diff) | |
usb: typec: fusb302: Remove IRQF_ONESHOT
Passing IRQF_ONESHOT ensures that the interrupt source is masked until
the secondary (threaded) handler is done. If only a primary handler is
used then the flag makes no sense because the interrupt can not fire
(again) while its handler is running.
The flag also prevents force-threading of the primary handler and the
irq-core will warn about this.
Remove IRQF_ONESHOT from irqflags.
Fixes: 309b6341d5570 ("usb: typec: fusb302: Revert incorrect threaded irq fix")
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Signed-off-by: Thomas Gleixner <tglx@kernel.org>
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Acked-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Link: https://patch.msgid.link/20260128095540.863589-12-bigeasy@linutronix.de
Diffstat (limited to 'drivers/usb')
| -rw-r--r-- | drivers/usb/typec/tcpm/fusb302.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/drivers/usb/typec/tcpm/fusb302.c b/drivers/usb/typec/tcpm/fusb302.c index 870a71f953f6..19ff8217818e 100644 --- a/drivers/usb/typec/tcpm/fusb302.c +++ b/drivers/usb/typec/tcpm/fusb302.c @@ -1756,8 +1756,7 @@ static int fusb302_probe(struct i2c_client *client) } ret = request_irq(chip->gpio_int_n_irq, fusb302_irq_intn, - IRQF_ONESHOT | IRQF_TRIGGER_LOW, - "fsc_interrupt_int_n", chip); + IRQF_TRIGGER_LOW, "fsc_interrupt_int_n", chip); if (ret < 0) { dev_err(dev, "cannot request IRQ for GPIO Int_N, ret=%d", ret); goto tcpm_unregister_port; |
