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

Configure Feed

Select the types of activity you want to include in your feed.

char: tpm: cr50: 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.

Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Signed-off-by: Thomas Gleixner <tglx@kernel.org>
Reviewed-by: Jarkko Sakkinen <jarkko@kernel.org>
Link: https://patch.msgid.link/20260128095540.863589-10-bigeasy@linutronix.de

authored by

Sebastian Andrzej Siewior and committed by
Thomas Gleixner
1affd29f a82bf786

+2 -3
+1 -2
drivers/char/tpm/tpm_tis_i2c_cr50.c
··· 749 749 750 750 if (client->irq > 0) { 751 751 rc = devm_request_irq(dev, client->irq, tpm_cr50_i2c_int_handler, 752 - IRQF_TRIGGER_FALLING | IRQF_ONESHOT | 753 - IRQF_NO_AUTOEN, 752 + IRQF_TRIGGER_FALLING | IRQF_NO_AUTOEN, 754 753 dev->driver->name, chip); 755 754 if (rc < 0) { 756 755 dev_err(dev, "Failed to probe IRQ %d\n", client->irq);
+1 -1
drivers/char/tpm/tpm_tis_spi_cr50.c
··· 287 287 if (spi->irq > 0) { 288 288 ret = devm_request_irq(&spi->dev, spi->irq, 289 289 cr50_spi_irq_handler, 290 - IRQF_TRIGGER_RISING | IRQF_ONESHOT, 290 + IRQF_TRIGGER_RISING, 291 291 "cr50_spi", cr50_phy); 292 292 if (ret < 0) { 293 293 if (ret == -EPROBE_DEFER)