[PATCH] ARM: 2686/2: AAEC-2000 Core support
[safe/jmp/linux-2.6] / include / asm-arm / arch-aaec2000 / entry-macro.S
1 /*
2  *  linux/include/asm-arm/arch-aaec2000/entry-macro.S
3  *
4  *  Low-level IRQ helper for aaec-2000 based platforms
5  *
6  *  Copyright (c) 2005 Nicolas Bellido Y Ortega
7  *
8  *  This program is free software; you can redistribute it and/or modify
9  *  it under the terms of the GNU General Public License version 2 as
10  *  published by the Free Software Foundation.
11  *
12  */
13
14                 .macro  disable_fiq
15                 .endm
16
17                 .macro  get_irqnr_and_base, irqnr, irqstat, base, tmp
18                 mov     r4, #0xf8000000
19                 add     r4, r4, #0x00000500
20                 mov     \base, r4
21                 ldr     \irqstat, [\base, #0]
22                 cmp     \irqstat, #0
23                 bne     1001f
24                 ldr     \irqnr, =NR_IRQS+1
25                 b       1003f
26 1001:           mov     \irqnr, #0
27 1002:           ands    \tmp, \irqstat, #1
28                 mov     \irqstat, \irqstat, LSR #1
29                 add     \irqnr, \irqnr, #1
30                 beq     1002b
31                 sub     \irqnr, \irqnr, #1
32 1003:
33                 .endm