18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0-only
28c2ecf20Sopenharmony_cimenu "IRQ chip support"
38c2ecf20Sopenharmony_ci
48c2ecf20Sopenharmony_ciconfig IRQCHIP
58c2ecf20Sopenharmony_ci	def_bool y
68c2ecf20Sopenharmony_ci	depends on OF_IRQ
78c2ecf20Sopenharmony_ci
88c2ecf20Sopenharmony_ciconfig ARM_GIC
98c2ecf20Sopenharmony_ci	bool
108c2ecf20Sopenharmony_ci	select IRQ_DOMAIN_HIERARCHY
118c2ecf20Sopenharmony_ci	select GENERIC_IRQ_MULTI_HANDLER
128c2ecf20Sopenharmony_ci	select GENERIC_IRQ_EFFECTIVE_AFF_MASK
138c2ecf20Sopenharmony_ci
148c2ecf20Sopenharmony_ciconfig ARM_GIC_PM
158c2ecf20Sopenharmony_ci	bool
168c2ecf20Sopenharmony_ci	depends on PM
178c2ecf20Sopenharmony_ci	select ARM_GIC
188c2ecf20Sopenharmony_ci
198c2ecf20Sopenharmony_ciconfig ARM_GIC_MAX_NR
208c2ecf20Sopenharmony_ci	int
218c2ecf20Sopenharmony_ci	depends on ARM_GIC
228c2ecf20Sopenharmony_ci	default 2 if ARCH_REALVIEW
238c2ecf20Sopenharmony_ci	default 1
248c2ecf20Sopenharmony_ci
258c2ecf20Sopenharmony_ciconfig ARM_GIC_V2M
268c2ecf20Sopenharmony_ci	bool
278c2ecf20Sopenharmony_ci	depends on PCI
288c2ecf20Sopenharmony_ci	select ARM_GIC
298c2ecf20Sopenharmony_ci	select PCI_MSI
308c2ecf20Sopenharmony_ci
318c2ecf20Sopenharmony_ciconfig GIC_NON_BANKED
328c2ecf20Sopenharmony_ci	bool
338c2ecf20Sopenharmony_ci
348c2ecf20Sopenharmony_ciconfig ARM_GIC_V3
358c2ecf20Sopenharmony_ci	bool
368c2ecf20Sopenharmony_ci	select GENERIC_IRQ_MULTI_HANDLER
378c2ecf20Sopenharmony_ci	select IRQ_DOMAIN_HIERARCHY
388c2ecf20Sopenharmony_ci	select PARTITION_PERCPU
398c2ecf20Sopenharmony_ci	select GENERIC_IRQ_EFFECTIVE_AFF_MASK
408c2ecf20Sopenharmony_ci
418c2ecf20Sopenharmony_ciconfig ARM_GIC_V3_ITS
428c2ecf20Sopenharmony_ci	bool
438c2ecf20Sopenharmony_ci	select GENERIC_MSI_IRQ_DOMAIN
448c2ecf20Sopenharmony_ci	default ARM_GIC_V3
458c2ecf20Sopenharmony_ci
468c2ecf20Sopenharmony_ciconfig ARM_GIC_V3_ITS_PCI
478c2ecf20Sopenharmony_ci	bool
488c2ecf20Sopenharmony_ci	depends on ARM_GIC_V3_ITS
498c2ecf20Sopenharmony_ci	depends on PCI
508c2ecf20Sopenharmony_ci	depends on PCI_MSI
518c2ecf20Sopenharmony_ci	default ARM_GIC_V3_ITS
528c2ecf20Sopenharmony_ci
538c2ecf20Sopenharmony_ciconfig ARM_GIC_V3_ITS_FSL_MC
548c2ecf20Sopenharmony_ci	bool
558c2ecf20Sopenharmony_ci	depends on ARM_GIC_V3_ITS
568c2ecf20Sopenharmony_ci	depends on FSL_MC_BUS
578c2ecf20Sopenharmony_ci	default ARM_GIC_V3_ITS
588c2ecf20Sopenharmony_ci
598c2ecf20Sopenharmony_ciconfig ARM_NVIC
608c2ecf20Sopenharmony_ci	bool
618c2ecf20Sopenharmony_ci	select IRQ_DOMAIN_HIERARCHY
628c2ecf20Sopenharmony_ci	select GENERIC_IRQ_CHIP
638c2ecf20Sopenharmony_ci
648c2ecf20Sopenharmony_ciconfig ARM_VIC
658c2ecf20Sopenharmony_ci	bool
668c2ecf20Sopenharmony_ci	select IRQ_DOMAIN
678c2ecf20Sopenharmony_ci	select GENERIC_IRQ_MULTI_HANDLER
688c2ecf20Sopenharmony_ci
698c2ecf20Sopenharmony_ciconfig ARM_VIC_NR
708c2ecf20Sopenharmony_ci	int
718c2ecf20Sopenharmony_ci	default 4 if ARCH_S5PV210
728c2ecf20Sopenharmony_ci	default 2
738c2ecf20Sopenharmony_ci	depends on ARM_VIC
748c2ecf20Sopenharmony_ci	help
758c2ecf20Sopenharmony_ci	  The maximum number of VICs available in the system, for
768c2ecf20Sopenharmony_ci	  power management.
778c2ecf20Sopenharmony_ci
788c2ecf20Sopenharmony_ciconfig ARMADA_370_XP_IRQ
798c2ecf20Sopenharmony_ci	bool
808c2ecf20Sopenharmony_ci	select GENERIC_IRQ_CHIP
818c2ecf20Sopenharmony_ci	select PCI_MSI if PCI
828c2ecf20Sopenharmony_ci	select GENERIC_IRQ_EFFECTIVE_AFF_MASK
838c2ecf20Sopenharmony_ci
848c2ecf20Sopenharmony_ciconfig ALPINE_MSI
858c2ecf20Sopenharmony_ci	bool
868c2ecf20Sopenharmony_ci	depends on PCI
878c2ecf20Sopenharmony_ci	select PCI_MSI
888c2ecf20Sopenharmony_ci	select GENERIC_IRQ_CHIP
898c2ecf20Sopenharmony_ci
908c2ecf20Sopenharmony_ciconfig AL_FIC
918c2ecf20Sopenharmony_ci	bool "Amazon's Annapurna Labs Fabric Interrupt Controller"
928c2ecf20Sopenharmony_ci	depends on OF || COMPILE_TEST
938c2ecf20Sopenharmony_ci	select GENERIC_IRQ_CHIP
948c2ecf20Sopenharmony_ci	select IRQ_DOMAIN
958c2ecf20Sopenharmony_ci	help
968c2ecf20Sopenharmony_ci	  Support Amazon's Annapurna Labs Fabric Interrupt Controller.
978c2ecf20Sopenharmony_ci
988c2ecf20Sopenharmony_ciconfig ATMEL_AIC_IRQ
998c2ecf20Sopenharmony_ci	bool
1008c2ecf20Sopenharmony_ci	select GENERIC_IRQ_CHIP
1018c2ecf20Sopenharmony_ci	select IRQ_DOMAIN
1028c2ecf20Sopenharmony_ci	select GENERIC_IRQ_MULTI_HANDLER
1038c2ecf20Sopenharmony_ci	select SPARSE_IRQ
1048c2ecf20Sopenharmony_ci
1058c2ecf20Sopenharmony_ciconfig ATMEL_AIC5_IRQ
1068c2ecf20Sopenharmony_ci	bool
1078c2ecf20Sopenharmony_ci	select GENERIC_IRQ_CHIP
1088c2ecf20Sopenharmony_ci	select IRQ_DOMAIN
1098c2ecf20Sopenharmony_ci	select GENERIC_IRQ_MULTI_HANDLER
1108c2ecf20Sopenharmony_ci	select SPARSE_IRQ
1118c2ecf20Sopenharmony_ci
1128c2ecf20Sopenharmony_ciconfig I8259
1138c2ecf20Sopenharmony_ci	bool
1148c2ecf20Sopenharmony_ci	select IRQ_DOMAIN
1158c2ecf20Sopenharmony_ci
1168c2ecf20Sopenharmony_ciconfig BCM6345_L1_IRQ
1178c2ecf20Sopenharmony_ci	bool
1188c2ecf20Sopenharmony_ci	select GENERIC_IRQ_CHIP
1198c2ecf20Sopenharmony_ci	select IRQ_DOMAIN
1208c2ecf20Sopenharmony_ci	select GENERIC_IRQ_EFFECTIVE_AFF_MASK
1218c2ecf20Sopenharmony_ci
1228c2ecf20Sopenharmony_ciconfig BCM7038_L1_IRQ
1238c2ecf20Sopenharmony_ci	bool
1248c2ecf20Sopenharmony_ci	select GENERIC_IRQ_CHIP
1258c2ecf20Sopenharmony_ci	select IRQ_DOMAIN
1268c2ecf20Sopenharmony_ci	select GENERIC_IRQ_EFFECTIVE_AFF_MASK
1278c2ecf20Sopenharmony_ci
1288c2ecf20Sopenharmony_ciconfig BCM7120_L2_IRQ
1298c2ecf20Sopenharmony_ci	bool
1308c2ecf20Sopenharmony_ci	select GENERIC_IRQ_CHIP
1318c2ecf20Sopenharmony_ci	select IRQ_DOMAIN
1328c2ecf20Sopenharmony_ci
1338c2ecf20Sopenharmony_ciconfig BRCMSTB_L2_IRQ
1348c2ecf20Sopenharmony_ci	bool
1358c2ecf20Sopenharmony_ci	select GENERIC_IRQ_CHIP
1368c2ecf20Sopenharmony_ci	select IRQ_DOMAIN
1378c2ecf20Sopenharmony_ci
1388c2ecf20Sopenharmony_ciconfig DAVINCI_AINTC
1398c2ecf20Sopenharmony_ci	bool
1408c2ecf20Sopenharmony_ci	select GENERIC_IRQ_CHIP
1418c2ecf20Sopenharmony_ci	select IRQ_DOMAIN
1428c2ecf20Sopenharmony_ci
1438c2ecf20Sopenharmony_ciconfig DAVINCI_CP_INTC
1448c2ecf20Sopenharmony_ci	bool
1458c2ecf20Sopenharmony_ci	select GENERIC_IRQ_CHIP
1468c2ecf20Sopenharmony_ci	select IRQ_DOMAIN
1478c2ecf20Sopenharmony_ci
1488c2ecf20Sopenharmony_ciconfig DW_APB_ICTL
1498c2ecf20Sopenharmony_ci	bool
1508c2ecf20Sopenharmony_ci	select GENERIC_IRQ_CHIP
1518c2ecf20Sopenharmony_ci	select IRQ_DOMAIN_HIERARCHY
1528c2ecf20Sopenharmony_ci
1538c2ecf20Sopenharmony_ciconfig FARADAY_FTINTC010
1548c2ecf20Sopenharmony_ci	bool
1558c2ecf20Sopenharmony_ci	select IRQ_DOMAIN
1568c2ecf20Sopenharmony_ci	select GENERIC_IRQ_MULTI_HANDLER
1578c2ecf20Sopenharmony_ci	select SPARSE_IRQ
1588c2ecf20Sopenharmony_ci
1598c2ecf20Sopenharmony_ciconfig HISILICON_IRQ_MBIGEN
1608c2ecf20Sopenharmony_ci	bool
1618c2ecf20Sopenharmony_ci	select ARM_GIC_V3
1628c2ecf20Sopenharmony_ci	select ARM_GIC_V3_ITS
1638c2ecf20Sopenharmony_ci
1648c2ecf20Sopenharmony_ciconfig IMGPDC_IRQ
1658c2ecf20Sopenharmony_ci	bool
1668c2ecf20Sopenharmony_ci	select GENERIC_IRQ_CHIP
1678c2ecf20Sopenharmony_ci	select IRQ_DOMAIN
1688c2ecf20Sopenharmony_ci
1698c2ecf20Sopenharmony_ciconfig IXP4XX_IRQ
1708c2ecf20Sopenharmony_ci	bool
1718c2ecf20Sopenharmony_ci	select IRQ_DOMAIN
1728c2ecf20Sopenharmony_ci	select GENERIC_IRQ_MULTI_HANDLER
1738c2ecf20Sopenharmony_ci	select SPARSE_IRQ
1748c2ecf20Sopenharmony_ci
1758c2ecf20Sopenharmony_ciconfig MADERA_IRQ
1768c2ecf20Sopenharmony_ci	tristate
1778c2ecf20Sopenharmony_ci
1788c2ecf20Sopenharmony_ciconfig IRQ_MIPS_CPU
1798c2ecf20Sopenharmony_ci	bool
1808c2ecf20Sopenharmony_ci	select GENERIC_IRQ_CHIP
1818c2ecf20Sopenharmony_ci	select GENERIC_IRQ_IPI if SMP && SYS_SUPPORTS_MULTITHREADING
1828c2ecf20Sopenharmony_ci	select IRQ_DOMAIN
1838c2ecf20Sopenharmony_ci	select GENERIC_IRQ_EFFECTIVE_AFF_MASK
1848c2ecf20Sopenharmony_ci
1858c2ecf20Sopenharmony_ciconfig CLPS711X_IRQCHIP
1868c2ecf20Sopenharmony_ci	bool
1878c2ecf20Sopenharmony_ci	depends on ARCH_CLPS711X
1888c2ecf20Sopenharmony_ci	select IRQ_DOMAIN
1898c2ecf20Sopenharmony_ci	select GENERIC_IRQ_MULTI_HANDLER
1908c2ecf20Sopenharmony_ci	select SPARSE_IRQ
1918c2ecf20Sopenharmony_ci	default y
1928c2ecf20Sopenharmony_ci
1938c2ecf20Sopenharmony_ciconfig OMPIC
1948c2ecf20Sopenharmony_ci	bool
1958c2ecf20Sopenharmony_ci
1968c2ecf20Sopenharmony_ciconfig OR1K_PIC
1978c2ecf20Sopenharmony_ci	bool
1988c2ecf20Sopenharmony_ci	select IRQ_DOMAIN
1998c2ecf20Sopenharmony_ci
2008c2ecf20Sopenharmony_ciconfig OMAP_IRQCHIP
2018c2ecf20Sopenharmony_ci	bool
2028c2ecf20Sopenharmony_ci	select GENERIC_IRQ_CHIP
2038c2ecf20Sopenharmony_ci	select IRQ_DOMAIN
2048c2ecf20Sopenharmony_ci
2058c2ecf20Sopenharmony_ciconfig ORION_IRQCHIP
2068c2ecf20Sopenharmony_ci	bool
2078c2ecf20Sopenharmony_ci	select IRQ_DOMAIN
2088c2ecf20Sopenharmony_ci	select GENERIC_IRQ_MULTI_HANDLER
2098c2ecf20Sopenharmony_ci
2108c2ecf20Sopenharmony_ciconfig PIC32_EVIC
2118c2ecf20Sopenharmony_ci	bool
2128c2ecf20Sopenharmony_ci	select GENERIC_IRQ_CHIP
2138c2ecf20Sopenharmony_ci	select IRQ_DOMAIN
2148c2ecf20Sopenharmony_ci
2158c2ecf20Sopenharmony_ciconfig JCORE_AIC
2168c2ecf20Sopenharmony_ci	bool "J-Core integrated AIC" if COMPILE_TEST
2178c2ecf20Sopenharmony_ci	depends on OF
2188c2ecf20Sopenharmony_ci	select IRQ_DOMAIN
2198c2ecf20Sopenharmony_ci	help
2208c2ecf20Sopenharmony_ci	  Support for the J-Core integrated AIC.
2218c2ecf20Sopenharmony_ci
2228c2ecf20Sopenharmony_ciconfig RDA_INTC
2238c2ecf20Sopenharmony_ci	bool
2248c2ecf20Sopenharmony_ci	select IRQ_DOMAIN
2258c2ecf20Sopenharmony_ci
2268c2ecf20Sopenharmony_ciconfig RENESAS_INTC_IRQPIN
2278c2ecf20Sopenharmony_ci	bool "Renesas INTC External IRQ Pin Support" if COMPILE_TEST
2288c2ecf20Sopenharmony_ci	select IRQ_DOMAIN
2298c2ecf20Sopenharmony_ci	help
2308c2ecf20Sopenharmony_ci	  Enable support for the Renesas Interrupt Controller for external
2318c2ecf20Sopenharmony_ci	  interrupt pins, as found on SH/R-Mobile and R-Car Gen1 SoCs.
2328c2ecf20Sopenharmony_ci
2338c2ecf20Sopenharmony_ciconfig RENESAS_IRQC
2348c2ecf20Sopenharmony_ci	bool "Renesas R-Mobile APE6, R-Car Gen{2,3} and RZ/G{1,2} IRQC support" if COMPILE_TEST
2358c2ecf20Sopenharmony_ci	select GENERIC_IRQ_CHIP
2368c2ecf20Sopenharmony_ci	select IRQ_DOMAIN
2378c2ecf20Sopenharmony_ci	help
2388c2ecf20Sopenharmony_ci	  Enable support for the Renesas Interrupt Controller for external
2398c2ecf20Sopenharmony_ci	  devices, as found on R-Mobile APE6, R-Car Gen{2,3} and RZ/G{1,2} SoCs.
2408c2ecf20Sopenharmony_ci
2418c2ecf20Sopenharmony_ciconfig RENESAS_RZA1_IRQC
2428c2ecf20Sopenharmony_ci	bool "Renesas RZ/A1 IRQC support" if COMPILE_TEST
2438c2ecf20Sopenharmony_ci	select IRQ_DOMAIN_HIERARCHY
2448c2ecf20Sopenharmony_ci	help
2458c2ecf20Sopenharmony_ci	  Enable support for the Renesas RZ/A1 Interrupt Controller, to use up
2468c2ecf20Sopenharmony_ci	  to 8 external interrupts with configurable sense select.
2478c2ecf20Sopenharmony_ci
2488c2ecf20Sopenharmony_ciconfig SL28CPLD_INTC
2498c2ecf20Sopenharmony_ci	bool "Kontron sl28cpld IRQ controller"
2508c2ecf20Sopenharmony_ci	depends on MFD_SL28CPLD=y || COMPILE_TEST
2518c2ecf20Sopenharmony_ci	select REGMAP_IRQ
2528c2ecf20Sopenharmony_ci	help
2538c2ecf20Sopenharmony_ci	  Interrupt controller driver for the board management controller
2548c2ecf20Sopenharmony_ci	  found on the Kontron sl28 CPLD.
2558c2ecf20Sopenharmony_ci
2568c2ecf20Sopenharmony_ciconfig ST_IRQCHIP
2578c2ecf20Sopenharmony_ci	bool
2588c2ecf20Sopenharmony_ci	select REGMAP
2598c2ecf20Sopenharmony_ci	select MFD_SYSCON
2608c2ecf20Sopenharmony_ci	help
2618c2ecf20Sopenharmony_ci	  Enables SysCfg Controlled IRQs on STi based platforms.
2628c2ecf20Sopenharmony_ci
2638c2ecf20Sopenharmony_ciconfig TANGO_IRQ
2648c2ecf20Sopenharmony_ci	bool
2658c2ecf20Sopenharmony_ci	select IRQ_DOMAIN
2668c2ecf20Sopenharmony_ci	select GENERIC_IRQ_CHIP
2678c2ecf20Sopenharmony_ci
2688c2ecf20Sopenharmony_ciconfig TB10X_IRQC
2698c2ecf20Sopenharmony_ci	bool
2708c2ecf20Sopenharmony_ci	select IRQ_DOMAIN
2718c2ecf20Sopenharmony_ci	select GENERIC_IRQ_CHIP
2728c2ecf20Sopenharmony_ci
2738c2ecf20Sopenharmony_ciconfig TS4800_IRQ
2748c2ecf20Sopenharmony_ci	tristate "TS-4800 IRQ controller"
2758c2ecf20Sopenharmony_ci	select IRQ_DOMAIN
2768c2ecf20Sopenharmony_ci	depends on HAS_IOMEM
2778c2ecf20Sopenharmony_ci	depends on SOC_IMX51 || COMPILE_TEST
2788c2ecf20Sopenharmony_ci	help
2798c2ecf20Sopenharmony_ci	  Support for the TS-4800 FPGA IRQ controller
2808c2ecf20Sopenharmony_ci
2818c2ecf20Sopenharmony_ciconfig VERSATILE_FPGA_IRQ
2828c2ecf20Sopenharmony_ci	bool
2838c2ecf20Sopenharmony_ci	select IRQ_DOMAIN
2848c2ecf20Sopenharmony_ci
2858c2ecf20Sopenharmony_ciconfig VERSATILE_FPGA_IRQ_NR
2868c2ecf20Sopenharmony_ci       int
2878c2ecf20Sopenharmony_ci       default 4
2888c2ecf20Sopenharmony_ci       depends on VERSATILE_FPGA_IRQ
2898c2ecf20Sopenharmony_ci
2908c2ecf20Sopenharmony_ciconfig XTENSA_MX
2918c2ecf20Sopenharmony_ci	bool
2928c2ecf20Sopenharmony_ci	select IRQ_DOMAIN
2938c2ecf20Sopenharmony_ci	select GENERIC_IRQ_EFFECTIVE_AFF_MASK
2948c2ecf20Sopenharmony_ci
2958c2ecf20Sopenharmony_ciconfig XILINX_INTC
2968c2ecf20Sopenharmony_ci	bool
2978c2ecf20Sopenharmony_ci	select IRQ_DOMAIN
2988c2ecf20Sopenharmony_ci
2998c2ecf20Sopenharmony_ciconfig IRQ_CROSSBAR
3008c2ecf20Sopenharmony_ci	bool
3018c2ecf20Sopenharmony_ci	help
3028c2ecf20Sopenharmony_ci	  Support for a CROSSBAR ip that precedes the main interrupt controller.
3038c2ecf20Sopenharmony_ci	  The primary irqchip invokes the crossbar's callback which inturn allocates
3048c2ecf20Sopenharmony_ci	  a free irq and configures the IP. Thus the peripheral interrupts are
3058c2ecf20Sopenharmony_ci	  routed to one of the free irqchip interrupt lines.
3068c2ecf20Sopenharmony_ci
3078c2ecf20Sopenharmony_ciconfig KEYSTONE_IRQ
3088c2ecf20Sopenharmony_ci	tristate "Keystone 2 IRQ controller IP"
3098c2ecf20Sopenharmony_ci	depends on ARCH_KEYSTONE
3108c2ecf20Sopenharmony_ci	help
3118c2ecf20Sopenharmony_ci		Support for Texas Instruments Keystone 2 IRQ controller IP which
3128c2ecf20Sopenharmony_ci		is part of the Keystone 2 IPC mechanism
3138c2ecf20Sopenharmony_ci
3148c2ecf20Sopenharmony_ciconfig MIPS_GIC
3158c2ecf20Sopenharmony_ci	bool
3168c2ecf20Sopenharmony_ci	select GENERIC_IRQ_IPI if SMP
3178c2ecf20Sopenharmony_ci	select IRQ_DOMAIN_HIERARCHY
3188c2ecf20Sopenharmony_ci	select MIPS_CM
3198c2ecf20Sopenharmony_ci
3208c2ecf20Sopenharmony_ciconfig INGENIC_IRQ
3218c2ecf20Sopenharmony_ci	bool
3228c2ecf20Sopenharmony_ci	depends on MACH_INGENIC
3238c2ecf20Sopenharmony_ci	default y
3248c2ecf20Sopenharmony_ci
3258c2ecf20Sopenharmony_ciconfig INGENIC_TCU_IRQ
3268c2ecf20Sopenharmony_ci	bool "Ingenic JZ47xx TCU interrupt controller"
3278c2ecf20Sopenharmony_ci	default MACH_INGENIC
3288c2ecf20Sopenharmony_ci	depends on MIPS || COMPILE_TEST
3298c2ecf20Sopenharmony_ci	select MFD_SYSCON
3308c2ecf20Sopenharmony_ci	select GENERIC_IRQ_CHIP
3318c2ecf20Sopenharmony_ci	help
3328c2ecf20Sopenharmony_ci	  Support for interrupts in the Timer/Counter Unit (TCU) of the Ingenic
3338c2ecf20Sopenharmony_ci	  JZ47xx SoCs.
3348c2ecf20Sopenharmony_ci
3358c2ecf20Sopenharmony_ci	  If unsure, say N.
3368c2ecf20Sopenharmony_ci
3378c2ecf20Sopenharmony_ciconfig RENESAS_H8300H_INTC
3388c2ecf20Sopenharmony_ci        bool
3398c2ecf20Sopenharmony_ci	select IRQ_DOMAIN
3408c2ecf20Sopenharmony_ci
3418c2ecf20Sopenharmony_ciconfig RENESAS_H8S_INTC
3428c2ecf20Sopenharmony_ci	bool "Renesas H8S Interrupt Controller Support" if COMPILE_TEST
3438c2ecf20Sopenharmony_ci	select IRQ_DOMAIN
3448c2ecf20Sopenharmony_ci	help
3458c2ecf20Sopenharmony_ci	  Enable support for the Renesas H8/300 Interrupt Controller, as found
3468c2ecf20Sopenharmony_ci	  on Renesas H8S SoCs.
3478c2ecf20Sopenharmony_ci
3488c2ecf20Sopenharmony_ciconfig IMX_GPCV2
3498c2ecf20Sopenharmony_ci	bool
3508c2ecf20Sopenharmony_ci	select IRQ_DOMAIN
3518c2ecf20Sopenharmony_ci	help
3528c2ecf20Sopenharmony_ci	  Enables the wakeup IRQs for IMX platforms with GPCv2 block
3538c2ecf20Sopenharmony_ci
3548c2ecf20Sopenharmony_ciconfig IRQ_MXS
3558c2ecf20Sopenharmony_ci	def_bool y if MACH_ASM9260 || ARCH_MXS
3568c2ecf20Sopenharmony_ci	select IRQ_DOMAIN
3578c2ecf20Sopenharmony_ci	select STMP_DEVICE
3588c2ecf20Sopenharmony_ci
3598c2ecf20Sopenharmony_ciconfig MSCC_OCELOT_IRQ
3608c2ecf20Sopenharmony_ci	bool
3618c2ecf20Sopenharmony_ci	select IRQ_DOMAIN
3628c2ecf20Sopenharmony_ci	select GENERIC_IRQ_CHIP
3638c2ecf20Sopenharmony_ci
3648c2ecf20Sopenharmony_ciconfig MVEBU_GICP
3658c2ecf20Sopenharmony_ci	bool
3668c2ecf20Sopenharmony_ci
3678c2ecf20Sopenharmony_ciconfig MVEBU_ICU
3688c2ecf20Sopenharmony_ci	bool
3698c2ecf20Sopenharmony_ci
3708c2ecf20Sopenharmony_ciconfig MVEBU_ODMI
3718c2ecf20Sopenharmony_ci	bool
3728c2ecf20Sopenharmony_ci	select GENERIC_MSI_IRQ_DOMAIN
3738c2ecf20Sopenharmony_ci
3748c2ecf20Sopenharmony_ciconfig MVEBU_PIC
3758c2ecf20Sopenharmony_ci	bool
3768c2ecf20Sopenharmony_ci
3778c2ecf20Sopenharmony_ciconfig MVEBU_SEI
3788c2ecf20Sopenharmony_ci        bool
3798c2ecf20Sopenharmony_ci
3808c2ecf20Sopenharmony_ciconfig LS_EXTIRQ
3818c2ecf20Sopenharmony_ci	def_bool y if SOC_LS1021A || ARCH_LAYERSCAPE
3828c2ecf20Sopenharmony_ci	select MFD_SYSCON
3838c2ecf20Sopenharmony_ci
3848c2ecf20Sopenharmony_ciconfig LS_SCFG_MSI
3858c2ecf20Sopenharmony_ci	def_bool y if SOC_LS1021A || ARCH_LAYERSCAPE
3868c2ecf20Sopenharmony_ci	depends on PCI && PCI_MSI
3878c2ecf20Sopenharmony_ci
3888c2ecf20Sopenharmony_ciconfig PARTITION_PERCPU
3898c2ecf20Sopenharmony_ci	bool
3908c2ecf20Sopenharmony_ci
3918c2ecf20Sopenharmony_ciconfig EZNPS_GIC
3928c2ecf20Sopenharmony_ci	bool "NPS400 Global Interrupt Manager (GIM)"
3938c2ecf20Sopenharmony_ci	depends on ARC || (COMPILE_TEST && !64BIT)
3948c2ecf20Sopenharmony_ci	select IRQ_DOMAIN
3958c2ecf20Sopenharmony_ci	help
3968c2ecf20Sopenharmony_ci	  Support the EZchip NPS400 global interrupt controller
3978c2ecf20Sopenharmony_ci
3988c2ecf20Sopenharmony_ciconfig STM32_EXTI
3998c2ecf20Sopenharmony_ci	bool
4008c2ecf20Sopenharmony_ci	select IRQ_DOMAIN
4018c2ecf20Sopenharmony_ci	select GENERIC_IRQ_CHIP
4028c2ecf20Sopenharmony_ci
4038c2ecf20Sopenharmony_ciconfig QCOM_IRQ_COMBINER
4048c2ecf20Sopenharmony_ci	bool "QCOM IRQ combiner support"
4058c2ecf20Sopenharmony_ci	depends on ARCH_QCOM && ACPI
4068c2ecf20Sopenharmony_ci	select IRQ_DOMAIN_HIERARCHY
4078c2ecf20Sopenharmony_ci	help
4088c2ecf20Sopenharmony_ci	  Say yes here to add support for the IRQ combiner devices embedded
4098c2ecf20Sopenharmony_ci	  in Qualcomm Technologies chips.
4108c2ecf20Sopenharmony_ci
4118c2ecf20Sopenharmony_ciconfig IRQ_UNIPHIER_AIDET
4128c2ecf20Sopenharmony_ci	bool "UniPhier AIDET support" if COMPILE_TEST
4138c2ecf20Sopenharmony_ci	depends on ARCH_UNIPHIER || COMPILE_TEST
4148c2ecf20Sopenharmony_ci	default ARCH_UNIPHIER
4158c2ecf20Sopenharmony_ci	select IRQ_DOMAIN_HIERARCHY
4168c2ecf20Sopenharmony_ci	help
4178c2ecf20Sopenharmony_ci	  Support for the UniPhier AIDET (ARM Interrupt Detector).
4188c2ecf20Sopenharmony_ci
4198c2ecf20Sopenharmony_ciconfig MESON_IRQ_GPIO
4208c2ecf20Sopenharmony_ci       bool "Meson GPIO Interrupt Multiplexer"
4218c2ecf20Sopenharmony_ci       depends on ARCH_MESON
4228c2ecf20Sopenharmony_ci       select IRQ_DOMAIN_HIERARCHY
4238c2ecf20Sopenharmony_ci       help
4248c2ecf20Sopenharmony_ci         Support Meson SoC Family GPIO Interrupt Multiplexer
4258c2ecf20Sopenharmony_ci
4268c2ecf20Sopenharmony_ciconfig GOLDFISH_PIC
4278c2ecf20Sopenharmony_ci       bool "Goldfish programmable interrupt controller"
4288c2ecf20Sopenharmony_ci       depends on MIPS && (GOLDFISH || COMPILE_TEST)
4298c2ecf20Sopenharmony_ci       select GENERIC_IRQ_CHIP
4308c2ecf20Sopenharmony_ci       select IRQ_DOMAIN
4318c2ecf20Sopenharmony_ci       help
4328c2ecf20Sopenharmony_ci         Say yes here to enable Goldfish interrupt controller driver used
4338c2ecf20Sopenharmony_ci         for Goldfish based virtual platforms.
4348c2ecf20Sopenharmony_ci
4358c2ecf20Sopenharmony_ciconfig QCOM_PDC
4368c2ecf20Sopenharmony_ci	bool "QCOM PDC"
4378c2ecf20Sopenharmony_ci	depends on ARCH_QCOM
4388c2ecf20Sopenharmony_ci	select IRQ_DOMAIN_HIERARCHY
4398c2ecf20Sopenharmony_ci	help
4408c2ecf20Sopenharmony_ci	  Power Domain Controller driver to manage and configure wakeup
4418c2ecf20Sopenharmony_ci	  IRQs for Qualcomm Technologies Inc (QTI) mobile chips.
4428c2ecf20Sopenharmony_ci
4438c2ecf20Sopenharmony_ciconfig CSKY_MPINTC
4448c2ecf20Sopenharmony_ci	bool "C-SKY Multi Processor Interrupt Controller"
4458c2ecf20Sopenharmony_ci	depends on CSKY
4468c2ecf20Sopenharmony_ci	help
4478c2ecf20Sopenharmony_ci	  Say yes here to enable C-SKY SMP interrupt controller driver used
4488c2ecf20Sopenharmony_ci	  for C-SKY SMP system.
4498c2ecf20Sopenharmony_ci	  In fact it's not mmio map in hardware and it uses ld/st to visit the
4508c2ecf20Sopenharmony_ci	  controller's register inside CPU.
4518c2ecf20Sopenharmony_ci
4528c2ecf20Sopenharmony_ciconfig CSKY_APB_INTC
4538c2ecf20Sopenharmony_ci	bool "C-SKY APB Interrupt Controller"
4548c2ecf20Sopenharmony_ci	depends on CSKY
4558c2ecf20Sopenharmony_ci	help
4568c2ecf20Sopenharmony_ci	  Say yes here to enable C-SKY APB interrupt controller driver used
4578c2ecf20Sopenharmony_ci	  by C-SKY single core SOC system. It uses mmio map apb-bus to visit
4588c2ecf20Sopenharmony_ci	  the controller's register.
4598c2ecf20Sopenharmony_ci
4608c2ecf20Sopenharmony_ciconfig IMX_IRQSTEER
4618c2ecf20Sopenharmony_ci	bool "i.MX IRQSTEER support"
4628c2ecf20Sopenharmony_ci	depends on ARCH_MXC || COMPILE_TEST
4638c2ecf20Sopenharmony_ci	default ARCH_MXC
4648c2ecf20Sopenharmony_ci	select IRQ_DOMAIN
4658c2ecf20Sopenharmony_ci	help
4668c2ecf20Sopenharmony_ci	  Support for the i.MX IRQSTEER interrupt multiplexer/remapper.
4678c2ecf20Sopenharmony_ci
4688c2ecf20Sopenharmony_ciconfig IMX_INTMUX
4698c2ecf20Sopenharmony_ci	bool "i.MX INTMUX support" if COMPILE_TEST
4708c2ecf20Sopenharmony_ci	default y if ARCH_MXC
4718c2ecf20Sopenharmony_ci	select IRQ_DOMAIN
4728c2ecf20Sopenharmony_ci	help
4738c2ecf20Sopenharmony_ci	  Support for the i.MX INTMUX interrupt multiplexer.
4748c2ecf20Sopenharmony_ci
4758c2ecf20Sopenharmony_ciconfig LS1X_IRQ
4768c2ecf20Sopenharmony_ci	bool "Loongson-1 Interrupt Controller"
4778c2ecf20Sopenharmony_ci	depends on MACH_LOONGSON32
4788c2ecf20Sopenharmony_ci	default y
4798c2ecf20Sopenharmony_ci	select IRQ_DOMAIN
4808c2ecf20Sopenharmony_ci	select GENERIC_IRQ_CHIP
4818c2ecf20Sopenharmony_ci	help
4828c2ecf20Sopenharmony_ci	  Support for the Loongson-1 platform Interrupt Controller.
4838c2ecf20Sopenharmony_ci
4848c2ecf20Sopenharmony_ciconfig TI_SCI_INTR_IRQCHIP
4858c2ecf20Sopenharmony_ci	bool
4868c2ecf20Sopenharmony_ci	depends on TI_SCI_PROTOCOL
4878c2ecf20Sopenharmony_ci	select IRQ_DOMAIN_HIERARCHY
4888c2ecf20Sopenharmony_ci	help
4898c2ecf20Sopenharmony_ci	  This enables the irqchip driver support for K3 Interrupt router
4908c2ecf20Sopenharmony_ci	  over TI System Control Interface available on some new TI's SoCs.
4918c2ecf20Sopenharmony_ci	  If you wish to use interrupt router irq resources managed by the
4928c2ecf20Sopenharmony_ci	  TI System Controller, say Y here. Otherwise, say N.
4938c2ecf20Sopenharmony_ci
4948c2ecf20Sopenharmony_ciconfig TI_SCI_INTA_IRQCHIP
4958c2ecf20Sopenharmony_ci	bool
4968c2ecf20Sopenharmony_ci	depends on TI_SCI_PROTOCOL
4978c2ecf20Sopenharmony_ci	select IRQ_DOMAIN_HIERARCHY
4988c2ecf20Sopenharmony_ci	select TI_SCI_INTA_MSI_DOMAIN
4998c2ecf20Sopenharmony_ci	help
5008c2ecf20Sopenharmony_ci	  This enables the irqchip driver support for K3 Interrupt aggregator
5018c2ecf20Sopenharmony_ci	  over TI System Control Interface available on some new TI's SoCs.
5028c2ecf20Sopenharmony_ci	  If you wish to use interrupt aggregator irq resources managed by the
5038c2ecf20Sopenharmony_ci	  TI System Controller, say Y here. Otherwise, say N.
5048c2ecf20Sopenharmony_ci
5058c2ecf20Sopenharmony_ciconfig TI_PRUSS_INTC
5068c2ecf20Sopenharmony_ci	tristate "TI PRU-ICSS Interrupt Controller"
5078c2ecf20Sopenharmony_ci	depends on ARCH_DAVINCI || SOC_AM33XX || SOC_AM43XX || SOC_DRA7XX || ARCH_KEYSTONE || ARCH_K3
5088c2ecf20Sopenharmony_ci	select IRQ_DOMAIN
5098c2ecf20Sopenharmony_ci	help
5108c2ecf20Sopenharmony_ci	  This enables support for the PRU-ICSS Local Interrupt Controller
5118c2ecf20Sopenharmony_ci	  present within a PRU-ICSS subsystem present on various TI SoCs.
5128c2ecf20Sopenharmony_ci	  The PRUSS INTC enables various interrupts to be routed to multiple
5138c2ecf20Sopenharmony_ci	  different processors within the SoC.
5148c2ecf20Sopenharmony_ci
5158c2ecf20Sopenharmony_ciconfig RISCV_INTC
5168c2ecf20Sopenharmony_ci	bool "RISC-V Local Interrupt Controller"
5178c2ecf20Sopenharmony_ci	depends on RISCV
5188c2ecf20Sopenharmony_ci	default y
5198c2ecf20Sopenharmony_ci	help
5208c2ecf20Sopenharmony_ci	   This enables support for the per-HART local interrupt controller
5218c2ecf20Sopenharmony_ci	   found in standard RISC-V systems.  The per-HART local interrupt
5228c2ecf20Sopenharmony_ci	   controller handles timer interrupts, software interrupts, and
5238c2ecf20Sopenharmony_ci	   hardware interrupts. Without a per-HART local interrupt controller,
5248c2ecf20Sopenharmony_ci	   a RISC-V system will be unable to handle any interrupts.
5258c2ecf20Sopenharmony_ci
5268c2ecf20Sopenharmony_ci	   If you don't know what to do here, say Y.
5278c2ecf20Sopenharmony_ci
5288c2ecf20Sopenharmony_ciconfig SIFIVE_PLIC
5298c2ecf20Sopenharmony_ci	bool "SiFive Platform-Level Interrupt Controller"
5308c2ecf20Sopenharmony_ci	depends on RISCV
5318c2ecf20Sopenharmony_ci	select IRQ_DOMAIN_HIERARCHY
5328c2ecf20Sopenharmony_ci	help
5338c2ecf20Sopenharmony_ci	   This enables support for the PLIC chip found in SiFive (and
5348c2ecf20Sopenharmony_ci	   potentially other) RISC-V systems.  The PLIC controls devices
5358c2ecf20Sopenharmony_ci	   interrupts and connects them to each core's local interrupt
5368c2ecf20Sopenharmony_ci	   controller.  Aside from timer and software interrupts, all other
5378c2ecf20Sopenharmony_ci	   interrupt sources are subordinate to the PLIC.
5388c2ecf20Sopenharmony_ci
5398c2ecf20Sopenharmony_ci	   If you don't know what to do here, say Y.
5408c2ecf20Sopenharmony_ci
5418c2ecf20Sopenharmony_ciconfig EXYNOS_IRQ_COMBINER
5428c2ecf20Sopenharmony_ci	bool "Samsung Exynos IRQ combiner support" if COMPILE_TEST
5438c2ecf20Sopenharmony_ci	depends on (ARCH_EXYNOS && ARM) || COMPILE_TEST
5448c2ecf20Sopenharmony_ci	help
5458c2ecf20Sopenharmony_ci	  Say yes here to add support for the IRQ combiner devices embedded
5468c2ecf20Sopenharmony_ci	  in Samsung Exynos chips.
5478c2ecf20Sopenharmony_ci
5488c2ecf20Sopenharmony_ciconfig IRQ_LOONGARCH_CPU
5498c2ecf20Sopenharmony_ci	bool
5508c2ecf20Sopenharmony_ci	select GENERIC_IRQ_CHIP
5518c2ecf20Sopenharmony_ci	select IRQ_DOMAIN
5528c2ecf20Sopenharmony_ci	select GENERIC_IRQ_EFFECTIVE_AFF_MASK
5538c2ecf20Sopenharmony_ci
5548c2ecf20Sopenharmony_ciconfig LOONGSON_LIOINTC
5558c2ecf20Sopenharmony_ci	bool "Loongson Local I/O Interrupt Controller"
5568c2ecf20Sopenharmony_ci	depends on MACH_LOONGSON64
5578c2ecf20Sopenharmony_ci	default y
5588c2ecf20Sopenharmony_ci	select IRQ_DOMAIN
5598c2ecf20Sopenharmony_ci	select GENERIC_IRQ_CHIP
5608c2ecf20Sopenharmony_ci	help
5618c2ecf20Sopenharmony_ci	  Support for the Loongson Local I/O Interrupt Controller.
5628c2ecf20Sopenharmony_ci
5638c2ecf20Sopenharmony_ciconfig LOONGSON_EIOINTC
5648c2ecf20Sopenharmony_ci	bool "Loongson Extend I/O Interrupt Controller"
5658c2ecf20Sopenharmony_ci	depends on LOONGARCH
5668c2ecf20Sopenharmony_ci	depends on MACH_LOONGSON64
5678c2ecf20Sopenharmony_ci	default MACH_LOONGSON64
5688c2ecf20Sopenharmony_ci	select IRQ_DOMAIN_HIERARCHY
5698c2ecf20Sopenharmony_ci	select GENERIC_IRQ_CHIP
5708c2ecf20Sopenharmony_ci	help
5718c2ecf20Sopenharmony_ci	  Support for the Loongson3 Extend I/O Interrupt Vector Controller.
5728c2ecf20Sopenharmony_ci
5738c2ecf20Sopenharmony_ciconfig LOONGSON_HTPIC
5748c2ecf20Sopenharmony_ci	bool "Loongson3 HyperTransport PIC Controller"
5758c2ecf20Sopenharmony_ci	depends on (MACH_LOONGSON64 && MIPS)
5768c2ecf20Sopenharmony_ci	default y
5778c2ecf20Sopenharmony_ci	select IRQ_DOMAIN
5788c2ecf20Sopenharmony_ci	select GENERIC_IRQ_CHIP
5798c2ecf20Sopenharmony_ci	help
5808c2ecf20Sopenharmony_ci	  Support for the Loongson-3 HyperTransport PIC Controller.
5818c2ecf20Sopenharmony_ci
5828c2ecf20Sopenharmony_ciconfig LOONGSON_HTVEC
5838c2ecf20Sopenharmony_ci	bool "Loongson HyperTransport Interrupt Vector Controller"
5848c2ecf20Sopenharmony_ci	depends on MACH_LOONGSON64
5858c2ecf20Sopenharmony_ci	default MACH_LOONGSON64
5868c2ecf20Sopenharmony_ci	select IRQ_DOMAIN_HIERARCHY
5878c2ecf20Sopenharmony_ci	help
5888c2ecf20Sopenharmony_ci	  Support for the Loongson HyperTransport Interrupt Vector Controller.
5898c2ecf20Sopenharmony_ci
5908c2ecf20Sopenharmony_ciconfig LOONGSON_PCH_PIC
5918c2ecf20Sopenharmony_ci	bool "Loongson PCH PIC Controller"
5928c2ecf20Sopenharmony_ci	depends on MACH_LOONGSON64 || COMPILE_TEST
5938c2ecf20Sopenharmony_ci	default MACH_LOONGSON64
5948c2ecf20Sopenharmony_ci	select IRQ_DOMAIN_HIERARCHY
5958c2ecf20Sopenharmony_ci	select IRQ_FASTEOI_HIERARCHY_HANDLERS
5968c2ecf20Sopenharmony_ci	help
5978c2ecf20Sopenharmony_ci	  Support for the Loongson PCH PIC Controller.
5988c2ecf20Sopenharmony_ci
5998c2ecf20Sopenharmony_ciconfig LOONGSON_PCH_MSI
6008c2ecf20Sopenharmony_ci	bool "Loongson PCH MSI Controller"
6018c2ecf20Sopenharmony_ci	depends on MACH_LOONGSON64 || COMPILE_TEST
6028c2ecf20Sopenharmony_ci	depends on PCI
6038c2ecf20Sopenharmony_ci	default MACH_LOONGSON64
6048c2ecf20Sopenharmony_ci	select IRQ_DOMAIN_HIERARCHY
6058c2ecf20Sopenharmony_ci	select PCI_MSI
6068c2ecf20Sopenharmony_ci	help
6078c2ecf20Sopenharmony_ci	  Support for the Loongson PCH MSI Controller.
6088c2ecf20Sopenharmony_ci
6098c2ecf20Sopenharmony_ciconfig LOONGSON_PCH_LPC
6108c2ecf20Sopenharmony_ci	bool "Loongson PCH LPC Controller"
6118c2ecf20Sopenharmony_ci	depends on MACH_LOONGSON64 || COMPILE_TEST
6128c2ecf20Sopenharmony_ci	default (MACH_LOONGSON64 && LOONGARCH)
6138c2ecf20Sopenharmony_ci	select IRQ_DOMAIN_HIERARCHY
6148c2ecf20Sopenharmony_ci	help
6158c2ecf20Sopenharmony_ci	  Support for the Loongson PCH LPC Controller.
6168c2ecf20Sopenharmony_ci
6178c2ecf20Sopenharmony_ciconfig MST_IRQ
6188c2ecf20Sopenharmony_ci	bool "MStar Interrupt Controller"
6198c2ecf20Sopenharmony_ci	depends on ARCH_MEDIATEK || ARCH_MSTARV7 || COMPILE_TEST
6208c2ecf20Sopenharmony_ci	default ARCH_MEDIATEK
6218c2ecf20Sopenharmony_ci	select IRQ_DOMAIN
6228c2ecf20Sopenharmony_ci	select IRQ_DOMAIN_HIERARCHY
6238c2ecf20Sopenharmony_ci	help
6248c2ecf20Sopenharmony_ci	  Support MStar Interrupt Controller.
6258c2ecf20Sopenharmony_ci
6268c2ecf20Sopenharmony_ciendmenu
627