Commit ab65b870 authored by Uwe Kleine-König's avatar Uwe Kleine-König

ns9xxx: Use get_irqnr_preamble to initialize base register

This patch optimizes the irq handling a bit.  Now the base register is only
computed once if more than one irq is pending.
Signed-off-by: default avatarUwe Kleine-König <Uwe.Kleine-Koenig@digi.com>
parent c1a9e91e
...@@ -12,13 +12,13 @@ ...@@ -12,13 +12,13 @@
#include <asm/arch-ns9xxx/regs-sys.h> #include <asm/arch-ns9xxx/regs-sys.h>
.macro get_irqnr_preamble, base, tmp .macro get_irqnr_preamble, base, tmp
ldr \base, =SYS_ISRADDR
.endm .endm
.macro arch_ret_to_user, tmp1, tmp2 .macro arch_ret_to_user, tmp1, tmp2
.endm .endm
.macro get_irqnr_and_base, irqnr, irqstat, base, tmp .macro get_irqnr_and_base, irqnr, irqstat, base, tmp
ldr \base, =SYS_ISRADDR
ldr \irqstat, [\base, #(SYS_ISA - SYS_ISRADDR)] ldr \irqstat, [\base, #(SYS_ISA - SYS_ISRADDR)]
cmp \irqstat, #0 cmp \irqstat, #0
ldrne \irqnr, [\base] ldrne \irqnr, [\base]
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment