xref: /openbmc/linux/arch/arc/include/asm/irq.h (revision 2c684d89)
1 /*
2  * Copyright (C) 2004, 2007-2010, 2011-2012 Synopsys, Inc. (www.synopsys.com)
3  *
4  * This program is free software; you can redistribute it and/or modify
5  * it under the terms of the GNU General Public License version 2 as
6  * published by the Free Software Foundation.
7  */
8 
9 #ifndef __ASM_ARC_IRQ_H
10 #define __ASM_ARC_IRQ_H
11 
12 #define NR_CPU_IRQS	32  /* number of interrupt lines of ARC770 CPU */
13 #define NR_IRQS		128 /* allow some CPU external IRQ handling */
14 
15 /* Platform Independent IRQs */
16 #ifdef CONFIG_ISA_ARCOMPACT
17 #define TIMER0_IRQ      3
18 #define TIMER1_IRQ      4
19 #define IPI_IRQ		(NR_CPU_IRQS-1) /* dummy to enable SMP build for up hardware */
20 #else
21 #define TIMER0_IRQ      16
22 #define TIMER1_IRQ      17
23 #define IPI_IRQ         19
24 #endif
25 
26 #include <linux/interrupt.h>
27 #include <asm-generic/irq.h>
28 
29 extern void arc_init_IRQ(void);
30 void arc_local_timer_setup(void);
31 void arc_request_percpu_irq(int irq, int cpu,
32                             irqreturn_t (*isr)(int irq, void *dev),
33                             const char *irq_nm, void *percpu_dev);
34 
35 #endif
36