diff options
author | Mark Rutland <mark.rutland@arm.com> | 2021-10-20 12:33:49 +0200 |
---|---|---|
committer | Mark Rutland <mark.rutland@arm.com> | 2021-10-26 11:13:29 +0200 |
commit | 7ecbc648102f2fa80d2aefb75b7f8b482f1a4483 (patch) | |
tree | 40a3bed2aa7e86a3cc033cc559a0d158469622b9 /arch/riscv/kernel/entry.S | |
parent | irq: openrisc: perform irqentry in entry code (diff) | |
download | linux-7ecbc648102f2fa80d2aefb75b7f8b482f1a4483.tar.xz linux-7ecbc648102f2fa80d2aefb75b7f8b482f1a4483.zip |
irq: riscv: perform irqentry in entry code
In preparation for removing HANDLE_DOMAIN_IRQ_IRQENTRY, have arch/riscv
perform all the irqentry accounting in its entry code. As arch/riscv
uses GENERIC_IRQ_MULTI_HANDLER, we can use generic_handle_arch_irq() to
do so.
Since generic_handle_arch_irq() handles the irq entry and setting the
irq regs, and happens before the irqchip code calls handle_IPI(), we can
remove the redundant irq entry and irq regs manipulation from
handle_IPI().
There should be no functional change as a result of this patch.
Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Reviewed-by: Guo Ren <guoren@kernel.org>
Reviewed-by: Marc Zyngier <maz@kernel.org>
Cc: Albert Ou <aou@eecs.berkeley.edu>
Cc: Palmer Dabbelt <palmer@dabbelt.com>
Cc: Paul Walmsley <paul.walmsley@sifive.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'arch/riscv/kernel/entry.S')
-rw-r--r-- | arch/riscv/kernel/entry.S | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/arch/riscv/kernel/entry.S b/arch/riscv/kernel/entry.S index 98f502654edd..64236f7efde5 100644 --- a/arch/riscv/kernel/entry.S +++ b/arch/riscv/kernel/entry.S @@ -130,8 +130,7 @@ skip_context_tracking: /* Handle interrupts */ move a0, sp /* pt_regs */ - la a1, handle_arch_irq - REG_L a1, (a1) + la a1, generic_handle_arch_irq jr a1 1: /* |