]> git.itanic.dy.fi Git - linux-stable/commitdiff
platform/x86: intel: int0002_vgpio: Pass IRQF_ONESHOT to request_irq()
authorHans de Goede <hdegoede@redhat.com>
Sat, 10 Feb 2024 11:01:49 +0000 (12:01 +0100)
committerHans de Goede <hdegoede@redhat.com>
Mon, 19 Feb 2024 11:41:05 +0000 (12:41 +0100)
Since commit 7a36b901a6eb ("ACPI: OSL: Use a threaded interrupt handler
for SCI") the ACPI OSL code passes IRQF_ONESHOT when requesting the SCI.

Since the INT0002 GPIO is typically shared with the ACPI SCI the INT0002
driver must pass the same flags.

This fixes the INT0002 driver failing to probe due to following error +
as well as removing the backtrace that follows this error:

"genirq: Flags mismatch irq 9. 00000084 (INT0002) vs. 00002080 (acpi)"

Fixes: 7a36b901a6eb ("ACPI: OSL: Use a threaded interrupt handler for SCI")
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Link: https://lore.kernel.org/r/20240210110149.12803-1-hdegoede@redhat.com
drivers/platform/x86/intel/int0002_vgpio.c

index b6708bab7c53d5afae8b4cd5d4fb07450a1c92ed..527d8fbc7cc1108da998e86d0d8dd970d9c5b179 100644 (file)
@@ -196,7 +196,7 @@ static int int0002_probe(struct platform_device *pdev)
         * IRQs into gpiolib.
         */
        ret = devm_request_irq(dev, irq, int0002_irq,
-                              IRQF_SHARED, "INT0002", chip);
+                              IRQF_ONESHOT | IRQF_SHARED, "INT0002", chip);
        if (ret) {
                dev_err(dev, "Error requesting IRQ %d: %d\n", irq, ret);
                return ret;