ARM: gic-v3: Log the IRQs in RTB before handling an IRQ

Gic-v3 did not log IRQs in RTB like gic-v2. Thus add the LOGK_IRQ
logbefore calling the IRQ handler like gic-v2.

eberman@codeaurora.org: resolved trivial merge conflicts.

Change-Id: I46a5951e733a05b9a7d5d6323568fa800dfb5d62
Signed-off-by: Channagoud Kadabi <ckadabi@codeaurora.org>
Signed-off-by: Elliot Berman <eberman@codeaurora.org>
This commit is contained in:
Channagoud Kadabi 2016-09-19 20:24:21 -07:00 • committed by Elliot Berman
commit 23c2a9291f

View file

@ -18,6 +18,7 @@
#include <linux/percpu.h>
#include <linux/refcount.h>
#include <linux/slab.h>
#include <linux/msm_rtb.h>
#include <linux/irqchip.h>
#include <linux/irqchip/arm-gic-common.h>
@ -493,9 +494,11 @@ static asmlinkage void __exception_irq_entry gic_handle_irq(struct pt_regs *regs
gic_arch_enable_irqs();
}
if (likely(irqnr > 15 && irqnr < 1020) || irqnr >= 8192) {
int err;
uncached_logk(LOGK_IRQ, (void *)(uintptr_t)irqnr);
if (static_branch_likely(&supports_deactivate_key))
gic_write_eoir(irqnr);
else
@ -509,6 +512,7 @@ static asmlinkage void __exception_irq_entry gic_handle_irq(struct pt_regs *regs
return;
}
if (irqnr < 16) {
uncached_logk(LOGK_IRQ, (void *)(uintptr_t)irqnr);
gic_write_eoir(irqnr);
if (static_branch_likely(&supports_deactivate_key))
gic_write_dir(irqnr);