diff options
Diffstat (limited to 'arch/arm/include/asm/hardware/entry-macro-gic.S')
| -rw-r--r-- | arch/arm/include/asm/hardware/entry-macro-gic.S | 19 | 
1 files changed, 2 insertions, 17 deletions
diff --git a/arch/arm/include/asm/hardware/entry-macro-gic.S b/arch/arm/include/asm/hardware/entry-macro-gic.S index c115b82fe80..74ebc803904 100644 --- a/arch/arm/include/asm/hardware/entry-macro-gic.S +++ b/arch/arm/include/asm/hardware/entry-macro-gic.S @@ -22,15 +22,11 @@   * interrupt controller spec.  To wit:   *   * Interrupts 0-15 are IPI - * 16-28 are reserved - * 29-31 are local.  We allow 30 to be used for the watchdog. + * 16-31 are local.  We allow 30 to be used for the watchdog.   * 32-1020 are global   * 1021-1022 are reserved   * 1023 is "spurious" (no interrupt)   * - * For now, we ignore all local interrupts so only return an interrupt if it's - * between 30 and 1020.  The test_for_ipi routine below will pick up on IPIs. - *   * A simple read from the controller will tell us the number of the highest   * priority enabled interrupt.  We then just need to check whether it is in the   * valid range for an IRQ (30-1020 inclusive). @@ -43,7 +39,7 @@  	ldr	\tmp, =1021  	bic     \irqnr, \irqstat, #0x1c00 -	cmp     \irqnr, #29 +	cmp     \irqnr, #15  	cmpcc	\irqnr, \irqnr  	cmpne	\irqnr, \tmp  	cmpcs	\irqnr, \irqnr @@ -62,14 +58,3 @@  	strcc	\irqstat, [\base, #GIC_CPU_EOI]  	cmpcs	\irqnr, \irqnr  	.endm - -/* As above, this assumes that irqstat and base are preserved.. */ - -	.macro test_for_ltirq, irqnr, irqstat, base, tmp -	bic	\irqnr, \irqstat, #0x1c00 -	mov 	\tmp, #0 -	cmp	\irqnr, #29 -	moveq	\tmp, #1 -	streq	\irqstat, [\base, #GIC_CPU_EOI] -	cmp	\tmp, #0 -	.endm  |