/* * include/asm-arm/arch-ebsa285/entry-macro.S * * Low-level IRQ helper macros for footbridge-based platforms * * This file is licensed under the terms of the GNU General Public * License version 2. This program is licensed "as is" without any * warranty of any kind, whether express or implied. */ #include <asm/hardware.h> #include <asm/arch/irqs.h> #include <asm/hardware/dec21285.h> .equ dc21285_high, ARMCSR_BASE & 0xff000000 .equ dc21285_low, ARMCSR_BASE & 0x00ffffff .macro disable_fiq .endm .macro get_irqnr_preamble, base, tmp mov \base, #dc21285_high .if dc21285_low orr \base, \base, #dc21285_low .endif .endm .macro arch_ret_to_user, tmp1, tmp2 .endm .macro get_irqnr_and_base, irqnr, irqstat, base, tmp ldr \irqstat, [\base, #0x180] @ get interrupts mov \irqnr, #IRQ_SDRAMPARITY tst \irqstat, #IRQ_MASK_SDRAMPARITY bne 1001f tst \irqstat, #IRQ_MASK_UART_RX movne \irqnr, #IRQ_CONRX bne 1001f tst \irqstat, #IRQ_MASK_DMA1 movne \irqnr, #IRQ_DMA1 bne 1001f tst \irqstat, #IRQ_MASK_DMA2 movne \irqnr, #IRQ_DMA2 bne 1001f tst \irqstat, #IRQ_MASK_IN0 movne \irqnr, #IRQ_IN0 bne 1001f tst \irqstat, #IRQ_MASK_IN1 movne \irqnr, #IRQ_IN1 bne 1001f tst \irqstat, #IRQ_MASK_IN2 movne \irqnr, #IRQ_IN2 bne 1001f tst \irqstat, #IRQ_MASK_IN3 movne \irqnr, #IRQ_IN3 bne 1001f tst \irqstat, #IRQ_MASK_PCI movne \irqnr, #IRQ_PCI bne 1001f tst \irqstat, #IRQ_MASK_DOORBELLHOST movne \irqnr, #IRQ_DOORBELLHOST bne 1001f tst \irqstat, #IRQ_MASK_I2OINPOST movne \irqnr, #IRQ_I2OINPOST bne 1001f tst \irqstat, #IRQ_MASK_TIMER1 movne \irqnr, #IRQ_TIMER1 bne 1001f tst \irqstat, #IRQ_MASK_TIMER2 movne \irqnr, #IRQ_TIMER2 bne 1001f tst \irqstat, #IRQ_MASK_TIMER3 movne \irqnr, #IRQ_TIMER3 bne 1001f tst \irqstat, #IRQ_MASK_UART_TX movne \irqnr, #IRQ_CONTX bne 1001f tst \irqstat, #IRQ_MASK_PCI_ABORT movne \irqnr, #IRQ_PCI_ABORT bne 1001f tst \irqstat, #IRQ_MASK_PCI_SERR movne \irqnr, #IRQ_PCI_SERR bne 1001f tst \irqstat, #IRQ_MASK_DISCARD_TIMER movne \irqnr, #IRQ_DISCARD_TIMER bne 1001f tst \irqstat, #IRQ_MASK_PCI_DPERR movne \irqnr, #IRQ_PCI_DPERR bne 1001f tst \irqstat, #IRQ_MASK_PCI_PERR movne \irqnr, #IRQ_PCI_PERR 1001: .endm