Explorar o código

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: Uwe Kleine-König <Uwe.Kleine-Koenig@digi.com>
Uwe Kleine-König %!s(int64=18) %!d(string=hai) anos
pai
achega
ab65b87093
Modificáronse 1 ficheiros con 1 adicións e 1 borrados
  1. 1 1
      include/asm-arm/arch-ns9xxx/entry-macro.S

+ 1 - 1
include/asm-arm/arch-ns9xxx/entry-macro.S

@@ -12,13 +12,13 @@
 #include <asm/arch-ns9xxx/regs-sys.h>
 
 		.macro	get_irqnr_preamble, base, tmp
+		ldr	\base, =SYS_ISRADDR
 		.endm
 
 		.macro	arch_ret_to_user, tmp1, tmp2
 		.endm
 
 		.macro	get_irqnr_and_base, irqnr, irqstat, base, tmp
-		ldr	\base, =SYS_ISRADDR
 		ldr	\irqstat, [\base, #(SYS_ISA - SYS_ISRADDR)]
 		cmp	\irqstat, #0
 		ldrne	\irqnr, [\base]