aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRalf Baechle <ralf@linux-mips.org>2015-05-26 12:20:06 -0400
committerRalf Baechle <ralf@linux-mips.org>2015-06-21 15:52:50 -0400
commit67e38cf2933e904426b428431961e4880d6d4b90 (patch)
tree35244f59141835bc8dd5bf5b60a8fcaedc6309d8
parentffb1843d059c5627fb8982eb4ab29219e7503fb2 (diff)
MIPS/IRQCHIP: Move irq_chip from arch/mips to drivers/irqchip.
While at it, rename it because in drivers/irqchip no longer every CPU is a MIPS. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
-rw-r--r--arch/mips/Kconfig60
-rw-r--r--arch/mips/include/asm/irqflags.h4
-rw-r--r--arch/mips/include/asm/mach-generic/irq.h4
-rw-r--r--arch/mips/include/asm/txx9irq.h2
-rw-r--r--arch/mips/kernel/Makefile1
-rw-r--r--arch/mips/loongson/Kconfig6
-rw-r--r--arch/mips/loongson1/Kconfig2
-rw-r--r--arch/mips/sibyte/Kconfig16
-rw-r--r--arch/mips/txx9/Kconfig2
-rw-r--r--arch/mips/vr41xx/Kconfig10
-rw-r--r--drivers/irqchip/Kconfig5
-rw-r--r--drivers/irqchip/Makefile1
-rw-r--r--drivers/irqchip/irq-mips-cpu.c (renamed from arch/mips/kernel/irq_cpu.c)0
13 files changed, 57 insertions, 56 deletions
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
index 9501d814ded5..5fcfc6d989f4 100644
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -71,7 +71,7 @@ config MIPS_ALCHEMY
71 select ARCH_PHYS_ADDR_T_64BIT 71 select ARCH_PHYS_ADDR_T_64BIT
72 select CEVT_R4K 72 select CEVT_R4K
73 select CSRC_R4K 73 select CSRC_R4K
74 select IRQ_CPU 74 select IRQ_MIPS_CPU
75 select DMA_MAYBE_COHERENT # Au1000,1500,1100 aren't, rest is 75 select DMA_MAYBE_COHERENT # Au1000,1500,1100 aren't, rest is
76 select SYS_HAS_CPU_MIPS32_R1 76 select SYS_HAS_CPU_MIPS32_R1
77 select SYS_SUPPORTS_32BIT_KERNEL 77 select SYS_SUPPORTS_32BIT_KERNEL
@@ -86,7 +86,7 @@ config AR7
86 select DMA_NONCOHERENT 86 select DMA_NONCOHERENT
87 select CEVT_R4K 87 select CEVT_R4K
88 select CSRC_R4K 88 select CSRC_R4K
89 select IRQ_CPU 89 select IRQ_MIPS_CPU
90 select NO_EXCEPT_FILL 90 select NO_EXCEPT_FILL
91 select SWAP_IO_SPACE 91 select SWAP_IO_SPACE
92 select SYS_HAS_CPU_MIPS32_R1 92 select SYS_HAS_CPU_MIPS32_R1
@@ -107,7 +107,7 @@ config ATH25
107 select CEVT_R4K 107 select CEVT_R4K
108 select CSRC_R4K 108 select CSRC_R4K
109 select DMA_NONCOHERENT 109 select DMA_NONCOHERENT
110 select IRQ_CPU 110 select IRQ_MIPS_CPU
111 select IRQ_DOMAIN 111 select IRQ_DOMAIN
112 select SYS_HAS_CPU_MIPS32_R1 112 select SYS_HAS_CPU_MIPS32_R1
113 select SYS_SUPPORTS_BIG_ENDIAN 113 select SYS_SUPPORTS_BIG_ENDIAN
@@ -125,7 +125,7 @@ config ATH79
125 select DMA_NONCOHERENT 125 select DMA_NONCOHERENT
126 select HAVE_CLK 126 select HAVE_CLK
127 select CLKDEV_LOOKUP 127 select CLKDEV_LOOKUP
128 select IRQ_CPU 128 select IRQ_MIPS_CPU
129 select MIPS_MACHINE 129 select MIPS_MACHINE
130 select SYS_HAS_CPU_MIPS32_R2 130 select SYS_HAS_CPU_MIPS32_R2
131 select SYS_HAS_EARLY_PRINTK 131 select SYS_HAS_EARLY_PRINTK
@@ -147,7 +147,7 @@ config BMIPS_GENERIC
147 select BCM7038_L1_IRQ 147 select BCM7038_L1_IRQ
148 select BCM7120_L2_IRQ 148 select BCM7120_L2_IRQ
149 select BRCMSTB_L2_IRQ 149 select BRCMSTB_L2_IRQ
150 select IRQ_CPU 150 select IRQ_MIPS_CPU
151 select RAW_IRQ_ACCESSORS 151 select RAW_IRQ_ACCESSORS
152 select DMA_NONCOHERENT 152 select DMA_NONCOHERENT
153 select SYS_SUPPORTS_32BIT_KERNEL 153 select SYS_SUPPORTS_32BIT_KERNEL
@@ -177,7 +177,7 @@ config BCM47XX
177 select CSRC_R4K 177 select CSRC_R4K
178 select DMA_NONCOHERENT 178 select DMA_NONCOHERENT
179 select HW_HAS_PCI 179 select HW_HAS_PCI
180 select IRQ_CPU 180 select IRQ_MIPS_CPU
181 select SYS_HAS_CPU_MIPS32_R1 181 select SYS_HAS_CPU_MIPS32_R1
182 select NO_EXCEPT_FILL 182 select NO_EXCEPT_FILL
183 select SYS_SUPPORTS_32BIT_KERNEL 183 select SYS_SUPPORTS_32BIT_KERNEL
@@ -197,7 +197,7 @@ config BCM63XX
197 select CSRC_R4K 197 select CSRC_R4K
198 select SYNC_R4K 198 select SYNC_R4K
199 select DMA_NONCOHERENT 199 select DMA_NONCOHERENT
200 select IRQ_CPU 200 select IRQ_MIPS_CPU
201 select SYS_SUPPORTS_32BIT_KERNEL 201 select SYS_SUPPORTS_32BIT_KERNEL
202 select SYS_SUPPORTS_BIG_ENDIAN 202 select SYS_SUPPORTS_BIG_ENDIAN
203 select SYS_HAS_EARLY_PRINTK 203 select SYS_HAS_EARLY_PRINTK
@@ -217,7 +217,7 @@ config MIPS_COBALT
217 select HW_HAS_PCI 217 select HW_HAS_PCI
218 select I8253 218 select I8253
219 select I8259 219 select I8259
220 select IRQ_CPU 220 select IRQ_MIPS_CPU
221 select IRQ_GT641XX 221 select IRQ_GT641XX
222 select PCI_GT64XXX_PCI0 222 select PCI_GT64XXX_PCI0
223 select PCI 223 select PCI
@@ -240,7 +240,7 @@ config MACH_DECSTATION
240 select CPU_R4400_WORKAROUNDS if 64BIT 240 select CPU_R4400_WORKAROUNDS if 64BIT
241 select DMA_NONCOHERENT 241 select DMA_NONCOHERENT
242 select NO_IOPORT_MAP 242 select NO_IOPORT_MAP
243 select IRQ_CPU 243 select IRQ_MIPS_CPU
244 select SYS_HAS_CPU_R3000 244 select SYS_HAS_CPU_R3000
245 select SYS_HAS_CPU_R4X00 245 select SYS_HAS_CPU_R4X00
246 select SYS_SUPPORTS_32BIT_KERNEL 246 select SYS_SUPPORTS_32BIT_KERNEL
@@ -275,7 +275,7 @@ config MACH_JAZZ
275 select DEFAULT_SGI_PARTITION if CPU_BIG_ENDIAN 275 select DEFAULT_SGI_PARTITION if CPU_BIG_ENDIAN
276 select GENERIC_ISA_DMA 276 select GENERIC_ISA_DMA
277 select HAVE_PCSPKR_PLATFORM 277 select HAVE_PCSPKR_PLATFORM
278 select IRQ_CPU 278 select IRQ_MIPS_CPU
279 select I8253 279 select I8253
280 select I8259 280 select I8259
281 select ISA 281 select ISA
@@ -295,7 +295,7 @@ config MACH_INGENIC
295 select SYS_SUPPORTS_LITTLE_ENDIAN 295 select SYS_SUPPORTS_LITTLE_ENDIAN
296 select SYS_SUPPORTS_ZBOOT_UART16550 296 select SYS_SUPPORTS_ZBOOT_UART16550
297 select DMA_NONCOHERENT 297 select DMA_NONCOHERENT
298 select IRQ_CPU 298 select IRQ_MIPS_CPU
299 select ARCH_REQUIRE_GPIOLIB 299 select ARCH_REQUIRE_GPIOLIB
300 select SYS_HAS_EARLY_PRINTK 300 select SYS_HAS_EARLY_PRINTK
301 select HAVE_CLK 301 select HAVE_CLK
@@ -306,7 +306,7 @@ config MACH_INGENIC
306config LANTIQ 306config LANTIQ
307 bool "Lantiq based platforms" 307 bool "Lantiq based platforms"
308 select DMA_NONCOHERENT 308 select DMA_NONCOHERENT
309 select IRQ_CPU 309 select IRQ_MIPS_CPU
310 select CEVT_R4K 310 select CEVT_R4K
311 select CSRC_R4K 311 select CSRC_R4K
312 select SYS_HAS_CPU_MIPS32_R1 312 select SYS_HAS_CPU_MIPS32_R1
@@ -335,7 +335,7 @@ config LASAT
335 select DMA_NONCOHERENT 335 select DMA_NONCOHERENT
336 select SYS_HAS_EARLY_PRINTK 336 select SYS_HAS_EARLY_PRINTK
337 select HW_HAS_PCI 337 select HW_HAS_PCI
338 select IRQ_CPU 338 select IRQ_MIPS_CPU
339 select PCI_GT64XXX_PCI0 339 select PCI_GT64XXX_PCI0
340 select MIPS_NILE4 340 select MIPS_NILE4
341 select R5000_CPU_SCACHE 341 select R5000_CPU_SCACHE
@@ -375,7 +375,7 @@ config MACH_PISTACHIO
375 select COMMON_CLK 375 select COMMON_CLK
376 select CSRC_R4K 376 select CSRC_R4K
377 select DMA_MAYBE_COHERENT 377 select DMA_MAYBE_COHERENT
378 select IRQ_CPU 378 select IRQ_MIPS_CPU
379 select LIBFDT 379 select LIBFDT
380 select MFD_SYSCON 380 select MFD_SYSCON
381 select MIPS_CPU_SCACHE 381 select MIPS_CPU_SCACHE
@@ -403,7 +403,7 @@ config MIPS_MALTA
403 select DMA_MAYBE_COHERENT 403 select DMA_MAYBE_COHERENT
404 select GENERIC_ISA_DMA 404 select GENERIC_ISA_DMA
405 select HAVE_PCSPKR_PLATFORM 405 select HAVE_PCSPKR_PLATFORM
406 select IRQ_CPU 406 select IRQ_MIPS_CPU
407 select MIPS_GIC 407 select MIPS_GIC
408 select HW_HAS_PCI 408 select HW_HAS_PCI
409 select I8253 409 select I8253
@@ -451,7 +451,7 @@ config MIPS_SEAD3
451 select CPU_MIPSR2_IRQ_VI 451 select CPU_MIPSR2_IRQ_VI
452 select CPU_MIPSR2_IRQ_EI 452 select CPU_MIPSR2_IRQ_EI
453 select DMA_NONCOHERENT 453 select DMA_NONCOHERENT
454 select IRQ_CPU 454 select IRQ_MIPS_CPU
455 select MIPS_GIC 455 select MIPS_GIC
456 select LIBFDT 456 select LIBFDT
457 select MIPS_MSC 457 select MIPS_MSC
@@ -514,7 +514,7 @@ config PMC_MSP
514 select SYS_SUPPORTS_32BIT_KERNEL 514 select SYS_SUPPORTS_32BIT_KERNEL
515 select SYS_SUPPORTS_BIG_ENDIAN 515 select SYS_SUPPORTS_BIG_ENDIAN
516 select SYS_SUPPORTS_MIPS16 516 select SYS_SUPPORTS_MIPS16
517 select IRQ_CPU 517 select IRQ_MIPS_CPU
518 select SERIAL_8250 518 select SERIAL_8250
519 select SERIAL_8250_CONSOLE 519 select SERIAL_8250_CONSOLE
520 select USB_EHCI_BIG_ENDIAN_MMIO 520 select USB_EHCI_BIG_ENDIAN_MMIO
@@ -531,7 +531,7 @@ config RALINK
531 select CSRC_R4K 531 select CSRC_R4K
532 select BOOT_RAW 532 select BOOT_RAW
533 select DMA_NONCOHERENT 533 select DMA_NONCOHERENT
534 select IRQ_CPU 534 select IRQ_MIPS_CPU
535 select USE_OF 535 select USE_OF
536 select SYS_HAS_CPU_MIPS32_R1 536 select SYS_HAS_CPU_MIPS32_R1
537 select SYS_HAS_CPU_MIPS32_R2 537 select SYS_HAS_CPU_MIPS32_R2
@@ -557,7 +557,7 @@ config SGI_IP22
557 select I8253 557 select I8253
558 select I8259 558 select I8259
559 select IP22_CPU_SCACHE 559 select IP22_CPU_SCACHE
560 select IRQ_CPU 560 select IRQ_MIPS_CPU
561 select GENERIC_ISA_DMA_SUPPORT_BROKEN 561 select GENERIC_ISA_DMA_SUPPORT_BROKEN
562 select SGI_HAS_I8042 562 select SGI_HAS_I8042
563 select SGI_HAS_INDYDOG 563 select SGI_HAS_INDYDOG
@@ -616,7 +616,7 @@ config SGI_IP28
616 select DEFAULT_SGI_PARTITION 616 select DEFAULT_SGI_PARTITION
617 select DMA_NONCOHERENT 617 select DMA_NONCOHERENT
618 select GENERIC_ISA_DMA_SUPPORT_BROKEN 618 select GENERIC_ISA_DMA_SUPPORT_BROKEN
619 select IRQ_CPU 619 select IRQ_MIPS_CPU
620 select HW_HAS_EISA 620 select HW_HAS_EISA
621 select I8253 621 select I8253
622 select I8259 622 select I8259
@@ -652,7 +652,7 @@ config SGI_IP32
652 select CSRC_R4K 652 select CSRC_R4K
653 select DMA_NONCOHERENT 653 select DMA_NONCOHERENT
654 select HW_HAS_PCI 654 select HW_HAS_PCI
655 select IRQ_CPU 655 select IRQ_MIPS_CPU
656 select R5000_CPU_SCACHE 656 select R5000_CPU_SCACHE
657 select RM7000_CPU_SCACHE 657 select RM7000_CPU_SCACHE
658 select SYS_HAS_CPU_R5000 658 select SYS_HAS_CPU_R5000
@@ -768,7 +768,7 @@ config SNI_RM
768 select HAVE_PCSPKR_PLATFORM 768 select HAVE_PCSPKR_PLATFORM
769 select HW_HAS_EISA 769 select HW_HAS_EISA
770 select HW_HAS_PCI 770 select HW_HAS_PCI
771 select IRQ_CPU 771 select IRQ_MIPS_CPU
772 select I8253 772 select I8253
773 select I8259 773 select I8259
774 select ISA 774 select ISA
@@ -801,7 +801,7 @@ config MIKROTIK_RB532
801 select CSRC_R4K 801 select CSRC_R4K
802 select DMA_NONCOHERENT 802 select DMA_NONCOHERENT
803 select HW_HAS_PCI 803 select HW_HAS_PCI
804 select IRQ_CPU 804 select IRQ_MIPS_CPU
805 select SYS_HAS_CPU_MIPS32_R1 805 select SYS_HAS_CPU_MIPS32_R1
806 select SYS_SUPPORTS_32BIT_KERNEL 806 select SYS_SUPPORTS_32BIT_KERNEL
807 select SYS_SUPPORTS_LITTLE_ENDIAN 807 select SYS_SUPPORTS_LITTLE_ENDIAN
@@ -867,7 +867,7 @@ config NLM_XLR_BOARD
867 select NR_CPUS_DEFAULT_32 867 select NR_CPUS_DEFAULT_32
868 select CEVT_R4K 868 select CEVT_R4K
869 select CSRC_R4K 869 select CSRC_R4K
870 select IRQ_CPU 870 select IRQ_MIPS_CPU
871 select ZONE_DMA32 if 64BIT 871 select ZONE_DMA32 if 64BIT
872 select SYNC_R4K 872 select SYNC_R4K
873 select SYS_HAS_EARLY_PRINTK 873 select SYS_HAS_EARLY_PRINTK
@@ -894,7 +894,7 @@ config NLM_XLP_BOARD
894 select NR_CPUS_DEFAULT_32 894 select NR_CPUS_DEFAULT_32
895 select CEVT_R4K 895 select CEVT_R4K
896 select CSRC_R4K 896 select CSRC_R4K
897 select IRQ_CPU 897 select IRQ_MIPS_CPU
898 select ZONE_DMA32 if 64BIT 898 select ZONE_DMA32 if 64BIT
899 select SYNC_R4K 899 select SYNC_R4K
900 select SYS_HAS_EARLY_PRINTK 900 select SYS_HAS_EARLY_PRINTK
@@ -1143,10 +1143,6 @@ config SYS_SUPPORTS_HUGETLBFS
1143config MIPS_HUGE_TLB_SUPPORT 1143config MIPS_HUGE_TLB_SUPPORT
1144 def_bool HUGETLB_PAGE || TRANSPARENT_HUGEPAGE 1144 def_bool HUGETLB_PAGE || TRANSPARENT_HUGEPAGE
1145 1145
1146config IRQ_CPU
1147 bool
1148 select IRQ_DOMAIN
1149
1150config IRQ_CPU_RM7K 1146config IRQ_CPU_RM7K
1151 bool 1147 bool
1152 1148
@@ -1173,7 +1169,7 @@ config SOC_EMMA2RH
1173 select CEVT_R4K 1169 select CEVT_R4K
1174 select CSRC_R4K 1170 select CSRC_R4K
1175 select DMA_NONCOHERENT 1171 select DMA_NONCOHERENT
1176 select IRQ_CPU 1172 select IRQ_MIPS_CPU
1177 select SWAP_IO_SPACE 1173 select SWAP_IO_SPACE
1178 select SYS_HAS_CPU_R5500 1174 select SYS_HAS_CPU_R5500
1179 select SYS_SUPPORTS_32BIT_KERNEL 1175 select SYS_SUPPORTS_32BIT_KERNEL
@@ -1184,7 +1180,7 @@ config SOC_PNX833X
1184 bool 1180 bool
1185 select CEVT_R4K 1181 select CEVT_R4K
1186 select CSRC_R4K 1182 select CSRC_R4K
1187 select IRQ_CPU 1183 select IRQ_MIPS_CPU
1188 select DMA_NONCOHERENT 1184 select DMA_NONCOHERENT
1189 select SYS_HAS_CPU_MIPS32_R2 1185 select SYS_HAS_CPU_MIPS32_R2
1190 select SYS_SUPPORTS_32BIT_KERNEL 1186 select SYS_SUPPORTS_32BIT_KERNEL
@@ -1588,7 +1584,7 @@ config CPU_BMIPS
1588 select CPU_BMIPS5000 if SYS_HAS_CPU_BMIPS5000 1584 select CPU_BMIPS5000 if SYS_HAS_CPU_BMIPS5000
1589 select CPU_SUPPORTS_32BIT_KERNEL 1585 select CPU_SUPPORTS_32BIT_KERNEL
1590 select DMA_NONCOHERENT 1586 select DMA_NONCOHERENT
1591 select IRQ_CPU 1587 select IRQ_MIPS_CPU
1592 select SWAP_IO_SPACE 1588 select SWAP_IO_SPACE
1593 select WEAK_ORDERING 1589 select WEAK_ORDERING
1594 select CPU_SUPPORTS_HIGHMEM 1590 select CPU_SUPPORTS_HIGHMEM
diff --git a/arch/mips/include/asm/irqflags.h b/arch/mips/include/asm/irqflags.h
index d60cc68fa31e..e7b138b4b3d3 100644
--- a/arch/mips/include/asm/irqflags.h
+++ b/arch/mips/include/asm/irqflags.h
@@ -60,7 +60,7 @@ static inline void arch_local_irq_restore(unsigned long flags)
60 " .set push \n" 60 " .set push \n"
61 " .set noreorder \n" 61 " .set noreorder \n"
62 " .set noat \n" 62 " .set noat \n"
63#if defined(CONFIG_IRQ_CPU) 63#if defined(CONFIG_IRQ_MIPS_CPU)
64 /* 64 /*
65 * Slow, but doesn't suffer from a relatively unlikely race 65 * Slow, but doesn't suffer from a relatively unlikely race
66 * condition we're having since days 1. 66 * condition we're having since days 1.
@@ -90,7 +90,7 @@ static inline void __arch_local_irq_restore(unsigned long flags)
90 " .set push \n" 90 " .set push \n"
91 " .set noreorder \n" 91 " .set noreorder \n"
92 " .set noat \n" 92 " .set noat \n"
93#if defined(CONFIG_IRQ_CPU) 93#if defined(CONFIG_IRQ_MIPS_CPU)
94 /* 94 /*
95 * Slow, but doesn't suffer from a relatively unlikely race 95 * Slow, but doesn't suffer from a relatively unlikely race
96 * condition we're having since days 1. 96 * condition we're having since days 1.
diff --git a/arch/mips/include/asm/mach-generic/irq.h b/arch/mips/include/asm/mach-generic/irq.h
index 050e18bb1a04..be546a0f65fa 100644
--- a/arch/mips/include/asm/mach-generic/irq.h
+++ b/arch/mips/include/asm/mach-generic/irq.h
@@ -18,7 +18,7 @@
18#endif 18#endif
19#endif 19#endif
20 20
21#ifdef CONFIG_IRQ_CPU 21#ifdef CONFIG_IRQ_MIPS_CPU
22 22
23#ifndef MIPS_CPU_IRQ_BASE 23#ifndef MIPS_CPU_IRQ_BASE
24#ifdef CONFIG_I8259 24#ifdef CONFIG_I8259
@@ -34,7 +34,7 @@
34#endif 34#endif
35#endif 35#endif
36 36
37#endif /* CONFIG_IRQ_CPU */ 37#endif /* CONFIG_IRQ_MIPS_CPU */
38 38
39#ifdef CONFIG_MIPS_GIC 39#ifdef CONFIG_MIPS_GIC
40#ifndef MIPS_GIC_IRQ_BASE 40#ifndef MIPS_GIC_IRQ_BASE
diff --git a/arch/mips/include/asm/txx9irq.h b/arch/mips/include/asm/txx9irq.h
index 5620879be37f..68a6650a4025 100644
--- a/arch/mips/include/asm/txx9irq.h
+++ b/arch/mips/include/asm/txx9irq.h
@@ -11,7 +11,7 @@
11 11
12#include <irq.h> 12#include <irq.h>
13 13
14#ifdef CONFIG_IRQ_CPU 14#ifdef CONFIG_IRQ_MIPS_CPU
15#define TXX9_IRQ_BASE (MIPS_CPU_IRQ_BASE + 8) 15#define TXX9_IRQ_BASE (MIPS_CPU_IRQ_BASE + 8)
16#else 16#else
17#ifdef CONFIG_I8259 17#ifdef CONFIG_I8259
diff --git a/arch/mips/kernel/Makefile b/arch/mips/kernel/Makefile
index a2debcbedb6d..3f5cf8aff6f3 100644
--- a/arch/mips/kernel/Makefile
+++ b/arch/mips/kernel/Makefile
@@ -62,7 +62,6 @@ obj-$(CONFIG_MIPS_VPE_APSP_API_CMP) += rtlx-cmp.o
62obj-$(CONFIG_MIPS_VPE_APSP_API_MT) += rtlx-mt.o 62obj-$(CONFIG_MIPS_VPE_APSP_API_MT) += rtlx-mt.o
63 63
64obj-$(CONFIG_I8259) += i8259.o 64obj-$(CONFIG_I8259) += i8259.o
65obj-$(CONFIG_IRQ_CPU) += irq_cpu.o
66obj-$(CONFIG_IRQ_CPU_RM7K) += irq-rm7000.o 65obj-$(CONFIG_IRQ_CPU_RM7K) += irq-rm7000.o
67obj-$(CONFIG_MIPS_MSC) += irq-msc01.o 66obj-$(CONFIG_MIPS_MSC) += irq-msc01.o
68obj-$(CONFIG_IRQ_TXX9) += irq_txx9.o 67obj-$(CONFIG_IRQ_TXX9) += irq_txx9.o
diff --git a/arch/mips/loongson/Kconfig b/arch/mips/loongson/Kconfig
index 156de85b82cd..506414915463 100644
--- a/arch/mips/loongson/Kconfig
+++ b/arch/mips/loongson/Kconfig
@@ -15,7 +15,7 @@ config LEMOTE_FULOONG2E
15 select HW_HAS_PCI 15 select HW_HAS_PCI
16 select I8259 16 select I8259
17 select ISA 17 select ISA
18 select IRQ_CPU 18 select IRQ_MIPS_CPU
19 select SYS_SUPPORTS_32BIT_KERNEL 19 select SYS_SUPPORTS_32BIT_KERNEL
20 select SYS_SUPPORTS_64BIT_KERNEL 20 select SYS_SUPPORTS_64BIT_KERNEL
21 select SYS_SUPPORTS_LITTLE_ENDIAN 21 select SYS_SUPPORTS_LITTLE_ENDIAN
@@ -44,7 +44,7 @@ config LEMOTE_MACH2F
44 select HAVE_CLK 44 select HAVE_CLK
45 select HW_HAS_PCI 45 select HW_HAS_PCI
46 select I8259 46 select I8259
47 select IRQ_CPU 47 select IRQ_MIPS_CPU
48 select ISA 48 select ISA
49 select SYS_HAS_CPU_LOONGSON2F 49 select SYS_HAS_CPU_LOONGSON2F
50 select SYS_HAS_EARLY_PRINTK 50 select SYS_HAS_EARLY_PRINTK
@@ -73,7 +73,7 @@ config LOONGSON_MACH3X
73 select ISA 73 select ISA
74 select HT_PCI 74 select HT_PCI
75 select I8259 75 select I8259
76 select IRQ_CPU 76 select IRQ_MIPS_CPU
77 select NR_CPUS_DEFAULT_4 77 select NR_CPUS_DEFAULT_4
78 select SYS_HAS_CPU_LOONGSON3 78 select SYS_HAS_CPU_LOONGSON3
79 select SYS_HAS_EARLY_PRINTK 79 select SYS_HAS_EARLY_PRINTK
diff --git a/arch/mips/loongson1/Kconfig b/arch/mips/loongson1/Kconfig
index a2b796eaf3c3..aeecdd9fac9f 100644
--- a/arch/mips/loongson1/Kconfig
+++ b/arch/mips/loongson1/Kconfig
@@ -10,7 +10,7 @@ config LOONGSON1_LS1B
10 select SYS_HAS_CPU_LOONGSON1B 10 select SYS_HAS_CPU_LOONGSON1B
11 select DMA_NONCOHERENT 11 select DMA_NONCOHERENT
12 select BOOT_ELF32 12 select BOOT_ELF32
13 select IRQ_CPU 13 select IRQ_MIPS_CPU
14 select SYS_SUPPORTS_32BIT_KERNEL 14 select SYS_SUPPORTS_32BIT_KERNEL
15 select SYS_SUPPORTS_LITTLE_ENDIAN 15 select SYS_SUPPORTS_LITTLE_ENDIAN
16 select SYS_SUPPORTS_HIGHMEM 16 select SYS_SUPPORTS_HIGHMEM
diff --git a/arch/mips/sibyte/Kconfig b/arch/mips/sibyte/Kconfig
index 5fbd3605d24f..a8bb972fd9fd 100644
--- a/arch/mips/sibyte/Kconfig
+++ b/arch/mips/sibyte/Kconfig
@@ -3,7 +3,7 @@ config SIBYTE_SB1250
3 select CEVT_SB1250 3 select CEVT_SB1250
4 select CSRC_SB1250 4 select CSRC_SB1250
5 select HW_HAS_PCI 5 select HW_HAS_PCI
6 select IRQ_CPU 6 select IRQ_MIPS_CPU
7 select SIBYTE_ENABLE_LDT_IF_PCI 7 select SIBYTE_ENABLE_LDT_IF_PCI
8 select SIBYTE_HAS_ZBUS_PROFILING 8 select SIBYTE_HAS_ZBUS_PROFILING
9 select SIBYTE_SB1xxx_SOC 9 select SIBYTE_SB1xxx_SOC
@@ -13,7 +13,7 @@ config SIBYTE_BCM1120
13 bool 13 bool
14 select CEVT_SB1250 14 select CEVT_SB1250
15 select CSRC_SB1250 15 select CSRC_SB1250
16 select IRQ_CPU 16 select IRQ_MIPS_CPU
17 select SIBYTE_BCM112X 17 select SIBYTE_BCM112X
18 select SIBYTE_HAS_ZBUS_PROFILING 18 select SIBYTE_HAS_ZBUS_PROFILING
19 select SIBYTE_SB1xxx_SOC 19 select SIBYTE_SB1xxx_SOC
@@ -23,7 +23,7 @@ config SIBYTE_BCM1125
23 select CEVT_SB1250 23 select CEVT_SB1250
24 select CSRC_SB1250 24 select CSRC_SB1250
25 select HW_HAS_PCI 25 select HW_HAS_PCI
26 select IRQ_CPU 26 select IRQ_MIPS_CPU
27 select SIBYTE_BCM112X 27 select SIBYTE_BCM112X
28 select SIBYTE_HAS_ZBUS_PROFILING 28 select SIBYTE_HAS_ZBUS_PROFILING
29 select SIBYTE_SB1xxx_SOC 29 select SIBYTE_SB1xxx_SOC
@@ -33,7 +33,7 @@ config SIBYTE_BCM1125H
33 select CEVT_SB1250 33 select CEVT_SB1250
34 select CSRC_SB1250 34 select CSRC_SB1250
35 select HW_HAS_PCI 35 select HW_HAS_PCI
36 select IRQ_CPU 36 select IRQ_MIPS_CPU
37 select SIBYTE_BCM112X 37 select SIBYTE_BCM112X
38 select SIBYTE_ENABLE_LDT_IF_PCI 38 select SIBYTE_ENABLE_LDT_IF_PCI
39 select SIBYTE_HAS_ZBUS_PROFILING 39 select SIBYTE_HAS_ZBUS_PROFILING
@@ -43,7 +43,7 @@ config SIBYTE_BCM112X
43 bool 43 bool
44 select CEVT_SB1250 44 select CEVT_SB1250
45 select CSRC_SB1250 45 select CSRC_SB1250
46 select IRQ_CPU 46 select IRQ_MIPS_CPU
47 select SIBYTE_SB1xxx_SOC 47 select SIBYTE_SB1xxx_SOC
48 select SIBYTE_HAS_ZBUS_PROFILING 48 select SIBYTE_HAS_ZBUS_PROFILING
49 49
@@ -52,7 +52,7 @@ config SIBYTE_BCM1x80
52 select CEVT_BCM1480 52 select CEVT_BCM1480
53 select CSRC_BCM1480 53 select CSRC_BCM1480
54 select HW_HAS_PCI 54 select HW_HAS_PCI
55 select IRQ_CPU 55 select IRQ_MIPS_CPU
56 select SIBYTE_HAS_ZBUS_PROFILING 56 select SIBYTE_HAS_ZBUS_PROFILING
57 select SIBYTE_SB1xxx_SOC 57 select SIBYTE_SB1xxx_SOC
58 select SYS_SUPPORTS_SMP 58 select SYS_SUPPORTS_SMP
@@ -62,7 +62,7 @@ config SIBYTE_BCM1x55
62 select CEVT_BCM1480 62 select CEVT_BCM1480
63 select CSRC_BCM1480 63 select CSRC_BCM1480
64 select HW_HAS_PCI 64 select HW_HAS_PCI
65 select IRQ_CPU 65 select IRQ_MIPS_CPU
66 select SIBYTE_SB1xxx_SOC 66 select SIBYTE_SB1xxx_SOC
67 select SIBYTE_HAS_ZBUS_PROFILING 67 select SIBYTE_HAS_ZBUS_PROFILING
68 select SYS_SUPPORTS_SMP 68 select SYS_SUPPORTS_SMP
@@ -70,7 +70,7 @@ config SIBYTE_BCM1x55
70config SIBYTE_SB1xxx_SOC 70config SIBYTE_SB1xxx_SOC
71 bool 71 bool
72 select DMA_COHERENT 72 select DMA_COHERENT
73 select IRQ_CPU 73 select IRQ_MIPS_CPU
74 select SWAP_IO_SPACE 74 select SWAP_IO_SPACE
75 select SYS_SUPPORTS_32BIT_KERNEL 75 select SYS_SUPPORTS_32BIT_KERNEL
76 select SYS_SUPPORTS_64BIT_KERNEL 76 select SYS_SUPPORTS_64BIT_KERNEL
diff --git a/arch/mips/txx9/Kconfig b/arch/mips/txx9/Kconfig
index 6d40bc783459..8c337d60f790 100644
--- a/arch/mips/txx9/Kconfig
+++ b/arch/mips/txx9/Kconfig
@@ -8,7 +8,7 @@ config MACH_TX49XX
8 select MACH_TXX9 8 select MACH_TXX9
9 select CEVT_R4K 9 select CEVT_R4K
10 select CSRC_R4K 10 select CSRC_R4K
11 select IRQ_CPU 11 select IRQ_MIPS_CPU
12 select SYS_HAS_CPU_TX49XX 12 select SYS_HAS_CPU_TX49XX
13 select SYS_SUPPORTS_64BIT_KERNEL 13 select SYS_SUPPORTS_64BIT_KERNEL
14 14
diff --git a/arch/mips/vr41xx/Kconfig b/arch/mips/vr41xx/Kconfig
index c1be6b37fb2a..74927b4d4f0b 100644
--- a/arch/mips/vr41xx/Kconfig
+++ b/arch/mips/vr41xx/Kconfig
@@ -8,7 +8,7 @@ config CASIO_E55
8 select CEVT_R4K 8 select CEVT_R4K
9 select CSRC_R4K 9 select CSRC_R4K
10 select DMA_NONCOHERENT 10 select DMA_NONCOHERENT
11 select IRQ_CPU 11 select IRQ_MIPS_CPU
12 select ISA 12 select ISA
13 select SYS_SUPPORTS_32BIT_KERNEL 13 select SYS_SUPPORTS_32BIT_KERNEL
14 select SYS_SUPPORTS_LITTLE_ENDIAN 14 select SYS_SUPPORTS_LITTLE_ENDIAN
@@ -18,7 +18,7 @@ config IBM_WORKPAD
18 select CEVT_R4K 18 select CEVT_R4K
19 select CSRC_R4K 19 select CSRC_R4K
20 select DMA_NONCOHERENT 20 select DMA_NONCOHERENT
21 select IRQ_CPU 21 select IRQ_MIPS_CPU
22 select ISA 22 select ISA
23 select SYS_SUPPORTS_32BIT_KERNEL 23 select SYS_SUPPORTS_32BIT_KERNEL
24 select SYS_SUPPORTS_LITTLE_ENDIAN 24 select SYS_SUPPORTS_LITTLE_ENDIAN
@@ -28,7 +28,7 @@ config TANBAC_TB022X
28 select CEVT_R4K 28 select CEVT_R4K
29 select CSRC_R4K 29 select CSRC_R4K
30 select DMA_NONCOHERENT 30 select DMA_NONCOHERENT
31 select IRQ_CPU 31 select IRQ_MIPS_CPU
32 select HW_HAS_PCI 32 select HW_HAS_PCI
33 select SYS_SUPPORTS_32BIT_KERNEL 33 select SYS_SUPPORTS_32BIT_KERNEL
34 select SYS_SUPPORTS_LITTLE_ENDIAN 34 select SYS_SUPPORTS_LITTLE_ENDIAN
@@ -44,7 +44,7 @@ config VICTOR_MPC30X
44 select CEVT_R4K 44 select CEVT_R4K
45 select CSRC_R4K 45 select CSRC_R4K
46 select DMA_NONCOHERENT 46 select DMA_NONCOHERENT
47 select IRQ_CPU 47 select IRQ_MIPS_CPU
48 select HW_HAS_PCI 48 select HW_HAS_PCI
49 select PCI_VR41XX 49 select PCI_VR41XX
50 select SYS_SUPPORTS_32BIT_KERNEL 50 select SYS_SUPPORTS_32BIT_KERNEL
@@ -55,7 +55,7 @@ config ZAO_CAPCELLA
55 select CEVT_R4K 55 select CEVT_R4K
56 select CSRC_R4K 56 select CSRC_R4K
57 select DMA_NONCOHERENT 57 select DMA_NONCOHERENT
58 select IRQ_CPU 58 select IRQ_MIPS_CPU
59 select HW_HAS_PCI 59 select HW_HAS_PCI
60 select PCI_VR41XX 60 select PCI_VR41XX
61 select SYS_SUPPORTS_32BIT_KERNEL 61 select SYS_SUPPORTS_32BIT_KERNEL
diff --git a/drivers/irqchip/Kconfig b/drivers/irqchip/Kconfig
index 6de62a96e79c..2b7531e0e84c 100644
--- a/drivers/irqchip/Kconfig
+++ b/drivers/irqchip/Kconfig
@@ -85,6 +85,11 @@ config IMGPDC_IRQ
85 select GENERIC_IRQ_CHIP 85 select GENERIC_IRQ_CHIP
86 select IRQ_DOMAIN 86 select IRQ_DOMAIN
87 87
88config IRQ_MIPS_CPU
89 bool
90 select GENERIC_IRQ_CHIP
91 select IRQ_DOMAIN
92
88config CLPS711X_IRQCHIP 93config CLPS711X_IRQCHIP
89 bool 94 bool
90 depends on ARCH_CLPS711X 95 depends on ARCH_CLPS711X
diff --git a/drivers/irqchip/Makefile b/drivers/irqchip/Makefile
index dda4927e47a6..129cde1ff5a7 100644
--- a/drivers/irqchip/Makefile
+++ b/drivers/irqchip/Makefile
@@ -28,6 +28,7 @@ obj-$(CONFIG_ARM_VIC) += irq-vic.o
28obj-$(CONFIG_ATMEL_AIC_IRQ) += irq-atmel-aic-common.o irq-atmel-aic.o 28obj-$(CONFIG_ATMEL_AIC_IRQ) += irq-atmel-aic-common.o irq-atmel-aic.o
29obj-$(CONFIG_ATMEL_AIC5_IRQ) += irq-atmel-aic-common.o irq-atmel-aic5.o 29obj-$(CONFIG_ATMEL_AIC5_IRQ) += irq-atmel-aic-common.o irq-atmel-aic5.o
30obj-$(CONFIG_IMGPDC_IRQ) += irq-imgpdc.o 30obj-$(CONFIG_IMGPDC_IRQ) += irq-imgpdc.o
31obj-$(CONFIG_IRQ_MIPS_CPU) += irq-mips-cpu.o
31obj-$(CONFIG_SIRF_IRQ) += irq-sirfsoc.o 32obj-$(CONFIG_SIRF_IRQ) += irq-sirfsoc.o
32obj-$(CONFIG_RENESAS_INTC_IRQPIN) += irq-renesas-intc-irqpin.o 33obj-$(CONFIG_RENESAS_INTC_IRQPIN) += irq-renesas-intc-irqpin.o
33obj-$(CONFIG_RENESAS_IRQC) += irq-renesas-irqc.o 34obj-$(CONFIG_RENESAS_IRQC) += irq-renesas-irqc.o
diff --git a/arch/mips/kernel/irq_cpu.c b/drivers/irqchip/irq-mips-cpu.c
index 6eb7a3f515fc..6eb7a3f515fc 100644
--- a/arch/mips/kernel/irq_cpu.c
+++ b/drivers/irqchip/irq-mips-cpu.c