These changes are the raw update to linux-4.4.6-rt14. Kernel sources
[kvmfornfv.git] / kernel / arch / mips / include / asm / mach-jz4740 / irq.h
1 /*
2  *  Copyright (C) 2009-2010, Lars-Peter Clausen <lars@metafoo.de>
3  *  JZ4740 IRQ definitions
4  *
5  *  This program is free software; you can redistribute it and/or modify it
6  *  under  the terms of the GNU General  Public License as published by the
7  *  Free Software Foundation;  either version 2 of the License, or (at your
8  *  option) any later version.
9  *
10  *  You should have received a copy of the GNU General Public License along
11  *  with this program; if not, write to the Free Software Foundation, Inc.,
12  *  675 Mass Ave, Cambridge, MA 02139, USA.
13  *
14  */
15
16 #ifndef __ASM_MACH_JZ4740_IRQ_H__
17 #define __ASM_MACH_JZ4740_IRQ_H__
18
19 #define MIPS_CPU_IRQ_BASE 0
20 #define JZ4740_IRQ_BASE 8
21
22 #ifdef CONFIG_MACH_JZ4740
23 # define NR_INTC_IRQS   32
24 #else
25 # define NR_INTC_IRQS   64
26 #endif
27
28 /* 1st-level interrupts */
29 #define JZ4740_IRQ(x)           (JZ4740_IRQ_BASE + (x))
30 #define JZ4740_IRQ_I2C          JZ4740_IRQ(1)
31 #define JZ4740_IRQ_UHC          JZ4740_IRQ(3)
32 #define JZ4740_IRQ_UART1        JZ4740_IRQ(8)
33 #define JZ4740_IRQ_UART0        JZ4740_IRQ(9)
34 #define JZ4740_IRQ_SADC         JZ4740_IRQ(12)
35 #define JZ4740_IRQ_MSC          JZ4740_IRQ(14)
36 #define JZ4740_IRQ_RTC          JZ4740_IRQ(15)
37 #define JZ4740_IRQ_SSI          JZ4740_IRQ(16)
38 #define JZ4740_IRQ_CIM          JZ4740_IRQ(17)
39 #define JZ4740_IRQ_AIC          JZ4740_IRQ(18)
40 #define JZ4740_IRQ_ETH          JZ4740_IRQ(19)
41 #define JZ4740_IRQ_DMAC         JZ4740_IRQ(20)
42 #define JZ4740_IRQ_TCU2         JZ4740_IRQ(21)
43 #define JZ4740_IRQ_TCU1         JZ4740_IRQ(22)
44 #define JZ4740_IRQ_TCU0         JZ4740_IRQ(23)
45 #define JZ4740_IRQ_UDC          JZ4740_IRQ(24)
46 #define JZ4740_IRQ_GPIO3        JZ4740_IRQ(25)
47 #define JZ4740_IRQ_GPIO2        JZ4740_IRQ(26)
48 #define JZ4740_IRQ_GPIO1        JZ4740_IRQ(27)
49 #define JZ4740_IRQ_GPIO0        JZ4740_IRQ(28)
50 #define JZ4740_IRQ_IPU          JZ4740_IRQ(29)
51 #define JZ4740_IRQ_LCD          JZ4740_IRQ(30)
52
53 #define JZ4780_IRQ_TCU2         JZ4740_IRQ(25)
54
55 /* 2nd-level interrupts */
56 #define JZ4740_IRQ_DMA(x)       (JZ4740_IRQ(NR_INTC_IRQS) + (x))
57
58 #define JZ4740_IRQ_INTC_GPIO(x) (JZ4740_IRQ_GPIO0 - (x))
59 #define JZ4740_IRQ_GPIO(x)      (JZ4740_IRQ(NR_INTC_IRQS + 16) + (x))
60
61 #define JZ4740_IRQ_ADC_BASE     JZ4740_IRQ(NR_INTC_IRQS + 144)
62
63 #define NR_IRQS (JZ4740_IRQ_ADC_BASE + 6)
64
65 #endif