xref: /linux/arch/um/include/asm/irq.h (revision cbac924200b838cfb8d8b1415113d788089dc50b)
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef __UM_IRQ_H
3 #define __UM_IRQ_H
4 
5 #define TIMER_IRQ		0
6 #define UMN_IRQ			1
7 #define CONSOLE_IRQ		2
8 #define CONSOLE_WRITE_IRQ	3
9 #define UBD_IRQ			4
10 #define UM_ETH_IRQ		5
11 #define SSL_IRQ			6
12 #define SSL_WRITE_IRQ		7
13 #define ACCEPT_IRQ		8
14 #define MCONSOLE_IRQ		9
15 #define WINCH_IRQ		10
16 #define SIGIO_WRITE_IRQ 	11
17 #define TELNETD_IRQ 		12
18 #define XTERM_IRQ 		13
19 #define RANDOM_IRQ 		14
20 
21 #ifdef CONFIG_UML_NET_VECTOR
22 
23 #define VECTOR_BASE_IRQ		(RANDOM_IRQ + 1)
24 #define VECTOR_IRQ_SPACE	8
25 
26 #define UM_FIRST_DYN_IRQ (VECTOR_IRQ_SPACE + VECTOR_BASE_IRQ)
27 
28 #else
29 
30 #define UM_FIRST_DYN_IRQ (RANDOM_IRQ + 1)
31 
32 #endif
33 
34 #define UM_LAST_SIGNAL_IRQ	64
35 /* If we have (simulated) PCI MSI, allow 64 more interrupt numbers for it */
36 #ifdef CONFIG_PCI_MSI
37 #define NR_IRQS			(UM_LAST_SIGNAL_IRQ + 64)
38 #else
39 #define NR_IRQS			UM_LAST_SIGNAL_IRQ
40 #endif /* CONFIG_PCI_MSI */
41 
42 #include <asm-generic/irq.h>
43 #endif
44