diff options
Diffstat (limited to 'arch/arc')
-rw-r--r-- | arch/arc/plat-arcfpga/Makefile | 2 | ||||
-rw-r--r-- | arch/arc/plat-arcfpga/include/plat/irq.h | 2 | ||||
-rw-r--r-- | arch/arc/plat-arcfpga/irq.c | 25 | ||||
-rw-r--r-- | arch/arc/plat-arcfpga/platform.c | 3 |
4 files changed, 1 insertions, 31 deletions
diff --git a/arch/arc/plat-arcfpga/Makefile b/arch/arc/plat-arcfpga/Makefile index 4d1bddc34b5b..66fd0ecd68b3 100644 --- a/arch/arc/plat-arcfpga/Makefile +++ b/arch/arc/plat-arcfpga/Makefile | |||
@@ -8,5 +8,5 @@ | |||
8 | 8 | ||
9 | KBUILD_CFLAGS += -Iarch/arc/plat-arcfpga/include | 9 | KBUILD_CFLAGS += -Iarch/arc/plat-arcfpga/include |
10 | 10 | ||
11 | obj-y := platform.o irq.o | 11 | obj-y := platform.o |
12 | obj-$(CONFIG_ISS_SMP_EXTN) += smp.o | 12 | obj-$(CONFIG_ISS_SMP_EXTN) += smp.o |
diff --git a/arch/arc/plat-arcfpga/include/plat/irq.h b/arch/arc/plat-arcfpga/include/plat/irq.h index 6adbc53c3a5b..2c9dea690ac4 100644 --- a/arch/arc/plat-arcfpga/include/plat/irq.h +++ b/arch/arc/plat-arcfpga/include/plat/irq.h | |||
@@ -24,6 +24,4 @@ | |||
24 | #define IDU_INTERRUPT_0 16 | 24 | #define IDU_INTERRUPT_0 16 |
25 | #endif | 25 | #endif |
26 | 26 | ||
27 | extern void __init plat_fpga_init_IRQ(void); | ||
28 | |||
29 | #endif | 27 | #endif |
diff --git a/arch/arc/plat-arcfpga/irq.c b/arch/arc/plat-arcfpga/irq.c deleted file mode 100644 index d2215fd889c2..000000000000 --- a/arch/arc/plat-arcfpga/irq.c +++ /dev/null | |||
@@ -1,25 +0,0 @@ | |||
1 | /* | ||
2 | * ARC FPGA Platform IRQ hookups | ||
3 | * | ||
4 | * Copyright (C) 2012 Synopsys, Inc. (www.synopsys.com) | ||
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 version 2 as | ||
8 | * published by the Free Software Foundation. | ||
9 | */ | ||
10 | |||
11 | #include <linux/interrupt.h> | ||
12 | #include <plat/irq.h> | ||
13 | |||
14 | void __init plat_fpga_init_IRQ(void) | ||
15 | { | ||
16 | /* | ||
17 | * SMP Hack because UART IRQ hardwired to cpu0 (boot-cpu) but if the | ||
18 | * request_irq() comes from any other CPU, the low level IRQ unamsking | ||
19 | * essential for getting Interrupts won't be enabled on cpu0, locking | ||
20 | * up the UART state machine. | ||
21 | */ | ||
22 | #ifdef CONFIG_SMP | ||
23 | arch_unmask_irq(UART0_IRQ); | ||
24 | #endif | ||
25 | } | ||
diff --git a/arch/arc/plat-arcfpga/platform.c b/arch/arc/plat-arcfpga/platform.c index 61c7e5997387..8c643c2967df 100644 --- a/arch/arc/plat-arcfpga/platform.c +++ b/arch/arc/plat-arcfpga/platform.c | |||
@@ -150,7 +150,6 @@ MACHINE_START(ANGEL4, "angel4") | |||
150 | .dt_compat = aa4_compat, | 150 | .dt_compat = aa4_compat, |
151 | .init_early = plat_fpga_early_init, | 151 | .init_early = plat_fpga_early_init, |
152 | .init_machine = plat_fpga_populate_dev, | 152 | .init_machine = plat_fpga_populate_dev, |
153 | .init_irq = plat_fpga_init_IRQ, | ||
154 | #ifdef CONFIG_ISS_SMP_EXTN | 153 | #ifdef CONFIG_ISS_SMP_EXTN |
155 | .init_smp = iss_model_init_smp, | 154 | .init_smp = iss_model_init_smp, |
156 | #endif | 155 | #endif |
@@ -165,7 +164,6 @@ MACHINE_START(ML509, "ml509") | |||
165 | .dt_compat = ml509_compat, | 164 | .dt_compat = ml509_compat, |
166 | .init_early = plat_fpga_early_init, | 165 | .init_early = plat_fpga_early_init, |
167 | .init_machine = plat_fpga_populate_dev, | 166 | .init_machine = plat_fpga_populate_dev, |
168 | .init_irq = plat_fpga_init_IRQ, | ||
169 | #ifdef CONFIG_SMP | 167 | #ifdef CONFIG_SMP |
170 | .init_smp = iss_model_init_smp, | 168 | .init_smp = iss_model_init_smp, |
171 | #endif | 169 | #endif |
@@ -180,5 +178,4 @@ MACHINE_START(NSIMOSCI, "nsimosci") | |||
180 | .dt_compat = nsimosci_compat, | 178 | .dt_compat = nsimosci_compat, |
181 | .init_early = NULL, | 179 | .init_early = NULL, |
182 | .init_machine = plat_fpga_populate_dev, | 180 | .init_machine = plat_fpga_populate_dev, |
183 | .init_irq = NULL, | ||
184 | MACHINE_END | 181 | MACHINE_END |