Linux 2.6.20.13
[linux/fpc-iii.git] / include / asm-arm / arch-aaec2000 / entry-macro.S
blob1eb3503bd16e1a78303a610eb4723422cde8988a
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 #include <asm/arch/irqs.h>
15                 .macro  disable_fiq
16                 .endm
18                 .macro  get_irqnr_and_base, irqnr, irqstat, base, tmp
19                 mov     r4, #0xf8000000
20                 add     r4, r4, #0x00000500
21                 mov     \base, r4
22                 ldr     \irqstat, [\base, #0]
23                 cmp     \irqstat, #0
24                 bne     1001f
25                 ldr     \irqnr, =NR_IRQS+1
26                 b       1003f
27 1001:           mov     \irqnr, #0
28 1002:           ands    \tmp, \irqstat, #1
29                 mov     \irqstat, \irqstat, LSR #1
30                 add     \irqnr, \irqnr, #1
31                 beq     1002b
32                 sub     \irqnr, \irqnr, #1
33 1003:
34                 .endm