diff options
author | Alexander Shiyan <shc_work@mail.ru> | 2012-11-17 08:57:13 -0500 |
---|---|---|
committer | Olof Johansson <olof@lixom.net> | 2012-11-21 12:57:41 -0500 |
commit | 0d8be81c0e15ad8ebdd35bbbeb35b03f85a4b558 (patch) | |
tree | a4bab572e19ef5f70e9aa0564026e5307be524d2 /arch/arm/mach-clps711x | |
parent | 86449336dd3c6e0edf97b971db2daa88917c1d7e (diff) |
ARM: clps711x: Implement usage "SPARSE_IRQ" kernel option for a platform
Signed-off-by: Alexander Shiyan <shc_work@mail.ru>
Signed-off-by: Olof Johansson <olof@lixom.net>
Diffstat (limited to 'arch/arm/mach-clps711x')
-rw-r--r-- | arch/arm/mach-clps711x/autcpu12.c | 1 | ||||
-rw-r--r-- | arch/arm/mach-clps711x/cdb89712.c | 1 | ||||
-rw-r--r-- | arch/arm/mach-clps711x/clep7312.c | 1 | ||||
-rw-r--r-- | arch/arm/mach-clps711x/common.h | 1 | ||||
-rw-r--r-- | arch/arm/mach-clps711x/edb7211.c | 1 | ||||
-rw-r--r-- | arch/arm/mach-clps711x/fortunet.c | 1 | ||||
-rw-r--r-- | arch/arm/mach-clps711x/include/mach/clps711x.h | 21 | ||||
-rw-r--r-- | arch/arm/mach-clps711x/include/mach/irqs.h | 46 | ||||
-rw-r--r-- | arch/arm/mach-clps711x/p720t.c | 1 |
9 files changed, 28 insertions, 46 deletions
diff --git a/arch/arm/mach-clps711x/autcpu12.c b/arch/arm/mach-clps711x/autcpu12.c index c20043ba2076..b90a31659de4 100644 --- a/arch/arm/mach-clps711x/autcpu12.c +++ b/arch/arm/mach-clps711x/autcpu12.c | |||
@@ -70,6 +70,7 @@ static void __init autcpu12_init(void) | |||
70 | MACHINE_START(AUTCPU12, "autronix autcpu12") | 70 | MACHINE_START(AUTCPU12, "autronix autcpu12") |
71 | /* Maintainer: Thomas Gleixner */ | 71 | /* Maintainer: Thomas Gleixner */ |
72 | .atag_offset = 0x20000, | 72 | .atag_offset = 0x20000, |
73 | .nr_irqs = CLPS711X_NR_IRQS, | ||
73 | .map_io = clps711x_map_io, | 74 | .map_io = clps711x_map_io, |
74 | .init_irq = clps711x_init_irq, | 75 | .init_irq = clps711x_init_irq, |
75 | .timer = &clps711x_timer, | 76 | .timer = &clps711x_timer, |
diff --git a/arch/arm/mach-clps711x/cdb89712.c b/arch/arm/mach-clps711x/cdb89712.c index 24f573b5715d..133794c4b654 100644 --- a/arch/arm/mach-clps711x/cdb89712.c +++ b/arch/arm/mach-clps711x/cdb89712.c | |||
@@ -137,6 +137,7 @@ static void __init cdb89712_init(void) | |||
137 | MACHINE_START(CDB89712, "Cirrus-CDB89712") | 137 | MACHINE_START(CDB89712, "Cirrus-CDB89712") |
138 | /* Maintainer: Ray Lehtiniemi */ | 138 | /* Maintainer: Ray Lehtiniemi */ |
139 | .atag_offset = 0x100, | 139 | .atag_offset = 0x100, |
140 | .nr_irqs = CLPS711X_NR_IRQS, | ||
140 | .map_io = clps711x_map_io, | 141 | .map_io = clps711x_map_io, |
141 | .init_irq = clps711x_init_irq, | 142 | .init_irq = clps711x_init_irq, |
142 | .timer = &clps711x_timer, | 143 | .timer = &clps711x_timer, |
diff --git a/arch/arm/mach-clps711x/clep7312.c b/arch/arm/mach-clps711x/clep7312.c index dbc7842639dc..be776c5092dd 100644 --- a/arch/arm/mach-clps711x/clep7312.c +++ b/arch/arm/mach-clps711x/clep7312.c | |||
@@ -37,6 +37,7 @@ fixup_clep7312(struct tag *tags, char **cmdline, struct meminfo *mi) | |||
37 | MACHINE_START(CLEP7212, "Cirrus Logic 7212/7312") | 37 | MACHINE_START(CLEP7212, "Cirrus Logic 7212/7312") |
38 | /* Maintainer: Nobody */ | 38 | /* Maintainer: Nobody */ |
39 | .atag_offset = 0x0100, | 39 | .atag_offset = 0x0100, |
40 | .nr_irqs = CLPS711X_NR_IRQS, | ||
40 | .fixup = fixup_clep7312, | 41 | .fixup = fixup_clep7312, |
41 | .map_io = clps711x_map_io, | 42 | .map_io = clps711x_map_io, |
42 | .init_irq = clps711x_init_irq, | 43 | .init_irq = clps711x_init_irq, |
diff --git a/arch/arm/mach-clps711x/common.h b/arch/arm/mach-clps711x/common.h index dc60caea3278..28b1701b7993 100644 --- a/arch/arm/mach-clps711x/common.h +++ b/arch/arm/mach-clps711x/common.h | |||
@@ -4,6 +4,7 @@ | |||
4 | * Common bits. | 4 | * Common bits. |
5 | */ | 5 | */ |
6 | 6 | ||
7 | #define CLPS711X_NR_IRQS (30) | ||
7 | #define CLPS711X_NR_GPIO (4 * 8 + 3) | 8 | #define CLPS711X_NR_GPIO (4 * 8 + 3) |
8 | #define CLPS711X_GPIO(prt, bit) ((prt) * 8 + (bit)) | 9 | #define CLPS711X_GPIO(prt, bit) ((prt) * 8 + (bit)) |
9 | 10 | ||
diff --git a/arch/arm/mach-clps711x/edb7211.c b/arch/arm/mach-clps711x/edb7211.c index 59dec3bd0705..7b161dd40e8d 100644 --- a/arch/arm/mach-clps711x/edb7211.c +++ b/arch/arm/mach-clps711x/edb7211.c | |||
@@ -91,6 +91,7 @@ static void __init edb7211_init(void) | |||
91 | MACHINE_START(EDB7211, "CL-EDB7211 (EP7211 eval board)") | 91 | MACHINE_START(EDB7211, "CL-EDB7211 (EP7211 eval board)") |
92 | /* Maintainer: Jon McClintock */ | 92 | /* Maintainer: Jon McClintock */ |
93 | .atag_offset = VIDEORAM_SIZE + 0x100, | 93 | .atag_offset = VIDEORAM_SIZE + 0x100, |
94 | .nr_irqs = CLPS711X_NR_IRQS, | ||
94 | .fixup = fixup_edb7211, | 95 | .fixup = fixup_edb7211, |
95 | .reserve = edb7211_reserve, | 96 | .reserve = edb7211_reserve, |
96 | .map_io = edb7211_map_io, | 97 | .map_io = edb7211_map_io, |
diff --git a/arch/arm/mach-clps711x/fortunet.c b/arch/arm/mach-clps711x/fortunet.c index 3a3f0b702cb4..a5c08162bff9 100644 --- a/arch/arm/mach-clps711x/fortunet.c +++ b/arch/arm/mach-clps711x/fortunet.c | |||
@@ -74,6 +74,7 @@ fortunet_fixup(struct tag *tags, char **cmdline, struct meminfo *mi) | |||
74 | 74 | ||
75 | MACHINE_START(FORTUNET, "ARM-FortuNet") | 75 | MACHINE_START(FORTUNET, "ARM-FortuNet") |
76 | /* Maintainer: FortuNet Inc. */ | 76 | /* Maintainer: FortuNet Inc. */ |
77 | .nr_irqs = CLPS711X_NR_IRQS, | ||
77 | .fixup = fortunet_fixup, | 78 | .fixup = fortunet_fixup, |
78 | .map_io = clps711x_map_io, | 79 | .map_io = clps711x_map_io, |
79 | .init_irq = clps711x_init_irq, | 80 | .init_irq = clps711x_init_irq, |
diff --git a/arch/arm/mach-clps711x/include/mach/clps711x.h b/arch/arm/mach-clps711x/include/mach/clps711x.h index aee352c00a1f..1f4728d414d7 100644 --- a/arch/arm/mach-clps711x/include/mach/clps711x.h +++ b/arch/arm/mach-clps711x/include/mach/clps711x.h | |||
@@ -277,4 +277,25 @@ | |||
277 | #define MEMCFG_WAITSTATE_2_0 (14 << 2) | 277 | #define MEMCFG_WAITSTATE_2_0 (14 << 2) |
278 | #define MEMCFG_WAITSTATE_1_0 (15 << 2) | 278 | #define MEMCFG_WAITSTATE_1_0 (15 << 2) |
279 | 279 | ||
280 | /* INTSR1 Interrupts */ | ||
281 | #define IRQ_CSINT (4) | ||
282 | #define IRQ_EINT1 (5) | ||
283 | #define IRQ_EINT2 (6) | ||
284 | #define IRQ_EINT3 (7) | ||
285 | #define IRQ_TC1OI (8) | ||
286 | #define IRQ_TC2OI (9) | ||
287 | #define IRQ_RTCMI (10) | ||
288 | #define IRQ_TINT (11) | ||
289 | #define IRQ_UTXINT1 (12) | ||
290 | #define IRQ_URXINT1 (13) | ||
291 | #define IRQ_UMSINT (14) | ||
292 | #define IRQ_SSEOTI (15) | ||
293 | |||
294 | /* INTSR2 Interrupts */ | ||
295 | #define IRQ_KBDINT (16 + 0) | ||
296 | #define IRQ_SS2RX (16 + 1) | ||
297 | #define IRQ_SS2TX (16 + 2) | ||
298 | #define IRQ_UTXINT2 (16 + 12) | ||
299 | #define IRQ_URXINT2 (16 + 13) | ||
300 | |||
280 | #endif /* __MACH_CLPS711X_H */ | 301 | #endif /* __MACH_CLPS711X_H */ |
diff --git a/arch/arm/mach-clps711x/include/mach/irqs.h b/arch/arm/mach-clps711x/include/mach/irqs.h deleted file mode 100644 index 1ea56db2fd5f..000000000000 --- a/arch/arm/mach-clps711x/include/mach/irqs.h +++ /dev/null | |||
@@ -1,46 +0,0 @@ | |||
1 | /* | ||
2 | * arch/arm/mach-clps711x/include/mach/irqs.h | ||
3 | * | ||
4 | * Copyright (C) 2000 Deep Blue Solutions Ltd. | ||
5 | * | ||
6 | * This program is free software; you can redistribute it and/or modify | ||
7 | * it under the terms of the GNU General Public License as published by | ||
8 | * the Free Software Foundation; either version 2 of the License, or | ||
9 | * (at your option) any later version. | ||
10 | * | ||
11 | * This program is distributed in the hope that it will be useful, | ||
12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
14 | * GNU General Public License for more details. | ||
15 | * | ||
16 | * You should have received a copy of the GNU General Public License | ||
17 | * along with this program; if not, write to the Free Software | ||
18 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | ||
19 | */ | ||
20 | |||
21 | /* | ||
22 | * Interrupts from INTSR1 | ||
23 | */ | ||
24 | #define IRQ_CSINT 4 | ||
25 | #define IRQ_EINT1 5 | ||
26 | #define IRQ_EINT2 6 | ||
27 | #define IRQ_EINT3 7 | ||
28 | #define IRQ_TC1OI 8 | ||
29 | #define IRQ_TC2OI 9 | ||
30 | #define IRQ_RTCMI 10 | ||
31 | #define IRQ_TINT 11 | ||
32 | #define IRQ_UTXINT1 12 | ||
33 | #define IRQ_URXINT1 13 | ||
34 | #define IRQ_UMSINT 14 | ||
35 | #define IRQ_SSEOTI 15 | ||
36 | |||
37 | /* | ||
38 | * Interrupts from INTSR2 | ||
39 | */ | ||
40 | #define IRQ_KBDINT (16+0) /* bit 0 */ | ||
41 | #define IRQ_SS2RX (16+1) /* bit 1 */ | ||
42 | #define IRQ_SS2TX (16+2) /* bit 2 */ | ||
43 | #define IRQ_UTXINT2 (16+12) /* bit 12 */ | ||
44 | #define IRQ_URXINT2 (16+13) /* bit 13 */ | ||
45 | |||
46 | #define NR_IRQS 30 | ||
diff --git a/arch/arm/mach-clps711x/p720t.c b/arch/arm/mach-clps711x/p720t.c index d95cb8ace251..fbe75527d60b 100644 --- a/arch/arm/mach-clps711x/p720t.c +++ b/arch/arm/mach-clps711x/p720t.c | |||
@@ -134,6 +134,7 @@ static void __init p720t_init_late(void) | |||
134 | MACHINE_START(P720T, "ARM-Prospector720T") | 134 | MACHINE_START(P720T, "ARM-Prospector720T") |
135 | /* Maintainer: ARM Ltd/Deep Blue Solutions Ltd */ | 135 | /* Maintainer: ARM Ltd/Deep Blue Solutions Ltd */ |
136 | .atag_offset = 0x100, | 136 | .atag_offset = 0x100, |
137 | .nr_irqs = CLPS711X_NR_IRQS, | ||
137 | .fixup = fixup_p720t, | 138 | .fixup = fixup_p720t, |
138 | .map_io = p720t_map_io, | 139 | .map_io = p720t_map_io, |
139 | .init_early = p720t_init_early, | 140 | .init_early = p720t_init_early, |