diff options
author | Marc Zyngier <marc.zyngier@arm.com> | 2018-02-20 13:01:18 +0000 |
---|---|---|
committer | Heiko Stuebner <heiko@sntech.de> | 2018-03-14 14:02:05 +0100 |
commit | 5f9e93fed4d45e9a8f84728aff1a8f2ab8922902 (patch) | |
tree | e927501cc748b896159558c7be94e56ec56dc630 /arch/m32r/mm | |
parent | ce31ddd5c40c0662ffb9957b868fbd58f6eac5b3 (diff) |
drm/rockchip: Clear all interrupts before requesting the IRQ
Calling request_irq() followed by disable_irq() is usually a bad idea,
specially if the interrupt can be pending, and you're not yet in a
position to handle it.
This is exactly what happens on my kevin system when rebooting in a
second kernel using kexec: Some interrupt is left pending from
the previous kernel, and we take it too early, before disable_irq()
could do anything.
Let's clear the pending interrupts as we initialize the HW, and move
the interrupt request after that point. This ensures that we're in
a sane state when the interrupt is requested.
Cc: stable@vger.kernel.org
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
[adapted to recent rockchip-drm changes]
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Link: https://patchwork.freedesktop.org/patch/msgid/20180220130120.5254-2-marc.zyngier@arm.com
Diffstat (limited to 'arch/m32r/mm')
0 files changed, 0 insertions, 0 deletions