convert brcm-2.4 to the new target structure
[openwrt/staging/yousong.git] / target / linux / brcm-2.4 / files / arch / mips / bcm947xx / generic / int-handler.S
1 /*
2 * Generic interrupt handler for Broadcom MIPS boards
3 *
4 * Copyright 2004, Broadcom Corporation
5 * All Rights Reserved.
6 *
7 * THIS SOFTWARE IS OFFERED "AS IS", AND BROADCOM GRANTS NO WARRANTIES OF ANY
8 * KIND, EXPRESS OR IMPLIED, BY STATUTE, COMMUNICATION OR OTHERWISE. BROADCOM
9 * SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
10 * FOR A SPECIFIC PURPOSE OR NONINFRINGEMENT CONCERNING THIS SOFTWARE.
11 *
12 * $Id: int-handler.S,v 1.1 2005/03/16 13:50:00 wbx Exp $
13 */
14
15 #include <linux/config.h>
16
17 #include <asm/asm.h>
18 #include <asm/mipsregs.h>
19 #include <asm/regdef.h>
20 #include <asm/stackframe.h>
21
22 /*
23 * MIPS IRQ Source
24 * -------- ------
25 * 0 Software (ignored)
26 * 1 Software (ignored)
27 * 2 Combined hardware interrupt (hw0)
28 * 3 Hardware
29 * 4 Hardware
30 * 5 Hardware
31 * 6 Hardware
32 * 7 R4k timer
33 */
34
35 .text
36 .set noreorder
37 .set noat
38 .align 5
39 NESTED(brcmIRQ, PT_SIZE, sp)
40 SAVE_ALL
41 CLI
42 .set at
43 .set noreorder
44
45 jal brcm_irq_dispatch
46 move a0, sp
47
48 j ret_from_irq
49 nop
50
51 END(brcmIRQ)