| 1 | /* SPDX-License-Identifier: GPL-2.0-only */ |
| 2 | /* |
| 3 | * Copyright (C) 2004, 2007-2010, 2011-2012 Synopsys, Inc. (www.synopsys.com) |
| 4 | */ |
| 5 | |
| 6 | #ifndef __ASM_ARC_IRQ_H |
| 7 | #define __ASM_ARC_IRQ_H |
| 8 | |
| 9 | /* |
| 10 | * ARCv2 can support 240 interrupts in the core interrupts controllers and |
| 11 | * 128 interrupts in IDU. Thus 512 virtual IRQs must be enough for most |
| 12 | * configurations of boards. |
| 13 | * This doesn't affect ARCompact, but we change it to same value |
| 14 | */ |
| 15 | #define NR_IRQS 512 |
| 16 | |
| 17 | /* Platform Independent IRQs */ |
| 18 | #ifdef CONFIG_ISA_ARCV2 |
| 19 | #define IPI_IRQ 19 |
| 20 | #define SOFTIRQ_IRQ 21 |
| 21 | #define FIRST_EXT_IRQ 24 |
| 22 | #endif |
| 23 | |
| 24 | #include <linux/interrupt.h> |
| 25 | #include <asm-generic/irq.h> |
| 26 | |
| 27 | extern void arc_init_IRQ(void); |
| 28 | extern void arch_do_IRQ(unsigned int, struct pt_regs *); |
| 29 | |
| 30 | #endif |