summaryrefslogtreecommitdiff
path: root/arch
diff options
context:
space:
mode:
authorBrian Norris <computersforpeace@gmail.com>2015-07-22 16:21:40 -0700
committerThomas Gleixner <tglx@linutronix.de>2015-07-27 08:09:38 +0200
commitfd537766715e9b6bf7ff07abb22f4817201433db (patch)
tree963ba098d42265895cf79ab168067e4f5030a336 /arch
parentbe9b22b6a7e6725162c64155a08b71f0654b675c (diff)
irqchip/bcm7120-l2: Perform suspend/resume even without installed child IRQs
Make use of the new irq_chip_generic suspend/resume callbacks. This is required because if there are no installed child IRQs for this chip, the irq_chip::irq_{suspend,resume} functions will not be called. However, we still need to save/restore the forwarding mask, to enable the top-level GIC interrupt; otherwise, we lose UART output after S3 resume. In addition to refactoring the callbacks, we have to self-initialize the mask cache, since the genirq core also doesn't initialize this until the first child IRQ is installed. The original problem report is described in extra detail here: http://lkml.kernel.org/g/20150619224123.GL4917@ld-irv-0074 Signed-off-by: Brian Norris <computersforpeace@gmail.com> Tested-by: Florian Fainelli <f.fainelli@gmail.com> Cc: Gregory Fong <gregory.0xf0@gmail.com> Cc: bcm-kernel-feedback-list@broadcom.com Cc: linux-mips@linux-mips.org Cc: Kevin Cernekee <cernekee@chromium.org> Cc: Jason Cooper <jason@lakedaemon.net> Link: http://lkml.kernel.org/r/1437607300-40858-2-git-send-email-computersforpeace@gmail.com Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'arch')
0 files changed, 0 insertions, 0 deletions