pinctrl: amd: Add IRQF_ONESHOT to the interrupt request
On some systems the interrupt is shared between GPIO controller and ACPI SCI. When the interrupt is shared with the ACPI SCI the flags need to be identical. This should fix the GPIO controller failing to work after commit7a36b901a6
("ACPI: OSL: Use a threaded interrupt handler for SCI"). ``` [ 0.417335] genirq: Flags mismatch irq 9. 00000088 (pinctrl_amd) vs. 00002080 (acpi) [ 0.420073] amd_gpio: probe of AMDI0030:00 failed with error -16 ``` Cc: Rafael J. Wysocki <rafael@kernel.org> Reported-by: Christian Heusel <christian@heusel.eu> Closes: https://bugzilla.kernel.org/show_bug.cgi?id=218407 Fixes:7a36b901a6
("ACPI: OSL: Use a threaded interrupt handler for SCI") Link: https://lore.kernel.org/linux-acpi/CAJZ5v0iRqUXeuKmC_+dAJtDBLWQ3x15n4gRH48y7MEaLoXF+UA@mail.gmail.com/T/#mc5506014141b61e472b24e095889535a04458083 Signed-off-by: Mario Limonciello <mario.limonciello@amd.com> Acked-by: Rafael J. Wysocki <rafael@kernel.org> Tested-by: Christian Heusel <christian@heusel.eu> Link: https://lore.kernel.org/r/20240123180818.3994-1-mario.limonciello@amd.com Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
This commit is contained in:
parent
6613476e22
commit
4451e8e841
|
@ -1159,7 +1159,7 @@ static int amd_gpio_probe(struct platform_device *pdev)
|
|||
}
|
||||
|
||||
ret = devm_request_irq(&pdev->dev, gpio_dev->irq, amd_gpio_irq_handler,
|
||||
IRQF_SHARED, KBUILD_MODNAME, gpio_dev);
|
||||
IRQF_SHARED | IRQF_ONESHOT, KBUILD_MODNAME, gpio_dev);
|
||||
if (ret)
|
||||
goto out2;
|
||||
|
||||
|
|
Loading…
Reference in New Issue