OpenCloudOS-Kernel/drivers/gpu
Marc Zyngier 5f9e93fed4 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
2018-03-14 14:02:05 +01:00
..
drm drm/rockchip: Clear all interrupts before requesting the IRQ 2018-03-14 14:02:05 +01:00
host1x gpu: host1x: Use IOMMU groups 2017-12-21 14:52:36 +01:00
ipu-v3 gpu: ipu-v3: allow to build with COMPILE_TEST 2017-12-19 12:49:11 +01:00
vga vga_switcheroo: Let HDA autosuspend on mux change 2018-03-13 22:58:49 +01:00
Makefile