Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux...
[wrt350n-kernel.git] / include / asm-arm / arch-aaec2000 / entry-macro.S
blob83fdf68f6b7c9c216a1d6bbfe6152089fa414785
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_preamble, base, tmp
19                 .endm
21                 .macro  arch_ret_to_user, tmp1, tmp2
22                 .endm
24                 .macro  get_irqnr_and_base, irqnr, irqstat, base, tmp
25                 mov     r4, #0xf8000000
26                 add     r4, r4, #0x00000500
27                 mov     \base, r4
28                 ldr     \irqstat, [\base, #0]
29                 cmp     \irqstat, #0
30                 bne     1001f
31                 ldr     \irqnr, =NR_IRQS+1
32                 b       1003f
33 1001:           mov     \irqnr, #0
34 1002:           ands    \tmp, \irqstat, #1
35                 mov     \irqstat, \irqstat, LSR #1
36                 add     \irqnr, \irqnr, #1
37                 beq     1002b
38                 sub     \irqnr, \irqnr, #1
39 1003:
40                 .endm