diff options
author | Russell King <rmk+kernel@arm.linux.org.uk> | 2012-02-04 05:31:38 -0500 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2012-02-04 05:31:38 -0500 |
commit | bea15fd77ffa1338c293328b8c74a120be53e861 (patch) | |
tree | be8ce29eee69f49fa56ee0e85d11866e07baab5e | |
parent | dcf81c1af839b77b44404453ecae6e5ac5a75f05 (diff) | |
parent | 72ee8499eb27f5724ac97b147350a5457a598aa3 (diff) |
Merge branch 'sparse_irq' of git://sources.calxeda.com/kernel/linux into devel-stable
88 files changed, 130 insertions, 75 deletions
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index 24626b0419ee..dcd77dbf4660 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig | |||
@@ -28,7 +28,6 @@ config ARM | |||
28 | select HAVE_HW_BREAKPOINT if (PERF_EVENTS && (CPU_V6 || CPU_V6K || CPU_V7)) | 28 | select HAVE_HW_BREAKPOINT if (PERF_EVENTS && (CPU_V6 || CPU_V6K || CPU_V7)) |
29 | select HAVE_C_RECORDMCOUNT | 29 | select HAVE_C_RECORDMCOUNT |
30 | select HAVE_GENERIC_HARDIRQS | 30 | select HAVE_GENERIC_HARDIRQS |
31 | select HAVE_SPARSE_IRQ | ||
32 | select GENERIC_IRQ_SHOW | 31 | select GENERIC_IRQ_SHOW |
33 | select CPU_PM if (SUSPEND || CPU_IDLE) | 32 | select CPU_PM if (SUSPEND || CPU_IDLE) |
34 | select GENERIC_PCI_IOMAP | 33 | select GENERIC_PCI_IOMAP |
@@ -350,6 +349,7 @@ config ARCH_HIGHBANK | |||
350 | select GENERIC_CLOCKEVENTS | 349 | select GENERIC_CLOCKEVENTS |
351 | select HAVE_ARM_SCU | 350 | select HAVE_ARM_SCU |
352 | select HAVE_SMP | 351 | select HAVE_SMP |
352 | select SPARSE_IRQ | ||
353 | select USE_OF | 353 | select USE_OF |
354 | help | 354 | help |
355 | Support for the Calxeda Highbank SoC based boards. | 355 | Support for the Calxeda Highbank SoC based boards. |
diff --git a/arch/arm/include/asm/hardware/it8152.h b/arch/arm/include/asm/hardware/it8152.h index 43cab498bc27..73f84fa4f366 100644 --- a/arch/arm/include/asm/hardware/it8152.h +++ b/arch/arm/include/asm/hardware/it8152.h | |||
@@ -9,6 +9,9 @@ | |||
9 | 9 | ||
10 | #ifndef __ASM_HARDWARE_IT8152_H | 10 | #ifndef __ASM_HARDWARE_IT8152_H |
11 | #define __ASM_HARDWARE_IT8152_H | 11 | #define __ASM_HARDWARE_IT8152_H |
12 | |||
13 | #include <mach/irqs.h> | ||
14 | |||
12 | extern void __iomem *it8152_base_address; | 15 | extern void __iomem *it8152_base_address; |
13 | 16 | ||
14 | #define IT8152_IO_BASE (it8152_base_address + 0x03e00000) | 17 | #define IT8152_IO_BASE (it8152_base_address + 0x03e00000) |
diff --git a/arch/arm/include/asm/irq.h b/arch/arm/include/asm/irq.h index 5a526afb5f18..35c21c375d81 100644 --- a/arch/arm/include/asm/irq.h +++ b/arch/arm/include/asm/irq.h | |||
@@ -1,14 +1,18 @@ | |||
1 | #ifndef __ASM_ARM_IRQ_H | 1 | #ifndef __ASM_ARM_IRQ_H |
2 | #define __ASM_ARM_IRQ_H | 2 | #define __ASM_ARM_IRQ_H |
3 | 3 | ||
4 | #define NR_IRQS_LEGACY 16 | ||
5 | |||
6 | #ifndef CONFIG_SPARSE_IRQ | ||
4 | #include <mach/irqs.h> | 7 | #include <mach/irqs.h> |
8 | #else | ||
9 | #define NR_IRQS NR_IRQS_LEGACY | ||
10 | #endif | ||
5 | 11 | ||
6 | #ifndef irq_canonicalize | 12 | #ifndef irq_canonicalize |
7 | #define irq_canonicalize(i) (i) | 13 | #define irq_canonicalize(i) (i) |
8 | #endif | 14 | #endif |
9 | 15 | ||
10 | #define NR_IRQS_LEGACY 16 | ||
11 | |||
12 | /* | 16 | /* |
13 | * Use this value to indicate lack of interrupt | 17 | * Use this value to indicate lack of interrupt |
14 | * capability | 18 | * capability |
diff --git a/arch/arm/include/asm/mc146818rtc.h b/arch/arm/include/asm/mc146818rtc.h index 6b884d2b0b69..e8567bb99dfc 100644 --- a/arch/arm/include/asm/mc146818rtc.h +++ b/arch/arm/include/asm/mc146818rtc.h | |||
@@ -5,7 +5,9 @@ | |||
5 | #define _ASM_MC146818RTC_H | 5 | #define _ASM_MC146818RTC_H |
6 | 6 | ||
7 | #include <linux/io.h> | 7 | #include <linux/io.h> |
8 | #include <mach/irqs.h> | 8 | #include <linux/kernel.h> |
9 | |||
10 | #define RTC_IRQ BUILD_BUG_ON(1) | ||
9 | 11 | ||
10 | #ifndef RTC_PORT | 12 | #ifndef RTC_PORT |
11 | #define RTC_PORT(x) (0x70 + (x)) | 13 | #define RTC_PORT(x) (0x70 + (x)) |
diff --git a/arch/arm/kernel/time.c b/arch/arm/kernel/time.c index 8c57dd3680e9..60955179113c 100644 --- a/arch/arm/kernel/time.c +++ b/arch/arm/kernel/time.c | |||
@@ -25,8 +25,6 @@ | |||
25 | #include <linux/timer.h> | 25 | #include <linux/timer.h> |
26 | #include <linux/irq.h> | 26 | #include <linux/irq.h> |
27 | 27 | ||
28 | #include <linux/mc146818rtc.h> | ||
29 | |||
30 | #include <asm/leds.h> | 28 | #include <asm/leds.h> |
31 | #include <asm/thread_info.h> | 29 | #include <asm/thread_info.h> |
32 | #include <asm/sched_clock.h> | 30 | #include <asm/sched_clock.h> |
diff --git a/arch/arm/mach-highbank/highbank.c b/arch/arm/mach-highbank/highbank.c index 7afbe1e55beb..ee228ef3d27d 100644 --- a/arch/arm/mach-highbank/highbank.c +++ b/arch/arm/mach-highbank/highbank.c | |||
@@ -33,7 +33,6 @@ | |||
33 | #include <asm/mach/arch.h> | 33 | #include <asm/mach/arch.h> |
34 | #include <asm/mach/map.h> | 34 | #include <asm/mach/map.h> |
35 | #include <asm/mach/time.h> | 35 | #include <asm/mach/time.h> |
36 | #include <mach/irqs.h> | ||
37 | 36 | ||
38 | #include "core.h" | 37 | #include "core.h" |
39 | #include "sysregs.h" | 38 | #include "sysregs.h" |
diff --git a/arch/arm/mach-highbank/include/mach/irqs.h b/arch/arm/mach-highbank/include/mach/irqs.h deleted file mode 100644 index 9746aab14e9a..000000000000 --- a/arch/arm/mach-highbank/include/mach/irqs.h +++ /dev/null | |||
@@ -1,6 +0,0 @@ | |||
1 | #ifndef __MACH_IRQS_H | ||
2 | #define __MACH_IRQS_H | ||
3 | |||
4 | #define NR_IRQS 192 | ||
5 | |||
6 | #endif | ||
diff --git a/arch/arm/mach-mmp/aspenite.c b/arch/arm/mach-mmp/aspenite.c index 17cb76060125..5483d6f5c6d7 100644 --- a/arch/arm/mach-mmp/aspenite.c +++ b/arch/arm/mach-mmp/aspenite.c | |||
@@ -24,6 +24,7 @@ | |||
24 | #include <mach/addr-map.h> | 24 | #include <mach/addr-map.h> |
25 | #include <mach/mfp-pxa168.h> | 25 | #include <mach/mfp-pxa168.h> |
26 | #include <mach/pxa168.h> | 26 | #include <mach/pxa168.h> |
27 | #include <mach/irqs.h> | ||
27 | #include <video/pxa168fb.h> | 28 | #include <video/pxa168fb.h> |
28 | #include <linux/input.h> | 29 | #include <linux/input.h> |
29 | #include <plat/pxa27x_keypad.h> | 30 | #include <plat/pxa27x_keypad.h> |
@@ -240,7 +241,7 @@ static void __init common_init(void) | |||
240 | 241 | ||
241 | MACHINE_START(ASPENITE, "PXA168-based Aspenite Development Platform") | 242 | MACHINE_START(ASPENITE, "PXA168-based Aspenite Development Platform") |
242 | .map_io = mmp_map_io, | 243 | .map_io = mmp_map_io, |
243 | .nr_irqs = IRQ_BOARD_START, | 244 | .nr_irqs = MMP_NR_IRQS, |
244 | .init_irq = pxa168_init_irq, | 245 | .init_irq = pxa168_init_irq, |
245 | .timer = &pxa168_timer, | 246 | .timer = &pxa168_timer, |
246 | .init_machine = common_init, | 247 | .init_machine = common_init, |
@@ -249,7 +250,7 @@ MACHINE_END | |||
249 | 250 | ||
250 | MACHINE_START(ZYLONITE2, "PXA168-based Zylonite2 Development Platform") | 251 | MACHINE_START(ZYLONITE2, "PXA168-based Zylonite2 Development Platform") |
251 | .map_io = mmp_map_io, | 252 | .map_io = mmp_map_io, |
252 | .nr_irqs = IRQ_BOARD_START, | 253 | .nr_irqs = MMP_NR_IRQS, |
253 | .init_irq = pxa168_init_irq, | 254 | .init_irq = pxa168_init_irq, |
254 | .timer = &pxa168_timer, | 255 | .timer = &pxa168_timer, |
255 | .init_machine = common_init, | 256 | .init_machine = common_init, |
diff --git a/arch/arm/mach-mmp/avengers_lite.c b/arch/arm/mach-mmp/avengers_lite.c index b148a9dc5a44..603542ae6fbd 100644 --- a/arch/arm/mach-mmp/avengers_lite.c +++ b/arch/arm/mach-mmp/avengers_lite.c | |||
@@ -43,6 +43,7 @@ static void __init avengers_lite_init(void) | |||
43 | 43 | ||
44 | MACHINE_START(AVENGERS_LITE, "PXA168 Avengers lite Development Platform") | 44 | MACHINE_START(AVENGERS_LITE, "PXA168 Avengers lite Development Platform") |
45 | .map_io = mmp_map_io, | 45 | .map_io = mmp_map_io, |
46 | .nr_irqs = MMP_NR_IRQS, | ||
46 | .init_irq = pxa168_init_irq, | 47 | .init_irq = pxa168_init_irq, |
47 | .timer = &pxa168_timer, | 48 | .timer = &pxa168_timer, |
48 | .init_machine = avengers_lite_init, | 49 | .init_machine = avengers_lite_init, |
diff --git a/arch/arm/mach-mmp/brownstone.c b/arch/arm/mach-mmp/brownstone.c index d839fe6421e6..5cb769cd26d9 100644 --- a/arch/arm/mach-mmp/brownstone.c +++ b/arch/arm/mach-mmp/brownstone.c | |||
@@ -28,7 +28,7 @@ | |||
28 | 28 | ||
29 | #include "common.h" | 29 | #include "common.h" |
30 | 30 | ||
31 | #define BROWNSTONE_NR_IRQS (IRQ_BOARD_START + 40) | 31 | #define BROWNSTONE_NR_IRQS (MMP_NR_IRQS + 40) |
32 | 32 | ||
33 | #define GPIO_5V_ENABLE (89) | 33 | #define GPIO_5V_ENABLE (89) |
34 | 34 | ||
@@ -158,7 +158,7 @@ static struct platform_device brownstone_v_5vp_device = { | |||
158 | }; | 158 | }; |
159 | 159 | ||
160 | static struct max8925_platform_data brownstone_max8925_info = { | 160 | static struct max8925_platform_data brownstone_max8925_info = { |
161 | .irq_base = IRQ_BOARD_START, | 161 | .irq_base = MMP_NR_IRQS, |
162 | }; | 162 | }; |
163 | 163 | ||
164 | static struct i2c_board_info brownstone_twsi1_info[] = { | 164 | static struct i2c_board_info brownstone_twsi1_info[] = { |
diff --git a/arch/arm/mach-mmp/flint.c b/arch/arm/mach-mmp/flint.c index 2ee8cd7829dd..8059cc0905c6 100644 --- a/arch/arm/mach-mmp/flint.c +++ b/arch/arm/mach-mmp/flint.c | |||
@@ -23,10 +23,11 @@ | |||
23 | #include <mach/addr-map.h> | 23 | #include <mach/addr-map.h> |
24 | #include <mach/mfp-mmp2.h> | 24 | #include <mach/mfp-mmp2.h> |
25 | #include <mach/mmp2.h> | 25 | #include <mach/mmp2.h> |
26 | #include <mach/irqs.h> | ||
26 | 27 | ||
27 | #include "common.h" | 28 | #include "common.h" |
28 | 29 | ||
29 | #define FLINT_NR_IRQS (IRQ_BOARD_START + 48) | 30 | #define FLINT_NR_IRQS (MMP_NR_IRQS + 48) |
30 | 31 | ||
31 | static unsigned long flint_pin_config[] __initdata = { | 32 | static unsigned long flint_pin_config[] __initdata = { |
32 | /* UART1 */ | 33 | /* UART1 */ |
diff --git a/arch/arm/mach-mmp/gplugd.c b/arch/arm/mach-mmp/gplugd.c index 87765467de63..f516e74ce0d5 100644 --- a/arch/arm/mach-mmp/gplugd.c +++ b/arch/arm/mach-mmp/gplugd.c | |||
@@ -191,7 +191,7 @@ static void __init gplugd_init(void) | |||
191 | 191 | ||
192 | MACHINE_START(GPLUGD, "PXA168-based GuruPlug Display (gplugD) Platform") | 192 | MACHINE_START(GPLUGD, "PXA168-based GuruPlug Display (gplugD) Platform") |
193 | .map_io = mmp_map_io, | 193 | .map_io = mmp_map_io, |
194 | .nr_irqs = IRQ_BOARD_START, | 194 | .nr_irqs = MMP_NR_IRQS, |
195 | .init_irq = pxa168_init_irq, | 195 | .init_irq = pxa168_init_irq, |
196 | .timer = &pxa168_timer, | 196 | .timer = &pxa168_timer, |
197 | .init_machine = gplugd_init, | 197 | .init_machine = gplugd_init, |
diff --git a/arch/arm/mach-mmp/include/mach/irqs.h b/arch/arm/mach-mmp/include/mach/irqs.h index 34635a0bbb59..d0e746626a3d 100644 --- a/arch/arm/mach-mmp/include/mach/irqs.h +++ b/arch/arm/mach-mmp/include/mach/irqs.h | |||
@@ -223,7 +223,6 @@ | |||
223 | #define MMP_GPIO_TO_IRQ(gpio) (IRQ_GPIO_START + (gpio)) | 223 | #define MMP_GPIO_TO_IRQ(gpio) (IRQ_GPIO_START + (gpio)) |
224 | 224 | ||
225 | #define IRQ_BOARD_START (IRQ_GPIO_START + MMP_NR_BUILTIN_GPIO) | 225 | #define IRQ_BOARD_START (IRQ_GPIO_START + MMP_NR_BUILTIN_GPIO) |
226 | 226 | #define MMP_NR_IRQS IRQ_BOARD_START | |
227 | #define NR_IRQS (IRQ_BOARD_START) | ||
228 | 227 | ||
229 | #endif /* __ASM_MACH_IRQS_H */ | 228 | #endif /* __ASM_MACH_IRQS_H */ |
diff --git a/arch/arm/mach-mmp/irq-mmp2.c b/arch/arm/mach-mmp/irq-mmp2.c index d21c5441a3d0..7895d277421e 100644 --- a/arch/arm/mach-mmp/irq-mmp2.c +++ b/arch/arm/mach-mmp/irq-mmp2.c | |||
@@ -15,6 +15,7 @@ | |||
15 | #include <linux/irq.h> | 15 | #include <linux/irq.h> |
16 | #include <linux/io.h> | 16 | #include <linux/io.h> |
17 | 17 | ||
18 | #include <mach/irqs.h> | ||
18 | #include <mach/regs-icu.h> | 19 | #include <mach/regs-icu.h> |
19 | #include <mach/mmp2.h> | 20 | #include <mach/mmp2.h> |
20 | 21 | ||
diff --git a/arch/arm/mach-mmp/jasper.c b/arch/arm/mach-mmp/jasper.c index 96cf5c8fe47d..ff73249884d0 100644 --- a/arch/arm/mach-mmp/jasper.c +++ b/arch/arm/mach-mmp/jasper.c | |||
@@ -19,6 +19,7 @@ | |||
19 | #include <linux/mfd/max8925.h> | 19 | #include <linux/mfd/max8925.h> |
20 | #include <linux/interrupt.h> | 20 | #include <linux/interrupt.h> |
21 | 21 | ||
22 | #include <mach/irqs.h> | ||
22 | #include <asm/mach-types.h> | 23 | #include <asm/mach-types.h> |
23 | #include <asm/mach/arch.h> | 24 | #include <asm/mach/arch.h> |
24 | #include <mach/addr-map.h> | 25 | #include <mach/addr-map.h> |
@@ -27,7 +28,7 @@ | |||
27 | 28 | ||
28 | #include "common.h" | 29 | #include "common.h" |
29 | 30 | ||
30 | #define JASPER_NR_IRQS (IRQ_BOARD_START + 48) | 31 | #define JASPER_NR_IRQS (MMP_NR_IRQS + 48) |
31 | 32 | ||
32 | static unsigned long jasper_pin_config[] __initdata = { | 33 | static unsigned long jasper_pin_config[] __initdata = { |
33 | /* UART1 */ | 34 | /* UART1 */ |
@@ -135,7 +136,7 @@ static struct max8925_power_pdata jasper_power_data = { | |||
135 | static struct max8925_platform_data jasper_max8925_info = { | 136 | static struct max8925_platform_data jasper_max8925_info = { |
136 | .backlight = &jasper_backlight_data, | 137 | .backlight = &jasper_backlight_data, |
137 | .power = &jasper_power_data, | 138 | .power = &jasper_power_data, |
138 | .irq_base = IRQ_BOARD_START, | 139 | .irq_base = MMP_NR_IRQS, |
139 | }; | 140 | }; |
140 | 141 | ||
141 | static struct i2c_board_info jasper_twsi1_info[] = { | 142 | static struct i2c_board_info jasper_twsi1_info[] = { |
diff --git a/arch/arm/mach-mmp/tavorevb.c b/arch/arm/mach-mmp/tavorevb.c index 8e3b5af04a57..507e6c0e34f5 100644 --- a/arch/arm/mach-mmp/tavorevb.c +++ b/arch/arm/mach-mmp/tavorevb.c | |||
@@ -102,6 +102,7 @@ static void __init tavorevb_init(void) | |||
102 | 102 | ||
103 | MACHINE_START(TAVOREVB, "PXA910 Evaluation Board (aka TavorEVB)") | 103 | MACHINE_START(TAVOREVB, "PXA910 Evaluation Board (aka TavorEVB)") |
104 | .map_io = mmp_map_io, | 104 | .map_io = mmp_map_io, |
105 | .nr_irqs = MMP_NR_IRQS, | ||
105 | .init_irq = pxa910_init_irq, | 106 | .init_irq = pxa910_init_irq, |
106 | .timer = &pxa910_timer, | 107 | .timer = &pxa910_timer, |
107 | .init_machine = tavorevb_init, | 108 | .init_machine = tavorevb_init, |
diff --git a/arch/arm/mach-mmp/teton_bga.c b/arch/arm/mach-mmp/teton_bga.c index 0523e422990e..42bef6674ecf 100644 --- a/arch/arm/mach-mmp/teton_bga.c +++ b/arch/arm/mach-mmp/teton_bga.c | |||
@@ -26,6 +26,7 @@ | |||
26 | #include <mach/mfp-pxa168.h> | 26 | #include <mach/mfp-pxa168.h> |
27 | #include <mach/pxa168.h> | 27 | #include <mach/pxa168.h> |
28 | #include <mach/teton_bga.h> | 28 | #include <mach/teton_bga.h> |
29 | #include <mach/irqs.h> | ||
29 | 30 | ||
30 | #include "common.h" | 31 | #include "common.h" |
31 | 32 | ||
@@ -83,7 +84,7 @@ static void __init teton_bga_init(void) | |||
83 | 84 | ||
84 | MACHINE_START(TETON_BGA, "PXA168-based Teton BGA Development Platform") | 85 | MACHINE_START(TETON_BGA, "PXA168-based Teton BGA Development Platform") |
85 | .map_io = mmp_map_io, | 86 | .map_io = mmp_map_io, |
86 | .nr_irqs = IRQ_BOARD_START, | 87 | .nr_irqs = MMP_NR_IRQS, |
87 | .init_irq = pxa168_init_irq, | 88 | .init_irq = pxa168_init_irq, |
88 | .timer = &pxa168_timer, | 89 | .timer = &pxa168_timer, |
89 | .init_machine = teton_bga_init, | 90 | .init_machine = teton_bga_init, |
diff --git a/arch/arm/mach-mmp/ttc_dkb.c b/arch/arm/mach-mmp/ttc_dkb.c index 5ac5d5832e45..4c5fd5bb0c9c 100644 --- a/arch/arm/mach-mmp/ttc_dkb.c +++ b/arch/arm/mach-mmp/ttc_dkb.c | |||
@@ -38,7 +38,7 @@ | |||
38 | * 16 board interrupts -- PCA9575 GPIO expander | 38 | * 16 board interrupts -- PCA9575 GPIO expander |
39 | * 24 board interrupts -- 88PM860x PMIC | 39 | * 24 board interrupts -- 88PM860x PMIC |
40 | */ | 40 | */ |
41 | #define TTCDKB_NR_IRQS (IRQ_BOARD_START + 16 + 16 + 24) | 41 | #define TTCDKB_NR_IRQS (MMP_NR_IRQS + 16 + 16 + 24) |
42 | 42 | ||
43 | static unsigned long ttc_dkb_pin_config[] __initdata = { | 43 | static unsigned long ttc_dkb_pin_config[] __initdata = { |
44 | /* UART2 */ | 44 | /* UART2 */ |
@@ -130,7 +130,7 @@ static struct platform_device *ttc_dkb_devices[] = { | |||
130 | static struct pca953x_platform_data max7312_data[] = { | 130 | static struct pca953x_platform_data max7312_data[] = { |
131 | { | 131 | { |
132 | .gpio_base = TTCDKB_GPIO_EXT0(0), | 132 | .gpio_base = TTCDKB_GPIO_EXT0(0), |
133 | .irq_base = IRQ_BOARD_START, | 133 | .irq_base = MMP_NR_IRQS, |
134 | }, | 134 | }, |
135 | }; | 135 | }; |
136 | 136 | ||
diff --git a/arch/arm/mach-picoxcell/include/mach/irqs.h b/arch/arm/mach-picoxcell/include/mach/irqs.h deleted file mode 100644 index 59eac1ee2820..000000000000 --- a/arch/arm/mach-picoxcell/include/mach/irqs.h +++ /dev/null | |||
@@ -1,20 +0,0 @@ | |||
1 | /* | ||
2 | * Copyright (c) 2011 Picochip Ltd., Jamie Iles | ||
3 | * | ||
4 | * This program is free software; you can redistribute it and/or modify | ||
5 | * it under the terms of the GNU General Public License as published by | ||
6 | * the Free Software Foundation; either version 2 of the License, or | ||
7 | * (at your option) any later version. | ||
8 | * | ||
9 | * This program is distributed in the hope that it will be useful, | ||
10 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
11 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
12 | * GNU General Public License for more details. | ||
13 | */ | ||
14 | #ifndef __MACH_IRQS_H | ||
15 | #define __MACH_IRQS_H | ||
16 | |||
17 | /* We dynamically allocate our irq_desc's. */ | ||
18 | #define NR_IRQS 0 | ||
19 | |||
20 | #endif /* __MACH_IRQS_H */ | ||
diff --git a/arch/arm/mach-pxa/capc7117.c b/arch/arm/mach-pxa/capc7117.c index c91727d1fe09..9a8760b72913 100644 --- a/arch/arm/mach-pxa/capc7117.c +++ b/arch/arm/mach-pxa/capc7117.c | |||
@@ -150,6 +150,7 @@ MACHINE_START(CAPC7117, | |||
150 | "Embedian CAPC-7117 evaluation kit based on the MXM-8x10 CoM") | 150 | "Embedian CAPC-7117 evaluation kit based on the MXM-8x10 CoM") |
151 | .atag_offset = 0x100, | 151 | .atag_offset = 0x100, |
152 | .map_io = pxa3xx_map_io, | 152 | .map_io = pxa3xx_map_io, |
153 | .nr_irqs = PXA_NR_IRQS, | ||
153 | .init_irq = pxa3xx_init_irq, | 154 | .init_irq = pxa3xx_init_irq, |
154 | .handle_irq = pxa3xx_handle_irq, | 155 | .handle_irq = pxa3xx_handle_irq, |
155 | .timer = &pxa_timer, | 156 | .timer = &pxa_timer, |
diff --git a/arch/arm/mach-pxa/cm-x300.c b/arch/arm/mach-pxa/cm-x300.c index 4b981b82d2a5..133cceefd2a3 100644 --- a/arch/arm/mach-pxa/cm-x300.c +++ b/arch/arm/mach-pxa/cm-x300.c | |||
@@ -853,6 +853,7 @@ static void __init cm_x300_fixup(struct tag *tags, char **cmdline, | |||
853 | MACHINE_START(CM_X300, "CM-X300 module") | 853 | MACHINE_START(CM_X300, "CM-X300 module") |
854 | .atag_offset = 0x100, | 854 | .atag_offset = 0x100, |
855 | .map_io = pxa3xx_map_io, | 855 | .map_io = pxa3xx_map_io, |
856 | .nr_irqs = PXA_NR_IRQS, | ||
856 | .init_irq = pxa3xx_init_irq, | 857 | .init_irq = pxa3xx_init_irq, |
857 | .handle_irq = pxa3xx_handle_irq, | 858 | .handle_irq = pxa3xx_handle_irq, |
858 | .timer = &pxa_timer, | 859 | .timer = &pxa_timer, |
diff --git a/arch/arm/mach-pxa/colibri-pxa270.c b/arch/arm/mach-pxa/colibri-pxa270.c index 29d5d541f602..b2f227d36125 100644 --- a/arch/arm/mach-pxa/colibri-pxa270.c +++ b/arch/arm/mach-pxa/colibri-pxa270.c | |||
@@ -310,6 +310,7 @@ MACHINE_START(COLIBRI, "Toradex Colibri PXA270") | |||
310 | .atag_offset = 0x100, | 310 | .atag_offset = 0x100, |
311 | .init_machine = colibri_pxa270_init, | 311 | .init_machine = colibri_pxa270_init, |
312 | .map_io = pxa27x_map_io, | 312 | .map_io = pxa27x_map_io, |
313 | .nr_irqs = PXA_NR_IRQS, | ||
313 | .init_irq = pxa27x_init_irq, | 314 | .init_irq = pxa27x_init_irq, |
314 | .handle_irq = pxa27x_handle_irq, | 315 | .handle_irq = pxa27x_handle_irq, |
315 | .timer = &pxa_timer, | 316 | .timer = &pxa_timer, |
@@ -320,6 +321,7 @@ MACHINE_START(INCOME, "Income s.r.o. SH-Dmaster PXA270 SBC") | |||
320 | .atag_offset = 0x100, | 321 | .atag_offset = 0x100, |
321 | .init_machine = colibri_pxa270_income_init, | 322 | .init_machine = colibri_pxa270_income_init, |
322 | .map_io = pxa27x_map_io, | 323 | .map_io = pxa27x_map_io, |
324 | .nr_irqs = PXA_NR_IRQS, | ||
323 | .init_irq = pxa27x_init_irq, | 325 | .init_irq = pxa27x_init_irq, |
324 | .handle_irq = pxa27x_handle_irq, | 326 | .handle_irq = pxa27x_handle_irq, |
325 | .timer = &pxa_timer, | 327 | .timer = &pxa_timer, |
diff --git a/arch/arm/mach-pxa/colibri-pxa300.c b/arch/arm/mach-pxa/colibri-pxa300.c index 0846d210cb05..bb6def8ec979 100644 --- a/arch/arm/mach-pxa/colibri-pxa300.c +++ b/arch/arm/mach-pxa/colibri-pxa300.c | |||
@@ -186,6 +186,7 @@ MACHINE_START(COLIBRI300, "Toradex Colibri PXA300") | |||
186 | .atag_offset = 0x100, | 186 | .atag_offset = 0x100, |
187 | .init_machine = colibri_pxa300_init, | 187 | .init_machine = colibri_pxa300_init, |
188 | .map_io = pxa3xx_map_io, | 188 | .map_io = pxa3xx_map_io, |
189 | .nr_irqs = PXA_NR_IRQS, | ||
189 | .init_irq = pxa3xx_init_irq, | 190 | .init_irq = pxa3xx_init_irq, |
190 | .handle_irq = pxa3xx_handle_irq, | 191 | .handle_irq = pxa3xx_handle_irq, |
191 | .timer = &pxa_timer, | 192 | .timer = &pxa_timer, |
diff --git a/arch/arm/mach-pxa/colibri-pxa320.c b/arch/arm/mach-pxa/colibri-pxa320.c index 6ad3359063af..d88e7b37f1da 100644 --- a/arch/arm/mach-pxa/colibri-pxa320.c +++ b/arch/arm/mach-pxa/colibri-pxa320.c | |||
@@ -256,6 +256,7 @@ MACHINE_START(COLIBRI320, "Toradex Colibri PXA320") | |||
256 | .atag_offset = 0x100, | 256 | .atag_offset = 0x100, |
257 | .init_machine = colibri_pxa320_init, | 257 | .init_machine = colibri_pxa320_init, |
258 | .map_io = pxa3xx_map_io, | 258 | .map_io = pxa3xx_map_io, |
259 | .nr_irqs = PXA_NR_IRQS, | ||
259 | .init_irq = pxa3xx_init_irq, | 260 | .init_irq = pxa3xx_init_irq, |
260 | .handle_irq = pxa3xx_handle_irq, | 261 | .handle_irq = pxa3xx_handle_irq, |
261 | .timer = &pxa_timer, | 262 | .timer = &pxa_timer, |
diff --git a/arch/arm/mach-pxa/corgi.c b/arch/arm/mach-pxa/corgi.c index 11f1e735966e..039aafa455c7 100644 --- a/arch/arm/mach-pxa/corgi.c +++ b/arch/arm/mach-pxa/corgi.c | |||
@@ -730,6 +730,7 @@ static void __init fixup_corgi(struct tag *tags, char **cmdline, | |||
730 | MACHINE_START(CORGI, "SHARP Corgi") | 730 | MACHINE_START(CORGI, "SHARP Corgi") |
731 | .fixup = fixup_corgi, | 731 | .fixup = fixup_corgi, |
732 | .map_io = pxa25x_map_io, | 732 | .map_io = pxa25x_map_io, |
733 | .nr_irqs = PXA_NR_IRQS, | ||
733 | .init_irq = pxa25x_init_irq, | 734 | .init_irq = pxa25x_init_irq, |
734 | .handle_irq = pxa25x_handle_irq, | 735 | .handle_irq = pxa25x_handle_irq, |
735 | .init_machine = corgi_init, | 736 | .init_machine = corgi_init, |
@@ -742,6 +743,7 @@ MACHINE_END | |||
742 | MACHINE_START(SHEPHERD, "SHARP Shepherd") | 743 | MACHINE_START(SHEPHERD, "SHARP Shepherd") |
743 | .fixup = fixup_corgi, | 744 | .fixup = fixup_corgi, |
744 | .map_io = pxa25x_map_io, | 745 | .map_io = pxa25x_map_io, |
746 | .nr_irqs = PXA_NR_IRQS, | ||
745 | .init_irq = pxa25x_init_irq, | 747 | .init_irq = pxa25x_init_irq, |
746 | .handle_irq = pxa25x_handle_irq, | 748 | .handle_irq = pxa25x_handle_irq, |
747 | .init_machine = corgi_init, | 749 | .init_machine = corgi_init, |
@@ -754,6 +756,7 @@ MACHINE_END | |||
754 | MACHINE_START(HUSKY, "SHARP Husky") | 756 | MACHINE_START(HUSKY, "SHARP Husky") |
755 | .fixup = fixup_corgi, | 757 | .fixup = fixup_corgi, |
756 | .map_io = pxa25x_map_io, | 758 | .map_io = pxa25x_map_io, |
759 | .nr_irqs = PXA_NR_IRQS, | ||
757 | .init_irq = pxa25x_init_irq, | 760 | .init_irq = pxa25x_init_irq, |
758 | .handle_irq = pxa25x_handle_irq, | 761 | .handle_irq = pxa25x_handle_irq, |
759 | .init_machine = corgi_init, | 762 | .init_machine = corgi_init, |
diff --git a/arch/arm/mach-pxa/csb726.c b/arch/arm/mach-pxa/csb726.c index fb5a51d834e5..67f0de37f46e 100644 --- a/arch/arm/mach-pxa/csb726.c +++ b/arch/arm/mach-pxa/csb726.c | |||
@@ -274,6 +274,7 @@ static void __init csb726_init(void) | |||
274 | MACHINE_START(CSB726, "Cogent CSB726") | 274 | MACHINE_START(CSB726, "Cogent CSB726") |
275 | .atag_offset = 0x100, | 275 | .atag_offset = 0x100, |
276 | .map_io = pxa27x_map_io, | 276 | .map_io = pxa27x_map_io, |
277 | .nr_irqs = PXA_NR_IRQS, | ||
277 | .init_irq = pxa27x_init_irq, | 278 | .init_irq = pxa27x_init_irq, |
278 | .handle_irq = pxa27x_handle_irq, | 279 | .handle_irq = pxa27x_handle_irq, |
279 | .init_machine = csb726_init, | 280 | .init_machine = csb726_init, |
diff --git a/arch/arm/mach-pxa/devices.c b/arch/arm/mach-pxa/devices.c index 18fd177073f4..72a15a62ab02 100644 --- a/arch/arm/mach-pxa/devices.c +++ b/arch/arm/mach-pxa/devices.c | |||
@@ -12,6 +12,7 @@ | |||
12 | #include <mach/pxafb.h> | 12 | #include <mach/pxafb.h> |
13 | #include <mach/mmc.h> | 13 | #include <mach/mmc.h> |
14 | #include <mach/irda.h> | 14 | #include <mach/irda.h> |
15 | #include <mach/irqs.h> | ||
15 | #include <mach/ohci.h> | 16 | #include <mach/ohci.h> |
16 | #include <plat/pxa27x_keypad.h> | 17 | #include <plat/pxa27x_keypad.h> |
17 | #include <mach/camera.h> | 18 | #include <mach/camera.h> |
diff --git a/arch/arm/mach-pxa/em-x270.c b/arch/arm/mach-pxa/em-x270.c index d80c0ba9a095..c1b65da26335 100644 --- a/arch/arm/mach-pxa/em-x270.c +++ b/arch/arm/mach-pxa/em-x270.c | |||
@@ -1301,6 +1301,7 @@ static void __init em_x270_init(void) | |||
1301 | MACHINE_START(EM_X270, "Compulab EM-X270") | 1301 | MACHINE_START(EM_X270, "Compulab EM-X270") |
1302 | .atag_offset = 0x100, | 1302 | .atag_offset = 0x100, |
1303 | .map_io = pxa27x_map_io, | 1303 | .map_io = pxa27x_map_io, |
1304 | .nr_irqs = PXA_NR_IRQS, | ||
1304 | .init_irq = pxa27x_init_irq, | 1305 | .init_irq = pxa27x_init_irq, |
1305 | .handle_irq = pxa27x_handle_irq, | 1306 | .handle_irq = pxa27x_handle_irq, |
1306 | .timer = &pxa_timer, | 1307 | .timer = &pxa_timer, |
@@ -1311,6 +1312,7 @@ MACHINE_END | |||
1311 | MACHINE_START(EXEDA, "Compulab eXeda") | 1312 | MACHINE_START(EXEDA, "Compulab eXeda") |
1312 | .atag_offset = 0x100, | 1313 | .atag_offset = 0x100, |
1313 | .map_io = pxa27x_map_io, | 1314 | .map_io = pxa27x_map_io, |
1315 | .nr_irqs = PXA_NR_IRQS, | ||
1314 | .init_irq = pxa27x_init_irq, | 1316 | .init_irq = pxa27x_init_irq, |
1315 | .handle_irq = pxa27x_handle_irq, | 1317 | .handle_irq = pxa27x_handle_irq, |
1316 | .timer = &pxa_timer, | 1318 | .timer = &pxa_timer, |
diff --git a/arch/arm/mach-pxa/gumstix.c b/arch/arm/mach-pxa/gumstix.c index ac3b1cef4751..e529a35a44ce 100644 --- a/arch/arm/mach-pxa/gumstix.c +++ b/arch/arm/mach-pxa/gumstix.c | |||
@@ -235,6 +235,7 @@ static void __init gumstix_init(void) | |||
235 | MACHINE_START(GUMSTIX, "Gumstix") | 235 | MACHINE_START(GUMSTIX, "Gumstix") |
236 | .atag_offset = 0x100, /* match u-boot bi_boot_params */ | 236 | .atag_offset = 0x100, /* match u-boot bi_boot_params */ |
237 | .map_io = pxa25x_map_io, | 237 | .map_io = pxa25x_map_io, |
238 | .nr_irqs = PXA_NR_IRQS, | ||
238 | .init_irq = pxa25x_init_irq, | 239 | .init_irq = pxa25x_init_irq, |
239 | .handle_irq = pxa25x_handle_irq, | 240 | .handle_irq = pxa25x_handle_irq, |
240 | .timer = &pxa_timer, | 241 | .timer = &pxa_timer, |
diff --git a/arch/arm/mach-pxa/h5000.c b/arch/arm/mach-pxa/h5000.c index fde6b4c873c4..e7dec589f014 100644 --- a/arch/arm/mach-pxa/h5000.c +++ b/arch/arm/mach-pxa/h5000.c | |||
@@ -205,6 +205,7 @@ static void __init h5000_init(void) | |||
205 | MACHINE_START(H5400, "HP iPAQ H5000") | 205 | MACHINE_START(H5400, "HP iPAQ H5000") |
206 | .atag_offset = 0x100, | 206 | .atag_offset = 0x100, |
207 | .map_io = pxa25x_map_io, | 207 | .map_io = pxa25x_map_io, |
208 | .nr_irqs = PXA_NR_IRQS, | ||
208 | .init_irq = pxa25x_init_irq, | 209 | .init_irq = pxa25x_init_irq, |
209 | .handle_irq = pxa25x_handle_irq, | 210 | .handle_irq = pxa25x_handle_irq, |
210 | .timer = &pxa_timer, | 211 | .timer = &pxa_timer, |
diff --git a/arch/arm/mach-pxa/himalaya.c b/arch/arm/mach-pxa/himalaya.c index 26d069a9f900..2962de898da9 100644 --- a/arch/arm/mach-pxa/himalaya.c +++ b/arch/arm/mach-pxa/himalaya.c | |||
@@ -160,6 +160,7 @@ static void __init himalaya_init(void) | |||
160 | MACHINE_START(HIMALAYA, "HTC Himalaya") | 160 | MACHINE_START(HIMALAYA, "HTC Himalaya") |
161 | .atag_offset = 0x100, | 161 | .atag_offset = 0x100, |
162 | .map_io = pxa25x_map_io, | 162 | .map_io = pxa25x_map_io, |
163 | .nr_irqs = PXA_NR_IRQS, | ||
163 | .init_irq = pxa25x_init_irq, | 164 | .init_irq = pxa25x_init_irq, |
164 | .handle_irq = pxa25x_handle_irq, | 165 | .handle_irq = pxa25x_handle_irq, |
165 | .init_machine = himalaya_init, | 166 | .init_machine = himalaya_init, |
diff --git a/arch/arm/mach-pxa/icontrol.c b/arch/arm/mach-pxa/icontrol.c index 67400192ed3b..1d02eabc9c65 100644 --- a/arch/arm/mach-pxa/icontrol.c +++ b/arch/arm/mach-pxa/icontrol.c | |||
@@ -193,6 +193,7 @@ static void __init icontrol_init(void) | |||
193 | MACHINE_START(ICONTROL, "iControl/SafeTcam boards using Embedian MXM-8x10 CoM") | 193 | MACHINE_START(ICONTROL, "iControl/SafeTcam boards using Embedian MXM-8x10 CoM") |
194 | .atag_offset = 0x100, | 194 | .atag_offset = 0x100, |
195 | .map_io = pxa3xx_map_io, | 195 | .map_io = pxa3xx_map_io, |
196 | .nr_irqs = PXA_NR_IRQS, | ||
196 | .init_irq = pxa3xx_init_irq, | 197 | .init_irq = pxa3xx_init_irq, |
197 | .handle_irq = pxa3xx_handle_irq, | 198 | .handle_irq = pxa3xx_handle_irq, |
198 | .timer = &pxa_timer, | 199 | .timer = &pxa_timer, |
diff --git a/arch/arm/mach-pxa/idp.c b/arch/arm/mach-pxa/idp.c index 8af1840e12cc..6ff466bd43e8 100644 --- a/arch/arm/mach-pxa/idp.c +++ b/arch/arm/mach-pxa/idp.c | |||
@@ -195,6 +195,7 @@ static void __init idp_map_io(void) | |||
195 | MACHINE_START(PXA_IDP, "Vibren PXA255 IDP") | 195 | MACHINE_START(PXA_IDP, "Vibren PXA255 IDP") |
196 | /* Maintainer: Vibren Technologies */ | 196 | /* Maintainer: Vibren Technologies */ |
197 | .map_io = idp_map_io, | 197 | .map_io = idp_map_io, |
198 | .nr_irqs = PXA_NR_IRQS, | ||
198 | .init_irq = pxa25x_init_irq, | 199 | .init_irq = pxa25x_init_irq, |
199 | .handle_irq = pxa25x_handle_irq, | 200 | .handle_irq = pxa25x_handle_irq, |
200 | .timer = &pxa_timer, | 201 | .timer = &pxa_timer, |
diff --git a/arch/arm/mach-pxa/include/mach/irqs.h b/arch/arm/mach-pxa/include/mach/irqs.h index 32975adf3ca4..8765782dd955 100644 --- a/arch/arm/mach-pxa/include/mach/irqs.h +++ b/arch/arm/mach-pxa/include/mach/irqs.h | |||
@@ -100,7 +100,7 @@ | |||
100 | */ | 100 | */ |
101 | #define IRQ_BOARD_START (PXA_GPIO_IRQ_BASE + PXA_NR_BUILTIN_GPIO) | 101 | #define IRQ_BOARD_START (PXA_GPIO_IRQ_BASE + PXA_NR_BUILTIN_GPIO) |
102 | 102 | ||
103 | #define NR_IRQS (IRQ_BOARD_START) | 103 | #define PXA_NR_IRQS (IRQ_BOARD_START) |
104 | 104 | ||
105 | #ifndef __ASSEMBLY__ | 105 | #ifndef __ASSEMBLY__ |
106 | struct irq_data; | 106 | struct irq_data; |
diff --git a/arch/arm/mach-pxa/mioa701.c b/arch/arm/mach-pxa/mioa701.c index e80a3db735c2..061d57009cee 100644 --- a/arch/arm/mach-pxa/mioa701.c +++ b/arch/arm/mach-pxa/mioa701.c | |||
@@ -758,6 +758,7 @@ MACHINE_START(MIOA701, "MIO A701") | |||
758 | .atag_offset = 0x100, | 758 | .atag_offset = 0x100, |
759 | .restart_mode = 's', | 759 | .restart_mode = 's', |
760 | .map_io = &pxa27x_map_io, | 760 | .map_io = &pxa27x_map_io, |
761 | .nr_irqs = PXA_NR_IRQS, | ||
761 | .init_irq = &pxa27x_init_irq, | 762 | .init_irq = &pxa27x_init_irq, |
762 | .handle_irq = &pxa27x_handle_irq, | 763 | .handle_irq = &pxa27x_handle_irq, |
763 | .init_machine = mioa701_machine_init, | 764 | .init_machine = mioa701_machine_init, |
diff --git a/arch/arm/mach-pxa/mp900.c b/arch/arm/mach-pxa/mp900.c index 169bf8f97af0..152efbf093f6 100644 --- a/arch/arm/mach-pxa/mp900.c +++ b/arch/arm/mach-pxa/mp900.c | |||
@@ -95,6 +95,7 @@ MACHINE_START(NEC_MP900, "MobilePro900/C") | |||
95 | .atag_offset = 0x220100, | 95 | .atag_offset = 0x220100, |
96 | .timer = &pxa_timer, | 96 | .timer = &pxa_timer, |
97 | .map_io = pxa25x_map_io, | 97 | .map_io = pxa25x_map_io, |
98 | .nr_irqs = PXA_NR_IRQS, | ||
98 | .init_irq = pxa25x_init_irq, | 99 | .init_irq = pxa25x_init_irq, |
99 | .handle_irq = pxa25x_handle_irq, | 100 | .handle_irq = pxa25x_handle_irq, |
100 | .init_machine = mp900c_init, | 101 | .init_machine = mp900c_init, |
diff --git a/arch/arm/mach-pxa/palmld.c b/arch/arm/mach-pxa/palmld.c index 1fa80f4f80c8..31e0433d83ba 100644 --- a/arch/arm/mach-pxa/palmld.c +++ b/arch/arm/mach-pxa/palmld.c | |||
@@ -344,6 +344,7 @@ static void __init palmld_init(void) | |||
344 | MACHINE_START(PALMLD, "Palm LifeDrive") | 344 | MACHINE_START(PALMLD, "Palm LifeDrive") |
345 | .atag_offset = 0x100, | 345 | .atag_offset = 0x100, |
346 | .map_io = palmld_map_io, | 346 | .map_io = palmld_map_io, |
347 | .nr_irqs = PXA_NR_IRQS, | ||
347 | .init_irq = pxa27x_init_irq, | 348 | .init_irq = pxa27x_init_irq, |
348 | .handle_irq = pxa27x_handle_irq, | 349 | .handle_irq = pxa27x_handle_irq, |
349 | .timer = &pxa_timer, | 350 | .timer = &pxa_timer, |
diff --git a/arch/arm/mach-pxa/palmt5.c b/arch/arm/mach-pxa/palmt5.c index 5ba14316bd9c..0f6bd4fcfa3b 100644 --- a/arch/arm/mach-pxa/palmt5.c +++ b/arch/arm/mach-pxa/palmt5.c | |||
@@ -205,6 +205,7 @@ MACHINE_START(PALMT5, "Palm Tungsten|T5") | |||
205 | .atag_offset = 0x100, | 205 | .atag_offset = 0x100, |
206 | .map_io = pxa27x_map_io, | 206 | .map_io = pxa27x_map_io, |
207 | .reserve = palmt5_reserve, | 207 | .reserve = palmt5_reserve, |
208 | .nr_irqs = PXA_NR_IRQS, | ||
208 | .init_irq = pxa27x_init_irq, | 209 | .init_irq = pxa27x_init_irq, |
209 | .handle_irq = pxa27x_handle_irq, | 210 | .handle_irq = pxa27x_handle_irq, |
210 | .timer = &pxa_timer, | 211 | .timer = &pxa_timer, |
diff --git a/arch/arm/mach-pxa/palmtc.c b/arch/arm/mach-pxa/palmtc.c index 29b51b40f09d..e2d97eed07a7 100644 --- a/arch/arm/mach-pxa/palmtc.c +++ b/arch/arm/mach-pxa/palmtc.c | |||
@@ -539,6 +539,7 @@ static void __init palmtc_init(void) | |||
539 | MACHINE_START(PALMTC, "Palm Tungsten|C") | 539 | MACHINE_START(PALMTC, "Palm Tungsten|C") |
540 | .atag_offset = 0x100, | 540 | .atag_offset = 0x100, |
541 | .map_io = pxa25x_map_io, | 541 | .map_io = pxa25x_map_io, |
542 | .nr_irqs = PXA_NR_IRQS, | ||
542 | .init_irq = pxa25x_init_irq, | 543 | .init_irq = pxa25x_init_irq, |
543 | .handle_irq = pxa25x_handle_irq, | 544 | .handle_irq = pxa25x_handle_irq, |
544 | .timer = &pxa_timer, | 545 | .timer = &pxa_timer, |
diff --git a/arch/arm/mach-pxa/palmte2.c b/arch/arm/mach-pxa/palmte2.c index 5ebf49acb827..c054827c567f 100644 --- a/arch/arm/mach-pxa/palmte2.c +++ b/arch/arm/mach-pxa/palmte2.c | |||
@@ -358,6 +358,7 @@ static void __init palmte2_init(void) | |||
358 | MACHINE_START(PALMTE2, "Palm Tungsten|E2") | 358 | MACHINE_START(PALMTE2, "Palm Tungsten|E2") |
359 | .atag_offset = 0x100, | 359 | .atag_offset = 0x100, |
360 | .map_io = pxa25x_map_io, | 360 | .map_io = pxa25x_map_io, |
361 | .nr_irqs = PXA_NR_IRQS, | ||
361 | .init_irq = pxa25x_init_irq, | 362 | .init_irq = pxa25x_init_irq, |
362 | .handle_irq = pxa25x_handle_irq, | 363 | .handle_irq = pxa25x_handle_irq, |
363 | .timer = &pxa_timer, | 364 | .timer = &pxa_timer, |
diff --git a/arch/arm/mach-pxa/palmtreo.c b/arch/arm/mach-pxa/palmtreo.c index ec8249156c08..fbdebee39a53 100644 --- a/arch/arm/mach-pxa/palmtreo.c +++ b/arch/arm/mach-pxa/palmtreo.c | |||
@@ -448,6 +448,7 @@ MACHINE_START(TREO680, "Palm Treo 680") | |||
448 | .atag_offset = 0x100, | 448 | .atag_offset = 0x100, |
449 | .map_io = pxa27x_map_io, | 449 | .map_io = pxa27x_map_io, |
450 | .reserve = treo_reserve, | 450 | .reserve = treo_reserve, |
451 | .nr_irqs = PXA_NR_IRQS, | ||
451 | .init_irq = pxa27x_init_irq, | 452 | .init_irq = pxa27x_init_irq, |
452 | .handle_irq = pxa27x_handle_irq, | 453 | .handle_irq = pxa27x_handle_irq, |
453 | .timer = &pxa_timer, | 454 | .timer = &pxa_timer, |
@@ -461,6 +462,7 @@ MACHINE_START(CENTRO, "Palm Centro 685") | |||
461 | .atag_offset = 0x100, | 462 | .atag_offset = 0x100, |
462 | .map_io = pxa27x_map_io, | 463 | .map_io = pxa27x_map_io, |
463 | .reserve = treo_reserve, | 464 | .reserve = treo_reserve, |
465 | .nr_irqs = PXA_NR_IRQS, | ||
464 | .init_irq = pxa27x_init_irq, | 466 | .init_irq = pxa27x_init_irq, |
465 | .handle_irq = pxa27x_handle_irq, | 467 | .handle_irq = pxa27x_handle_irq, |
466 | .timer = &pxa_timer, | 468 | .timer = &pxa_timer, |
diff --git a/arch/arm/mach-pxa/palmtx.c b/arch/arm/mach-pxa/palmtx.c index 6170d76dfba8..9507605ed547 100644 --- a/arch/arm/mach-pxa/palmtx.c +++ b/arch/arm/mach-pxa/palmtx.c | |||
@@ -366,6 +366,7 @@ static void __init palmtx_init(void) | |||
366 | MACHINE_START(PALMTX, "Palm T|X") | 366 | MACHINE_START(PALMTX, "Palm T|X") |
367 | .atag_offset = 0x100, | 367 | .atag_offset = 0x100, |
368 | .map_io = palmtx_map_io, | 368 | .map_io = palmtx_map_io, |
369 | .nr_irqs = PXA_NR_IRQS, | ||
369 | .init_irq = pxa27x_init_irq, | 370 | .init_irq = pxa27x_init_irq, |
370 | .handle_irq = pxa27x_handle_irq, | 371 | .handle_irq = pxa27x_handle_irq, |
371 | .timer = &pxa_timer, | 372 | .timer = &pxa_timer, |
diff --git a/arch/arm/mach-pxa/palmz72.c b/arch/arm/mach-pxa/palmz72.c index b2dff9d415eb..a97b59965bb9 100644 --- a/arch/arm/mach-pxa/palmz72.c +++ b/arch/arm/mach-pxa/palmz72.c | |||
@@ -401,6 +401,7 @@ static void __init palmz72_init(void) | |||
401 | MACHINE_START(PALMZ72, "Palm Zire72") | 401 | MACHINE_START(PALMZ72, "Palm Zire72") |
402 | .atag_offset = 0x100, | 402 | .atag_offset = 0x100, |
403 | .map_io = pxa27x_map_io, | 403 | .map_io = pxa27x_map_io, |
404 | .nr_irqs = PXA_NR_IRQS, | ||
404 | .init_irq = pxa27x_init_irq, | 405 | .init_irq = pxa27x_init_irq, |
405 | .handle_irq = pxa27x_handle_irq, | 406 | .handle_irq = pxa27x_handle_irq, |
406 | .timer = &pxa_timer, | 407 | .timer = &pxa_timer, |
diff --git a/arch/arm/mach-pxa/pxa3xx.c b/arch/arm/mach-pxa/pxa3xx.c index f107c71c7589..d2e562d62cf4 100644 --- a/arch/arm/mach-pxa/pxa3xx.c +++ b/arch/arm/mach-pxa/pxa3xx.c | |||
@@ -31,6 +31,7 @@ | |||
31 | #include <mach/pm.h> | 31 | #include <mach/pm.h> |
32 | #include <mach/dma.h> | 32 | #include <mach/dma.h> |
33 | #include <mach/smemc.h> | 33 | #include <mach/smemc.h> |
34 | #include <mach/irqs.h> | ||
34 | 35 | ||
35 | #include "generic.h" | 36 | #include "generic.h" |
36 | #include "devices.h" | 37 | #include "devices.h" |
diff --git a/arch/arm/mach-pxa/raumfeld.c b/arch/arm/mach-pxa/raumfeld.c index 22818c7694a8..7d691e51cb54 100644 --- a/arch/arm/mach-pxa/raumfeld.c +++ b/arch/arm/mach-pxa/raumfeld.c | |||
@@ -1090,6 +1090,7 @@ MACHINE_START(RAUMFELD_RC, "Raumfeld Controller") | |||
1090 | .atag_offset = 0x100, | 1090 | .atag_offset = 0x100, |
1091 | .init_machine = raumfeld_controller_init, | 1091 | .init_machine = raumfeld_controller_init, |
1092 | .map_io = pxa3xx_map_io, | 1092 | .map_io = pxa3xx_map_io, |
1093 | .nr_irqs = PXA_NR_IRQS, | ||
1093 | .init_irq = pxa3xx_init_irq, | 1094 | .init_irq = pxa3xx_init_irq, |
1094 | .handle_irq = pxa3xx_handle_irq, | 1095 | .handle_irq = pxa3xx_handle_irq, |
1095 | .timer = &pxa_timer, | 1096 | .timer = &pxa_timer, |
@@ -1102,6 +1103,7 @@ MACHINE_START(RAUMFELD_CONNECTOR, "Raumfeld Connector") | |||
1102 | .atag_offset = 0x100, | 1103 | .atag_offset = 0x100, |
1103 | .init_machine = raumfeld_connector_init, | 1104 | .init_machine = raumfeld_connector_init, |
1104 | .map_io = pxa3xx_map_io, | 1105 | .map_io = pxa3xx_map_io, |
1106 | .nr_irqs = PXA_NR_IRQS, | ||
1105 | .init_irq = pxa3xx_init_irq, | 1107 | .init_irq = pxa3xx_init_irq, |
1106 | .handle_irq = pxa3xx_handle_irq, | 1108 | .handle_irq = pxa3xx_handle_irq, |
1107 | .timer = &pxa_timer, | 1109 | .timer = &pxa_timer, |
@@ -1114,6 +1116,7 @@ MACHINE_START(RAUMFELD_SPEAKER, "Raumfeld Speaker") | |||
1114 | .atag_offset = 0x100, | 1116 | .atag_offset = 0x100, |
1115 | .init_machine = raumfeld_speaker_init, | 1117 | .init_machine = raumfeld_speaker_init, |
1116 | .map_io = pxa3xx_map_io, | 1118 | .map_io = pxa3xx_map_io, |
1119 | .nr_irqs = PXA_NR_IRQS, | ||
1117 | .init_irq = pxa3xx_init_irq, | 1120 | .init_irq = pxa3xx_init_irq, |
1118 | .handle_irq = pxa3xx_handle_irq, | 1121 | .handle_irq = pxa3xx_handle_irq, |
1119 | .timer = &pxa_timer, | 1122 | .timer = &pxa_timer, |
diff --git a/arch/arm/mach-pxa/saar.c b/arch/arm/mach-pxa/saar.c index 0fe354efb931..86c95a5d8533 100644 --- a/arch/arm/mach-pxa/saar.c +++ b/arch/arm/mach-pxa/saar.c | |||
@@ -598,6 +598,7 @@ MACHINE_START(SAAR, "PXA930 Handheld Platform (aka SAAR)") | |||
598 | /* Maintainer: Eric Miao <eric.miao@marvell.com> */ | 598 | /* Maintainer: Eric Miao <eric.miao@marvell.com> */ |
599 | .atag_offset = 0x100, | 599 | .atag_offset = 0x100, |
600 | .map_io = pxa3xx_map_io, | 600 | .map_io = pxa3xx_map_io, |
601 | .nr_irqs = PXA_NR_IRQS, | ||
601 | .init_irq = pxa3xx_init_irq, | 602 | .init_irq = pxa3xx_init_irq, |
602 | .handle_irq = pxa3xx_handle_irq, | 603 | .handle_irq = pxa3xx_handle_irq, |
603 | .timer = &pxa_timer, | 604 | .timer = &pxa_timer, |
diff --git a/arch/arm/mach-pxa/spitz.c b/arch/arm/mach-pxa/spitz.c index abf355d0c92f..df2ab0fb2ace 100644 --- a/arch/arm/mach-pxa/spitz.c +++ b/arch/arm/mach-pxa/spitz.c | |||
@@ -984,6 +984,7 @@ MACHINE_START(SPITZ, "SHARP Spitz") | |||
984 | .restart_mode = 'g', | 984 | .restart_mode = 'g', |
985 | .fixup = spitz_fixup, | 985 | .fixup = spitz_fixup, |
986 | .map_io = pxa27x_map_io, | 986 | .map_io = pxa27x_map_io, |
987 | .nr_irqs = PXA_NR_IRQS, | ||
987 | .init_irq = pxa27x_init_irq, | 988 | .init_irq = pxa27x_init_irq, |
988 | .handle_irq = pxa27x_handle_irq, | 989 | .handle_irq = pxa27x_handle_irq, |
989 | .init_machine = spitz_init, | 990 | .init_machine = spitz_init, |
@@ -997,6 +998,7 @@ MACHINE_START(BORZOI, "SHARP Borzoi") | |||
997 | .restart_mode = 'g', | 998 | .restart_mode = 'g', |
998 | .fixup = spitz_fixup, | 999 | .fixup = spitz_fixup, |
999 | .map_io = pxa27x_map_io, | 1000 | .map_io = pxa27x_map_io, |
1001 | .nr_irqs = PXA_NR_IRQS, | ||
1000 | .init_irq = pxa27x_init_irq, | 1002 | .init_irq = pxa27x_init_irq, |
1001 | .handle_irq = pxa27x_handle_irq, | 1003 | .handle_irq = pxa27x_handle_irq, |
1002 | .init_machine = spitz_init, | 1004 | .init_machine = spitz_init, |
@@ -1010,6 +1012,7 @@ MACHINE_START(AKITA, "SHARP Akita") | |||
1010 | .restart_mode = 'g', | 1012 | .restart_mode = 'g', |
1011 | .fixup = spitz_fixup, | 1013 | .fixup = spitz_fixup, |
1012 | .map_io = pxa27x_map_io, | 1014 | .map_io = pxa27x_map_io, |
1015 | .nr_irqs = PXA_NR_IRQS, | ||
1013 | .init_irq = pxa27x_init_irq, | 1016 | .init_irq = pxa27x_init_irq, |
1014 | .handle_irq = pxa27x_handle_irq, | 1017 | .handle_irq = pxa27x_handle_irq, |
1015 | .init_machine = spitz_init, | 1018 | .init_machine = spitz_init, |
diff --git a/arch/arm/mach-pxa/stargate2.c b/arch/arm/mach-pxa/stargate2.c index b0656e158d90..adb601a3762f 100644 --- a/arch/arm/mach-pxa/stargate2.c +++ b/arch/arm/mach-pxa/stargate2.c | |||
@@ -1006,6 +1006,7 @@ static void __init stargate2_init(void) | |||
1006 | #ifdef CONFIG_MACH_INTELMOTE2 | 1006 | #ifdef CONFIG_MACH_INTELMOTE2 |
1007 | MACHINE_START(INTELMOTE2, "IMOTE 2") | 1007 | MACHINE_START(INTELMOTE2, "IMOTE 2") |
1008 | .map_io = pxa27x_map_io, | 1008 | .map_io = pxa27x_map_io, |
1009 | .nr_irqs = PXA_NR_IRQS, | ||
1009 | .init_irq = pxa27x_init_irq, | 1010 | .init_irq = pxa27x_init_irq, |
1010 | .handle_irq = pxa27x_handle_irq, | 1011 | .handle_irq = pxa27x_handle_irq, |
1011 | .timer = &pxa_timer, | 1012 | .timer = &pxa_timer, |
diff --git a/arch/arm/mach-pxa/tavorevb.c b/arch/arm/mach-pxa/tavorevb.c index 9fb38e80e076..736bfdc50ee6 100644 --- a/arch/arm/mach-pxa/tavorevb.c +++ b/arch/arm/mach-pxa/tavorevb.c | |||
@@ -491,6 +491,7 @@ MACHINE_START(TAVOREVB, "PXA930 Evaluation Board (aka TavorEVB)") | |||
491 | /* Maintainer: Eric Miao <eric.miao@marvell.com> */ | 491 | /* Maintainer: Eric Miao <eric.miao@marvell.com> */ |
492 | .atag_offset = 0x100, | 492 | .atag_offset = 0x100, |
493 | .map_io = pxa3xx_map_io, | 493 | .map_io = pxa3xx_map_io, |
494 | .nr_irqs = PXA_NR_IRQS, | ||
494 | .init_irq = pxa3xx_init_irq, | 495 | .init_irq = pxa3xx_init_irq, |
495 | .handle_irq = pxa3xx_handle_irq, | 496 | .handle_irq = pxa3xx_handle_irq, |
496 | .timer = &pxa_timer, | 497 | .timer = &pxa_timer, |
diff --git a/arch/arm/mach-pxa/time.c b/arch/arm/mach-pxa/time.c index b503049d6d26..3d6c9bd90de6 100644 --- a/arch/arm/mach-pxa/time.c +++ b/arch/arm/mach-pxa/time.c | |||
@@ -22,6 +22,7 @@ | |||
22 | #include <asm/mach/time.h> | 22 | #include <asm/mach/time.h> |
23 | #include <asm/sched_clock.h> | 23 | #include <asm/sched_clock.h> |
24 | #include <mach/regs-ost.h> | 24 | #include <mach/regs-ost.h> |
25 | #include <mach/irqs.h> | ||
25 | 26 | ||
26 | /* | 27 | /* |
27 | * This is PXA's sched_clock implementation. This has a resolution | 28 | * This is PXA's sched_clock implementation. This has a resolution |
diff --git a/arch/arm/mach-pxa/trizeps4.c b/arch/arm/mach-pxa/trizeps4.c index 0f30af617d8f..2b6ac00b2cd9 100644 --- a/arch/arm/mach-pxa/trizeps4.c +++ b/arch/arm/mach-pxa/trizeps4.c | |||
@@ -558,6 +558,7 @@ MACHINE_START(TRIZEPS4, "Keith und Koep Trizeps IV module") | |||
558 | .atag_offset = 0x100, | 558 | .atag_offset = 0x100, |
559 | .init_machine = trizeps4_init, | 559 | .init_machine = trizeps4_init, |
560 | .map_io = trizeps4_map_io, | 560 | .map_io = trizeps4_map_io, |
561 | .nr_irqs = PXA_NR_IRQS, | ||
561 | .init_irq = pxa27x_init_irq, | 562 | .init_irq = pxa27x_init_irq, |
562 | .handle_irq = pxa27x_handle_irq, | 563 | .handle_irq = pxa27x_handle_irq, |
563 | .timer = &pxa_timer, | 564 | .timer = &pxa_timer, |
@@ -569,6 +570,7 @@ MACHINE_START(TRIZEPS4WL, "Keith und Koep Trizeps IV-WL module") | |||
569 | .atag_offset = 0x100, | 570 | .atag_offset = 0x100, |
570 | .init_machine = trizeps4_init, | 571 | .init_machine = trizeps4_init, |
571 | .map_io = trizeps4_map_io, | 572 | .map_io = trizeps4_map_io, |
573 | .nr_irqs = PXA_NR_IRQS, | ||
572 | .init_irq = pxa27x_init_irq, | 574 | .init_irq = pxa27x_init_irq, |
573 | .handle_irq = pxa27x_handle_irq, | 575 | .handle_irq = pxa27x_handle_irq, |
574 | .timer = &pxa_timer, | 576 | .timer = &pxa_timer, |
diff --git a/arch/arm/mach-pxa/viper.c b/arch/arm/mach-pxa/viper.c index 023d6ca789de..3143c3910c7d 100644 --- a/arch/arm/mach-pxa/viper.c +++ b/arch/arm/mach-pxa/viper.c | |||
@@ -994,6 +994,7 @@ MACHINE_START(VIPER, "Arcom/Eurotech VIPER SBC") | |||
994 | /* Maintainer: Marc Zyngier <maz@misterjones.org> */ | 994 | /* Maintainer: Marc Zyngier <maz@misterjones.org> */ |
995 | .atag_offset = 0x100, | 995 | .atag_offset = 0x100, |
996 | .map_io = viper_map_io, | 996 | .map_io = viper_map_io, |
997 | .nr_irqs = PXA_NR_IRQS, | ||
997 | .init_irq = viper_init_irq, | 998 | .init_irq = viper_init_irq, |
998 | .handle_irq = pxa25x_handle_irq, | 999 | .handle_irq = pxa25x_handle_irq, |
999 | .timer = &pxa_timer, | 1000 | .timer = &pxa_timer, |
diff --git a/arch/arm/mach-pxa/vpac270.c b/arch/arm/mach-pxa/vpac270.c index 1f5cfa96f6d6..c57ab636ea9c 100644 --- a/arch/arm/mach-pxa/vpac270.c +++ b/arch/arm/mach-pxa/vpac270.c | |||
@@ -718,6 +718,7 @@ static void __init vpac270_init(void) | |||
718 | MACHINE_START(VPAC270, "Voipac PXA270") | 718 | MACHINE_START(VPAC270, "Voipac PXA270") |
719 | .atag_offset = 0x100, | 719 | .atag_offset = 0x100, |
720 | .map_io = pxa27x_map_io, | 720 | .map_io = pxa27x_map_io, |
721 | .nr_irqs = PXA_NR_IRQS, | ||
721 | .init_irq = pxa27x_init_irq, | 722 | .init_irq = pxa27x_init_irq, |
722 | .handle_irq = pxa27x_handle_irq, | 723 | .handle_irq = pxa27x_handle_irq, |
723 | .timer = &pxa_timer, | 724 | .timer = &pxa_timer, |
diff --git a/arch/arm/mach-pxa/xcep.c b/arch/arm/mach-pxa/xcep.c index 4bbe9a36fe74..4275713ccd10 100644 --- a/arch/arm/mach-pxa/xcep.c +++ b/arch/arm/mach-pxa/xcep.c | |||
@@ -182,6 +182,7 @@ MACHINE_START(XCEP, "Iskratel XCEP") | |||
182 | .atag_offset = 0x100, | 182 | .atag_offset = 0x100, |
183 | .init_machine = xcep_init, | 183 | .init_machine = xcep_init, |
184 | .map_io = pxa25x_map_io, | 184 | .map_io = pxa25x_map_io, |
185 | .nr_irqs = PXA_NR_IRQS, | ||
185 | .init_irq = pxa25x_init_irq, | 186 | .init_irq = pxa25x_init_irq, |
186 | .handle_irq = pxa25x_handle_irq, | 187 | .handle_irq = pxa25x_handle_irq, |
187 | .timer = &pxa_timer, | 188 | .timer = &pxa_timer, |
diff --git a/arch/arm/mach-pxa/z2.c b/arch/arm/mach-pxa/z2.c index b6476848b561..fa8619970841 100644 --- a/arch/arm/mach-pxa/z2.c +++ b/arch/arm/mach-pxa/z2.c | |||
@@ -721,6 +721,7 @@ static void __init z2_init(void) | |||
721 | MACHINE_START(ZIPIT2, "Zipit Z2") | 721 | MACHINE_START(ZIPIT2, "Zipit Z2") |
722 | .atag_offset = 0x100, | 722 | .atag_offset = 0x100, |
723 | .map_io = pxa27x_map_io, | 723 | .map_io = pxa27x_map_io, |
724 | .nr_irqs = PXA_NR_IRQS, | ||
724 | .init_irq = pxa27x_init_irq, | 725 | .init_irq = pxa27x_init_irq, |
725 | .handle_irq = pxa27x_handle_irq, | 726 | .handle_irq = pxa27x_handle_irq, |
726 | .timer = &pxa_timer, | 727 | .timer = &pxa_timer, |
diff --git a/arch/arm/mach-shmobile/Kconfig b/arch/arm/mach-shmobile/Kconfig index 060e5644c49c..34560cab45d9 100644 --- a/arch/arm/mach-shmobile/Kconfig +++ b/arch/arm/mach-shmobile/Kconfig | |||
@@ -100,6 +100,10 @@ config MACH_MARZEN | |||
100 | 100 | ||
101 | comment "SH-Mobile System Configuration" | 101 | comment "SH-Mobile System Configuration" |
102 | 102 | ||
103 | config CPU_HAS_INTEVT | ||
104 | bool | ||
105 | default y | ||
106 | |||
103 | menu "Memory configuration" | 107 | menu "Memory configuration" |
104 | 108 | ||
105 | config MEMORY_START | 109 | config MEMORY_START |
diff --git a/arch/arm/mach-shmobile/board-ag5evm.c b/arch/arm/mach-shmobile/board-ag5evm.c index eff8a96c75ee..e922e92111cd 100644 --- a/arch/arm/mach-shmobile/board-ag5evm.c +++ b/arch/arm/mach-shmobile/board-ag5evm.c | |||
@@ -42,6 +42,7 @@ | |||
42 | #include <video/sh_mipi_dsi.h> | 42 | #include <video/sh_mipi_dsi.h> |
43 | #include <sound/sh_fsi.h> | 43 | #include <sound/sh_fsi.h> |
44 | #include <mach/hardware.h> | 44 | #include <mach/hardware.h> |
45 | #include <mach/irqs.h> | ||
45 | #include <mach/sh73a0.h> | 46 | #include <mach/sh73a0.h> |
46 | #include <mach/common.h> | 47 | #include <mach/common.h> |
47 | #include <asm/mach-types.h> | 48 | #include <asm/mach-types.h> |
diff --git a/arch/arm/mach-shmobile/board-bonito.c b/arch/arm/mach-shmobile/board-bonito.c index 4d2201622323..df9a65382443 100644 --- a/arch/arm/mach-shmobile/board-bonito.c +++ b/arch/arm/mach-shmobile/board-bonito.c | |||
@@ -34,6 +34,7 @@ | |||
34 | #include <asm/mach/time.h> | 34 | #include <asm/mach/time.h> |
35 | #include <asm/hardware/cache-l2x0.h> | 35 | #include <asm/hardware/cache-l2x0.h> |
36 | #include <mach/r8a7740.h> | 36 | #include <mach/r8a7740.h> |
37 | #include <mach/irqs.h> | ||
37 | #include <video/sh_mobile_lcdc.h> | 38 | #include <video/sh_mobile_lcdc.h> |
38 | 39 | ||
39 | /* | 40 | /* |
diff --git a/arch/arm/mach-shmobile/board-g3evm.c b/arch/arm/mach-shmobile/board-g3evm.c index 72d557281b1f..6dbdc428c244 100644 --- a/arch/arm/mach-shmobile/board-g3evm.c +++ b/arch/arm/mach-shmobile/board-g3evm.c | |||
@@ -33,6 +33,7 @@ | |||
33 | #include <linux/input.h> | 33 | #include <linux/input.h> |
34 | #include <linux/input/sh_keysc.h> | 34 | #include <linux/input/sh_keysc.h> |
35 | #include <linux/dma-mapping.h> | 35 | #include <linux/dma-mapping.h> |
36 | #include <mach/irqs.h> | ||
36 | #include <mach/sh7367.h> | 37 | #include <mach/sh7367.h> |
37 | #include <mach/common.h> | 38 | #include <mach/common.h> |
38 | #include <asm/mach-types.h> | 39 | #include <asm/mach-types.h> |
diff --git a/arch/arm/mach-shmobile/board-g4evm.c b/arch/arm/mach-shmobile/board-g4evm.c index 2220b885cff5..2936ccc95950 100644 --- a/arch/arm/mach-shmobile/board-g4evm.c +++ b/arch/arm/mach-shmobile/board-g4evm.c | |||
@@ -34,6 +34,7 @@ | |||
34 | #include <linux/mmc/sh_mobile_sdhi.h> | 34 | #include <linux/mmc/sh_mobile_sdhi.h> |
35 | #include <linux/gpio.h> | 35 | #include <linux/gpio.h> |
36 | #include <linux/dma-mapping.h> | 36 | #include <linux/dma-mapping.h> |
37 | #include <mach/irqs.h> | ||
37 | #include <mach/sh7377.h> | 38 | #include <mach/sh7377.h> |
38 | #include <mach/common.h> | 39 | #include <mach/common.h> |
39 | #include <asm/mach-types.h> | 40 | #include <asm/mach-types.h> |
diff --git a/arch/arm/mach-shmobile/board-kota2.c b/arch/arm/mach-shmobile/board-kota2.c index 857ceeec1bb0..c71780b2232a 100644 --- a/arch/arm/mach-shmobile/board-kota2.c +++ b/arch/arm/mach-shmobile/board-kota2.c | |||
@@ -39,6 +39,7 @@ | |||
39 | #include <linux/mfd/tmio.h> | 39 | #include <linux/mfd/tmio.h> |
40 | #include <linux/mmc/sh_mobile_sdhi.h> | 40 | #include <linux/mmc/sh_mobile_sdhi.h> |
41 | #include <mach/hardware.h> | 41 | #include <mach/hardware.h> |
42 | #include <mach/irqs.h> | ||
42 | #include <mach/sh73a0.h> | 43 | #include <mach/sh73a0.h> |
43 | #include <mach/common.h> | 44 | #include <mach/common.h> |
44 | #include <asm/mach-types.h> | 45 | #include <asm/mach-types.h> |
diff --git a/arch/arm/mach-shmobile/board-mackerel.c b/arch/arm/mach-shmobile/board-mackerel.c index 9b42fbd10f8e..73f00971d0da 100644 --- a/arch/arm/mach-shmobile/board-mackerel.c +++ b/arch/arm/mach-shmobile/board-mackerel.c | |||
@@ -55,6 +55,7 @@ | |||
55 | #include <sound/sh_fsi.h> | 55 | #include <sound/sh_fsi.h> |
56 | 56 | ||
57 | #include <mach/common.h> | 57 | #include <mach/common.h> |
58 | #include <mach/irqs.h> | ||
58 | #include <mach/sh7372.h> | 59 | #include <mach/sh7372.h> |
59 | 60 | ||
60 | #include <asm/mach/arch.h> | 61 | #include <asm/mach/arch.h> |
diff --git a/arch/arm/mach-shmobile/board-marzen.c b/arch/arm/mach-shmobile/board-marzen.c index f0e02c0ce99f..3b2e88ae26be 100644 --- a/arch/arm/mach-shmobile/board-marzen.c +++ b/arch/arm/mach-shmobile/board-marzen.c | |||
@@ -31,6 +31,7 @@ | |||
31 | #include <mach/hardware.h> | 31 | #include <mach/hardware.h> |
32 | #include <mach/r8a7779.h> | 32 | #include <mach/r8a7779.h> |
33 | #include <mach/common.h> | 33 | #include <mach/common.h> |
34 | #include <mach/irqs.h> | ||
34 | #include <asm/mach-types.h> | 35 | #include <asm/mach-types.h> |
35 | #include <asm/mach/arch.h> | 36 | #include <asm/mach/arch.h> |
36 | #include <asm/mach/map.h> | 37 | #include <asm/mach/map.h> |
diff --git a/arch/arm/mach-shmobile/include/mach/irqs.h b/arch/arm/mach-shmobile/include/mach/irqs.h index dcb714f4d75a..4e686cc201fc 100644 --- a/arch/arm/mach-shmobile/include/mach/irqs.h +++ b/arch/arm/mach-shmobile/include/mach/irqs.h | |||
@@ -1,15 +1,11 @@ | |||
1 | #ifndef __ASM_MACH_IRQS_H | 1 | #ifndef __ASM_MACH_IRQS_H |
2 | #define __ASM_MACH_IRQS_H | 2 | #define __ASM_MACH_IRQS_H |
3 | 3 | ||
4 | #define NR_IRQS 1024 | 4 | #include <linux/sh_intc.h> |
5 | 5 | ||
6 | /* GIC */ | 6 | /* GIC */ |
7 | #define gic_spi(nr) ((nr) + 32) | 7 | #define gic_spi(nr) ((nr) + 32) |
8 | 8 | ||
9 | /* INTCA */ | ||
10 | #define evt2irq(evt) (((evt) >> 5) - 16) | ||
11 | #define irq2evt(irq) (((irq) + 16) << 5) | ||
12 | |||
13 | /* INTCS */ | 9 | /* INTCS */ |
14 | #define INTCS_VECT_BASE 0x2200 | 10 | #define INTCS_VECT_BASE 0x2200 |
15 | #define INTCS_VECT(n, vect) INTC_VECT((n), INTCS_VECT_BASE + (vect)) | 11 | #define INTCS_VECT(n, vect) INTC_VECT((n), INTCS_VECT_BASE + (vect)) |
diff --git a/arch/arm/mach-shmobile/intc-r8a7740.c b/arch/arm/mach-shmobile/intc-r8a7740.c index 272c84c20c83..09c42afcb22d 100644 --- a/arch/arm/mach-shmobile/intc-r8a7740.c +++ b/arch/arm/mach-shmobile/intc-r8a7740.c | |||
@@ -25,6 +25,7 @@ | |||
25 | #include <linux/io.h> | 25 | #include <linux/io.h> |
26 | #include <linux/sh_intc.h> | 26 | #include <linux/sh_intc.h> |
27 | #include <mach/intc.h> | 27 | #include <mach/intc.h> |
28 | #include <mach/irqs.h> | ||
28 | #include <asm/mach-types.h> | 29 | #include <asm/mach-types.h> |
29 | #include <asm/mach/arch.h> | 30 | #include <asm/mach/arch.h> |
30 | 31 | ||
diff --git a/arch/arm/mach-shmobile/intc-sh7367.c b/arch/arm/mach-shmobile/intc-sh7367.c index cfde9bfc3669..5bf776495b75 100644 --- a/arch/arm/mach-shmobile/intc-sh7367.c +++ b/arch/arm/mach-shmobile/intc-sh7367.c | |||
@@ -23,6 +23,7 @@ | |||
23 | #include <linux/io.h> | 23 | #include <linux/io.h> |
24 | #include <linux/sh_intc.h> | 24 | #include <linux/sh_intc.h> |
25 | #include <mach/intc.h> | 25 | #include <mach/intc.h> |
26 | #include <mach/irqs.h> | ||
26 | #include <asm/mach-types.h> | 27 | #include <asm/mach-types.h> |
27 | #include <asm/mach/arch.h> | 28 | #include <asm/mach/arch.h> |
28 | 29 | ||
diff --git a/arch/arm/mach-shmobile/intc-sh7372.c b/arch/arm/mach-shmobile/intc-sh7372.c index 89afcaba99a1..6447e0af52d4 100644 --- a/arch/arm/mach-shmobile/intc-sh7372.c +++ b/arch/arm/mach-shmobile/intc-sh7372.c | |||
@@ -23,6 +23,7 @@ | |||
23 | #include <linux/io.h> | 23 | #include <linux/io.h> |
24 | #include <linux/sh_intc.h> | 24 | #include <linux/sh_intc.h> |
25 | #include <mach/intc.h> | 25 | #include <mach/intc.h> |
26 | #include <mach/irqs.h> | ||
26 | #include <asm/mach-types.h> | 27 | #include <asm/mach-types.h> |
27 | #include <asm/mach/arch.h> | 28 | #include <asm/mach/arch.h> |
28 | 29 | ||
diff --git a/arch/arm/mach-shmobile/intc-sh7377.c b/arch/arm/mach-shmobile/intc-sh7377.c index 2af4e6e9bc5b..b84a460a3405 100644 --- a/arch/arm/mach-shmobile/intc-sh7377.c +++ b/arch/arm/mach-shmobile/intc-sh7377.c | |||
@@ -23,6 +23,7 @@ | |||
23 | #include <linux/io.h> | 23 | #include <linux/io.h> |
24 | #include <linux/sh_intc.h> | 24 | #include <linux/sh_intc.h> |
25 | #include <mach/intc.h> | 25 | #include <mach/intc.h> |
26 | #include <mach/irqs.h> | ||
26 | #include <asm/mach-types.h> | 27 | #include <asm/mach-types.h> |
27 | #include <asm/mach/arch.h> | 28 | #include <asm/mach/arch.h> |
28 | 29 | ||
diff --git a/arch/arm/mach-shmobile/intc-sh73a0.c b/arch/arm/mach-shmobile/intc-sh73a0.c index 1eda6b0b69e3..9a8207c6d31f 100644 --- a/arch/arm/mach-shmobile/intc-sh73a0.c +++ b/arch/arm/mach-shmobile/intc-sh73a0.c | |||
@@ -23,6 +23,7 @@ | |||
23 | #include <linux/io.h> | 23 | #include <linux/io.h> |
24 | #include <linux/sh_intc.h> | 24 | #include <linux/sh_intc.h> |
25 | #include <mach/intc.h> | 25 | #include <mach/intc.h> |
26 | #include <mach/irqs.h> | ||
26 | #include <mach/sh73a0.h> | 27 | #include <mach/sh73a0.h> |
27 | #include <asm/hardware/gic.h> | 28 | #include <asm/hardware/gic.h> |
28 | #include <asm/mach-types.h> | 29 | #include <asm/mach-types.h> |
diff --git a/arch/arm/mach-shmobile/setup-r8a7740.c b/arch/arm/mach-shmobile/setup-r8a7740.c index 986dca6b3fad..fa15d81267ef 100644 --- a/arch/arm/mach-shmobile/setup-r8a7740.c +++ b/arch/arm/mach-shmobile/setup-r8a7740.c | |||
@@ -25,6 +25,7 @@ | |||
25 | #include <linux/serial_sci.h> | 25 | #include <linux/serial_sci.h> |
26 | #include <linux/sh_timer.h> | 26 | #include <linux/sh_timer.h> |
27 | #include <mach/r8a7740.h> | 27 | #include <mach/r8a7740.h> |
28 | #include <mach/irqs.h> | ||
28 | #include <asm/mach-types.h> | 29 | #include <asm/mach-types.h> |
29 | #include <asm/mach/arch.h> | 30 | #include <asm/mach/arch.h> |
30 | 31 | ||
diff --git a/arch/arm/mach-shmobile/setup-r8a7779.c b/arch/arm/mach-shmobile/setup-r8a7779.c index 4725663bd032..55df21add2d4 100644 --- a/arch/arm/mach-shmobile/setup-r8a7779.c +++ b/arch/arm/mach-shmobile/setup-r8a7779.c | |||
@@ -29,6 +29,7 @@ | |||
29 | #include <linux/sh_intc.h> | 29 | #include <linux/sh_intc.h> |
30 | #include <linux/sh_timer.h> | 30 | #include <linux/sh_timer.h> |
31 | #include <mach/hardware.h> | 31 | #include <mach/hardware.h> |
32 | #include <mach/irqs.h> | ||
32 | #include <mach/r8a7779.h> | 33 | #include <mach/r8a7779.h> |
33 | #include <mach/common.h> | 34 | #include <mach/common.h> |
34 | #include <asm/mach-types.h> | 35 | #include <asm/mach-types.h> |
diff --git a/arch/arm/mach-shmobile/setup-sh7367.c b/arch/arm/mach-shmobile/setup-sh7367.c index e546017f15de..8e84819833a8 100644 --- a/arch/arm/mach-shmobile/setup-sh7367.c +++ b/arch/arm/mach-shmobile/setup-sh7367.c | |||
@@ -29,6 +29,7 @@ | |||
29 | #include <linux/serial_sci.h> | 29 | #include <linux/serial_sci.h> |
30 | #include <linux/sh_timer.h> | 30 | #include <linux/sh_timer.h> |
31 | #include <mach/hardware.h> | 31 | #include <mach/hardware.h> |
32 | #include <mach/irqs.h> | ||
32 | #include <asm/mach-types.h> | 33 | #include <asm/mach-types.h> |
33 | #include <asm/mach/arch.h> | 34 | #include <asm/mach/arch.h> |
34 | 35 | ||
diff --git a/arch/arm/mach-shmobile/setup-sh7372.c b/arch/arm/mach-shmobile/setup-sh7372.c index 6fcf304d3cdf..420d25c0d742 100644 --- a/arch/arm/mach-shmobile/setup-sh7372.c +++ b/arch/arm/mach-shmobile/setup-sh7372.c | |||
@@ -32,6 +32,7 @@ | |||
32 | #include <linux/sh_timer.h> | 32 | #include <linux/sh_timer.h> |
33 | #include <linux/pm_domain.h> | 33 | #include <linux/pm_domain.h> |
34 | #include <mach/hardware.h> | 34 | #include <mach/hardware.h> |
35 | #include <mach/irqs.h> | ||
35 | #include <mach/sh7372.h> | 36 | #include <mach/sh7372.h> |
36 | #include <asm/mach-types.h> | 37 | #include <asm/mach-types.h> |
37 | #include <asm/mach/arch.h> | 38 | #include <asm/mach/arch.h> |
diff --git a/arch/arm/mach-shmobile/setup-sh7377.c b/arch/arm/mach-shmobile/setup-sh7377.c index bb405b8e459b..747ed8ef84ef 100644 --- a/arch/arm/mach-shmobile/setup-sh7377.c +++ b/arch/arm/mach-shmobile/setup-sh7377.c | |||
@@ -30,6 +30,7 @@ | |||
30 | #include <linux/sh_intc.h> | 30 | #include <linux/sh_intc.h> |
31 | #include <linux/sh_timer.h> | 31 | #include <linux/sh_timer.h> |
32 | #include <mach/hardware.h> | 32 | #include <mach/hardware.h> |
33 | #include <mach/irqs.h> | ||
33 | #include <asm/mach-types.h> | 34 | #include <asm/mach-types.h> |
34 | #include <asm/mach/arch.h> | 35 | #include <asm/mach/arch.h> |
35 | 36 | ||
diff --git a/arch/arm/mach-shmobile/setup-sh73a0.c b/arch/arm/mach-shmobile/setup-sh73a0.c index 20e71e5cace4..7bf740e29a3a 100644 --- a/arch/arm/mach-shmobile/setup-sh73a0.c +++ b/arch/arm/mach-shmobile/setup-sh73a0.c | |||
@@ -31,6 +31,7 @@ | |||
31 | #include <linux/sh_intc.h> | 31 | #include <linux/sh_intc.h> |
32 | #include <linux/sh_timer.h> | 32 | #include <linux/sh_timer.h> |
33 | #include <mach/hardware.h> | 33 | #include <mach/hardware.h> |
34 | #include <mach/irqs.h> | ||
34 | #include <mach/sh73a0.h> | 35 | #include <mach/sh73a0.h> |
35 | #include <asm/mach-types.h> | 36 | #include <asm/mach-types.h> |
36 | #include <asm/mach/arch.h> | 37 | #include <asm/mach/arch.h> |
diff --git a/arch/c6x/Kconfig b/arch/c6x/Kconfig index 26e67f0f0051..2f58c61e2812 100644 --- a/arch/c6x/Kconfig +++ b/arch/c6x/Kconfig | |||
@@ -11,7 +11,7 @@ config TMS320C6X | |||
11 | select HAVE_DMA_API_DEBUG | 11 | select HAVE_DMA_API_DEBUG |
12 | select HAVE_GENERIC_HARDIRQS | 12 | select HAVE_GENERIC_HARDIRQS |
13 | select HAVE_MEMBLOCK | 13 | select HAVE_MEMBLOCK |
14 | select HAVE_SPARSE_IRQ | 14 | select SPARSE_IRQ |
15 | select OF | 15 | select OF |
16 | select OF_EARLY_FLATTREE | 16 | select OF_EARLY_FLATTREE |
17 | 17 | ||
diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig index 1919634a9b32..06c1cf0f24a6 100644 --- a/arch/powerpc/Kconfig +++ b/arch/powerpc/Kconfig | |||
@@ -133,7 +133,7 @@ config PPC | |||
133 | select HAVE_REGS_AND_STACK_ACCESS_API | 133 | select HAVE_REGS_AND_STACK_ACCESS_API |
134 | select HAVE_HW_BREAKPOINT if PERF_EVENTS && PPC_BOOK3S_64 | 134 | select HAVE_HW_BREAKPOINT if PERF_EVENTS && PPC_BOOK3S_64 |
135 | select HAVE_GENERIC_HARDIRQS | 135 | select HAVE_GENERIC_HARDIRQS |
136 | select HAVE_SPARSE_IRQ | 136 | select MAY_HAVE_SPARSE_IRQ |
137 | select IRQ_PER_CPU | 137 | select IRQ_PER_CPU |
138 | select GENERIC_IRQ_SHOW | 138 | select GENERIC_IRQ_SHOW |
139 | select GENERIC_IRQ_SHOW_LEVEL | 139 | select GENERIC_IRQ_SHOW_LEVEL |
diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig index 3c8db65c89e5..21b82a8cca21 100644 --- a/arch/sh/Kconfig +++ b/arch/sh/Kconfig | |||
@@ -22,7 +22,7 @@ config SUPERH | |||
22 | select HAVE_SYSCALL_TRACEPOINTS | 22 | select HAVE_SYSCALL_TRACEPOINTS |
23 | select HAVE_REGS_AND_STACK_ACCESS_API | 23 | select HAVE_REGS_AND_STACK_ACCESS_API |
24 | select HAVE_GENERIC_HARDIRQS | 24 | select HAVE_GENERIC_HARDIRQS |
25 | select HAVE_SPARSE_IRQ | 25 | select MAY_HAVE_SPARSE_IRQ |
26 | select IRQ_FORCED_THREADING | 26 | select IRQ_FORCED_THREADING |
27 | select RTC_LIB | 27 | select RTC_LIB |
28 | select GENERIC_ATOMIC64 | 28 | select GENERIC_ATOMIC64 |
diff --git a/arch/sh/include/asm/irq.h b/arch/sh/include/asm/irq.h index 45d08b6a5ef7..2a62017eb275 100644 --- a/arch/sh/include/asm/irq.h +++ b/arch/sh/include/asm/irq.h | |||
@@ -21,17 +21,6 @@ | |||
21 | #define NO_IRQ_IGNORE ((unsigned int)-1) | 21 | #define NO_IRQ_IGNORE ((unsigned int)-1) |
22 | 22 | ||
23 | /* | 23 | /* |
24 | * Convert back and forth between INTEVT and IRQ values. | ||
25 | */ | ||
26 | #ifdef CONFIG_CPU_HAS_INTEVT | ||
27 | #define evt2irq(evt) (((evt) >> 5) - 16) | ||
28 | #define irq2evt(irq) (((irq) + 16) << 5) | ||
29 | #else | ||
30 | #define evt2irq(evt) (evt) | ||
31 | #define irq2evt(irq) (irq) | ||
32 | #endif | ||
33 | |||
34 | /* | ||
35 | * Simple Mask Register Support | 24 | * Simple Mask Register Support |
36 | */ | 25 | */ |
37 | extern void make_maskreg_irq(unsigned int irq); | 26 | extern void make_maskreg_irq(unsigned int irq); |
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig index 864cc6e6ac8e..fb2da445945f 100644 --- a/arch/x86/Kconfig +++ b/arch/x86/Kconfig | |||
@@ -69,7 +69,6 @@ config X86 | |||
69 | select HAVE_ARCH_JUMP_LABEL | 69 | select HAVE_ARCH_JUMP_LABEL |
70 | select HAVE_TEXT_POKE_SMP | 70 | select HAVE_TEXT_POKE_SMP |
71 | select HAVE_GENERIC_HARDIRQS | 71 | select HAVE_GENERIC_HARDIRQS |
72 | select HAVE_SPARSE_IRQ | ||
73 | select SPARSE_IRQ | 72 | select SPARSE_IRQ |
74 | select GENERIC_FIND_FIRST_BIT | 73 | select GENERIC_FIND_FIRST_BIT |
75 | select GENERIC_IRQ_PROBE | 74 | select GENERIC_IRQ_PROBE |
diff --git a/drivers/gpio/gpio-pxa.c b/drivers/gpio/gpio-pxa.c index b2d3ee1d183a..5689ce62fd81 100644 --- a/drivers/gpio/gpio-pxa.c +++ b/drivers/gpio/gpio-pxa.c | |||
@@ -22,6 +22,8 @@ | |||
22 | #include <linux/syscore_ops.h> | 22 | #include <linux/syscore_ops.h> |
23 | #include <linux/slab.h> | 23 | #include <linux/slab.h> |
24 | 24 | ||
25 | #include <mach/irqs.h> | ||
26 | |||
25 | /* | 27 | /* |
26 | * We handle the GPIOs by banks, each bank covers up to 32 GPIOs with | 28 | * We handle the GPIOs by banks, each bank covers up to 32 GPIOs with |
27 | * one set of registers. The register offsets are organized below: | 29 | * one set of registers. The register offsets are organized below: |
diff --git a/drivers/sh/intc/balancing.c b/drivers/sh/intc/balancing.c index cec7a96f2c09..bc780807ccb0 100644 --- a/drivers/sh/intc/balancing.c +++ b/drivers/sh/intc/balancing.c | |||
@@ -9,7 +9,7 @@ | |||
9 | */ | 9 | */ |
10 | #include "internals.h" | 10 | #include "internals.h" |
11 | 11 | ||
12 | static unsigned long dist_handle[NR_IRQS]; | 12 | static unsigned long dist_handle[INTC_NR_IRQS]; |
13 | 13 | ||
14 | void intc_balancing_enable(unsigned int irq) | 14 | void intc_balancing_enable(unsigned int irq) |
15 | { | 15 | { |
diff --git a/drivers/sh/intc/core.c b/drivers/sh/intc/core.c index e53e449b4eca..2fde8970dfd0 100644 --- a/drivers/sh/intc/core.c +++ b/drivers/sh/intc/core.c | |||
@@ -42,7 +42,7 @@ unsigned int nr_intc_controllers; | |||
42 | * - this needs to be at least 2 for 5-bit priorities on 7780 | 42 | * - this needs to be at least 2 for 5-bit priorities on 7780 |
43 | */ | 43 | */ |
44 | static unsigned int default_prio_level = 2; /* 2 - 16 */ | 44 | static unsigned int default_prio_level = 2; /* 2 - 16 */ |
45 | static unsigned int intc_prio_level[NR_IRQS]; /* for now */ | 45 | static unsigned int intc_prio_level[INTC_NR_IRQS]; /* for now */ |
46 | 46 | ||
47 | unsigned int intc_get_dfl_prio_level(void) | 47 | unsigned int intc_get_dfl_prio_level(void) |
48 | { | 48 | { |
diff --git a/drivers/sh/intc/handle.c b/drivers/sh/intc/handle.c index 057ce56829bf..f461d5300b81 100644 --- a/drivers/sh/intc/handle.c +++ b/drivers/sh/intc/handle.c | |||
@@ -13,7 +13,7 @@ | |||
13 | #include <linux/spinlock.h> | 13 | #include <linux/spinlock.h> |
14 | #include "internals.h" | 14 | #include "internals.h" |
15 | 15 | ||
16 | static unsigned long ack_handle[NR_IRQS]; | 16 | static unsigned long ack_handle[INTC_NR_IRQS]; |
17 | 17 | ||
18 | static intc_enum __init intc_grp_id(struct intc_desc *desc, | 18 | static intc_enum __init intc_grp_id(struct intc_desc *desc, |
19 | intc_enum enum_id) | 19 | intc_enum enum_id) |
diff --git a/drivers/sh/intc/virq.c b/drivers/sh/intc/virq.c index c7ec49ffd9f6..93cec21e788b 100644 --- a/drivers/sh/intc/virq.c +++ b/drivers/sh/intc/virq.c | |||
@@ -17,7 +17,7 @@ | |||
17 | #include <linux/export.h> | 17 | #include <linux/export.h> |
18 | #include "internals.h" | 18 | #include "internals.h" |
19 | 19 | ||
20 | static struct intc_map_entry intc_irq_xlate[NR_IRQS]; | 20 | static struct intc_map_entry intc_irq_xlate[INTC_NR_IRQS]; |
21 | 21 | ||
22 | struct intc_virq_list { | 22 | struct intc_virq_list { |
23 | unsigned int irq; | 23 | unsigned int irq; |
diff --git a/include/linux/sh_intc.h b/include/linux/sh_intc.h index b160645f5599..6aed0805927f 100644 --- a/include/linux/sh_intc.h +++ b/include/linux/sh_intc.h | |||
@@ -3,6 +3,23 @@ | |||
3 | 3 | ||
4 | #include <linux/ioport.h> | 4 | #include <linux/ioport.h> |
5 | 5 | ||
6 | #ifdef CONFIG_SUPERH | ||
7 | #define INTC_NR_IRQS 512 | ||
8 | #else | ||
9 | #define INTC_NR_IRQS 1024 | ||
10 | #endif | ||
11 | |||
12 | /* | ||
13 | * Convert back and forth between INTEVT and IRQ values. | ||
14 | */ | ||
15 | #ifdef CONFIG_CPU_HAS_INTEVT | ||
16 | #define evt2irq(evt) (((evt) >> 5) - 16) | ||
17 | #define irq2evt(irq) (((irq) + 16) << 5) | ||
18 | #else | ||
19 | #define evt2irq(evt) (evt) | ||
20 | #define irq2evt(irq) (irq) | ||
21 | #endif | ||
22 | |||
6 | typedef unsigned char intc_enum; | 23 | typedef unsigned char intc_enum; |
7 | 24 | ||
8 | struct intc_vect { | 25 | struct intc_vect { |
diff --git a/kernel/irq/Kconfig b/kernel/irq/Kconfig index 5a38bf4de641..1f2dece9ad4c 100644 --- a/kernel/irq/Kconfig +++ b/kernel/irq/Kconfig | |||
@@ -13,7 +13,7 @@ config GENERIC_HARDIRQS | |||
13 | # Options selectable by the architecture code | 13 | # Options selectable by the architecture code |
14 | 14 | ||
15 | # Make sparse irq Kconfig switch below available | 15 | # Make sparse irq Kconfig switch below available |
16 | config HAVE_SPARSE_IRQ | 16 | config MAY_HAVE_SPARSE_IRQ |
17 | bool | 17 | bool |
18 | 18 | ||
19 | # Enable the generic irq autoprobe mechanism | 19 | # Enable the generic irq autoprobe mechanism |
@@ -61,8 +61,7 @@ config IRQ_FORCED_THREADING | |||
61 | bool | 61 | bool |
62 | 62 | ||
63 | config SPARSE_IRQ | 63 | config SPARSE_IRQ |
64 | bool "Support sparse irq numbering" | 64 | bool "Support sparse irq numbering" if MAY_HAVE_SPARSE_IRQ |
65 | depends on HAVE_SPARSE_IRQ | ||
66 | ---help--- | 65 | ---help--- |
67 | 66 | ||
68 | Sparse irq numbering is useful for distro kernels that want | 67 | Sparse irq numbering is useful for distro kernels that want |
diff --git a/sound/arm/pxa2xx-ac97-lib.c b/sound/arm/pxa2xx-ac97-lib.c index d1aa4218f129..0e9e82262479 100644 --- a/sound/arm/pxa2xx-ac97-lib.c +++ b/sound/arm/pxa2xx-ac97-lib.c | |||
@@ -21,7 +21,7 @@ | |||
21 | #include <sound/ac97_codec.h> | 21 | #include <sound/ac97_codec.h> |
22 | #include <sound/pxa2xx-lib.h> | 22 | #include <sound/pxa2xx-lib.h> |
23 | 23 | ||
24 | #include <asm/irq.h> | 24 | #include <mach/irqs.h> |
25 | #include <mach/regs-ac97.h> | 25 | #include <mach/regs-ac97.h> |
26 | #include <mach/audio.h> | 26 | #include <mach/audio.h> |
27 | 27 | ||