diff options
author | Thomas Gleixner <tglx@linutronix.de> | 2017-05-24 00:23:32 +0300 |
---|---|---|
committer | Linus Walleij <linus.walleij@linaro.org> | 2017-06-09 11:51:54 +0300 |
commit | ba714a9c1dea85e0bf2899d02dfeb9c70040427c (patch) | |
tree | 5088269acaa754db8659f7e6d91cf71ea47a9c77 /drivers/pinctrl/pinctrl-single.c | |
parent | 3c2993b8c6143d8a5793746a54eba8f86f95240f (diff) | |
download | linux-ba714a9c1dea85e0bf2899d02dfeb9c70040427c.tar.xz |
pinctrl/amd: Use regular interrupt instead of chained
The AMD pinctrl driver uses a chained interrupt to demultiplex the GPIO
interrupts. Kevin Vandeventer reported, that his new AMD Ryzen locks up
hard on boot when the AMD pinctrl driver is initialized. The reason is an
interrupt storm. It's not clear whether that's caused by hardware or
firmware or both.
Using chained interrupts on X86 is a dangerous endavour. If a system is
misconfigured or the hardware buggy there is no safety net to catch an
interrupt storm.
Convert the driver to use a regular interrupt for the demultiplex
handler. This allows the interrupt storm detector to catch the malfunction
and lets the system boot up.
This should be backported to stable because it's likely that more users run
into this problem as the AMD Ryzen machines are spreading.
Reported-by: Kevin Vandeventer
Link: https://bugzilla.suse.com/show_bug.cgi?id=1034261
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Diffstat (limited to 'drivers/pinctrl/pinctrl-single.c')
0 files changed, 0 insertions, 0 deletions