ARCv2: SMP: Push IPI_IRQ into IPI provider
[cascardo/linux.git] / arch / arc / include / asm / irq.h
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 #else
20 #define TIMER0_IRQ      16
21 #define TIMER1_IRQ      17
22 #endif
23
24 #include <linux/interrupt.h>
25 #include <asm-generic/irq.h>
26
27 extern void arc_init_IRQ(void);
28 void arc_local_timer_setup(void);
29 void arc_request_percpu_irq(int irq, int cpu,
30                             irqreturn_t (*isr)(int irq, void *dev),
31                             const char *irq_nm, void *percpu_dev);
32
33 #endif