diff options
author | Paul Mundt <lethal@linux-sh.org> | 2010-01-11 23:37:04 -0500 |
---|---|---|
committer | Paul Mundt <lethal@linux-sh.org> | 2010-01-11 23:37:04 -0500 |
commit | 53e6d8e0060fe2bb9b11238f8250fdfbb0589425 (patch) | |
tree | 16b89577dc64437d1d6fbb670c527d1b1cfe3ea2 /arch/sh/include/mach-se | |
parent | 8c0b8139c87cfe8b95c6e763b4ca3190aa9b1ad0 (diff) |
sh: mach-se: Convert SE7343 FPGA to dynamic IRQ allocation.
This gets rid of the arbitrary set of vectors used by the SE7722 FPGA
interrupt controller and switches over to a completely dynamic set.
No assumptions regarding a contiguous range are made, and the platform
resources themselves need to be filled in lazily.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'arch/sh/include/mach-se')
-rw-r--r-- | arch/sh/include/mach-se/mach/se7343.h | 52 |
1 files changed, 22 insertions, 30 deletions
diff --git a/arch/sh/include/mach-se/mach/se7343.h b/arch/sh/include/mach-se/mach/se7343.h index 749914b400fb..8d8170d6cc43 100644 --- a/arch/sh/include/mach-se/mach/se7343.h +++ b/arch/sh/include/mach-se/mach/se7343.h | |||
@@ -94,26 +94,26 @@ | |||
94 | 94 | ||
95 | #define PORT_DRVCR 0xA4050180 | 95 | #define PORT_DRVCR 0xA4050180 |
96 | 96 | ||
97 | #define PORT_PADR 0xA4050120 | 97 | #define PORT_PADR 0xA4050120 |
98 | #define PORT_PBDR 0xA4050122 | 98 | #define PORT_PBDR 0xA4050122 |
99 | #define PORT_PCDR 0xA4050124 | 99 | #define PORT_PCDR 0xA4050124 |
100 | #define PORT_PDDR 0xA4050126 | 100 | #define PORT_PDDR 0xA4050126 |
101 | #define PORT_PEDR 0xA4050128 | 101 | #define PORT_PEDR 0xA4050128 |
102 | #define PORT_PFDR 0xA405012A | 102 | #define PORT_PFDR 0xA405012A |
103 | #define PORT_PGDR 0xA405012C | 103 | #define PORT_PGDR 0xA405012C |
104 | #define PORT_PHDR 0xA405012E | 104 | #define PORT_PHDR 0xA405012E |
105 | #define PORT_PJDR 0xA4050130 | 105 | #define PORT_PJDR 0xA4050130 |
106 | #define PORT_PKDR 0xA4050132 | 106 | #define PORT_PKDR 0xA4050132 |
107 | #define PORT_PLDR 0xA4050134 | 107 | #define PORT_PLDR 0xA4050134 |
108 | #define PORT_PMDR 0xA4050136 | 108 | #define PORT_PMDR 0xA4050136 |
109 | #define PORT_PNDR 0xA4050138 | 109 | #define PORT_PNDR 0xA4050138 |
110 | #define PORT_PQDR 0xA405013A | 110 | #define PORT_PQDR 0xA405013A |
111 | #define PORT_PRDR 0xA405013C | 111 | #define PORT_PRDR 0xA405013C |
112 | #define PORT_PTDR 0xA4050160 | 112 | #define PORT_PTDR 0xA4050160 |
113 | #define PORT_PUDR 0xA4050162 | 113 | #define PORT_PUDR 0xA4050162 |
114 | #define PORT_PVDR 0xA4050164 | 114 | #define PORT_PVDR 0xA4050164 |
115 | #define PORT_PWDR 0xA4050166 | 115 | #define PORT_PWDR 0xA4050166 |
116 | #define PORT_PYDR 0xA4050168 | 116 | #define PORT_PYDR 0xA4050168 |
117 | 117 | ||
118 | #define FPGA_IN 0xb1400000 | 118 | #define FPGA_IN 0xb1400000 |
119 | #define FPGA_OUT 0xb1400002 | 119 | #define FPGA_OUT 0xb1400002 |
@@ -133,18 +133,10 @@ | |||
133 | #define SE7343_FPGA_IRQ_UARTB 11 | 133 | #define SE7343_FPGA_IRQ_UARTB 11 |
134 | 134 | ||
135 | #define SE7343_FPGA_IRQ_NR 12 | 135 | #define SE7343_FPGA_IRQ_NR 12 |
136 | #define SE7343_FPGA_IRQ_BASE 120 | ||
137 | |||
138 | #define MRSHPC_IRQ3 (SE7343_FPGA_IRQ_BASE + SE7343_FPGA_IRQ_MRSHPC3) | ||
139 | #define MRSHPC_IRQ2 (SE7343_FPGA_IRQ_BASE + SE7343_FPGA_IRQ_MRSHPC2) | ||
140 | #define MRSHPC_IRQ1 (SE7343_FPGA_IRQ_BASE + SE7343_FPGA_IRQ_MRSHPC1) | ||
141 | #define MRSHPC_IRQ0 (SE7343_FPGA_IRQ_BASE + SE7343_FPGA_IRQ_MRSHPC0) | ||
142 | #define SMC_IRQ (SE7343_FPGA_IRQ_BASE + SE7343_FPGA_IRQ_SMC) | ||
143 | #define USB_IRQ (SE7343_FPGA_IRQ_BASE + SE7343_FPGA_IRQ_USB) | ||
144 | #define UARTA_IRQ (SE7343_FPGA_IRQ_BASE + SE7343_FPGA_IRQ_UARTA) | ||
145 | #define UARTB_IRQ (SE7343_FPGA_IRQ_BASE + SE7343_FPGA_IRQ_UARTB) | ||
146 | 136 | ||
147 | /* arch/sh/boards/se/7343/irq.c */ | 137 | /* arch/sh/boards/se/7343/irq.c */ |
138 | extern unsigned int se7343_fpga_irq[]; | ||
139 | |||
148 | void init_7343se_IRQ(void); | 140 | void init_7343se_IRQ(void); |
149 | 141 | ||
150 | #endif /* __ASM_SH_HITACHI_SE7343_H */ | 142 | #endif /* __ASM_SH_HITACHI_SE7343_H */ |