cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

Kconfig (14577B)


      1# SPDX-License-Identifier: GPL-2.0-only
      2menu "IRQ chip support"
      3
      4config IRQCHIP
      5	def_bool y
      6	depends on OF_IRQ
      7
      8config ARM_GIC
      9	bool
     10	select IRQ_DOMAIN_HIERARCHY
     11	select GENERIC_IRQ_EFFECTIVE_AFF_MASK
     12
     13config ARM_GIC_PM
     14	bool
     15	depends on PM
     16	select ARM_GIC
     17
     18config ARM_GIC_MAX_NR
     19	int
     20	depends on ARM_GIC
     21	default 2 if ARCH_REALVIEW
     22	default 1
     23
     24config ARM_GIC_V2M
     25	bool
     26	depends on PCI
     27	select ARM_GIC
     28	select PCI_MSI
     29
     30config GIC_NON_BANKED
     31	bool
     32
     33config ARM_GIC_V3
     34	bool
     35	select IRQ_DOMAIN_HIERARCHY
     36	select PARTITION_PERCPU
     37	select GENERIC_IRQ_EFFECTIVE_AFF_MASK
     38
     39config ARM_GIC_V3_ITS
     40	bool
     41	select GENERIC_MSI_IRQ_DOMAIN
     42	default ARM_GIC_V3
     43
     44config ARM_GIC_V3_ITS_PCI
     45	bool
     46	depends on ARM_GIC_V3_ITS
     47	depends on PCI
     48	depends on PCI_MSI
     49	default ARM_GIC_V3_ITS
     50
     51config ARM_GIC_V3_ITS_FSL_MC
     52	bool
     53	depends on ARM_GIC_V3_ITS
     54	depends on FSL_MC_BUS
     55	default ARM_GIC_V3_ITS
     56
     57config ARM_NVIC
     58	bool
     59	select IRQ_DOMAIN_HIERARCHY
     60	select GENERIC_IRQ_CHIP
     61
     62config ARM_VIC
     63	bool
     64	select IRQ_DOMAIN
     65
     66config ARM_VIC_NR
     67	int
     68	default 4 if ARCH_S5PV210
     69	default 2
     70	depends on ARM_VIC
     71	help
     72	  The maximum number of VICs available in the system, for
     73	  power management.
     74
     75config ARMADA_370_XP_IRQ
     76	bool
     77	select GENERIC_IRQ_CHIP
     78	select PCI_MSI if PCI
     79	select GENERIC_IRQ_EFFECTIVE_AFF_MASK
     80
     81config ALPINE_MSI
     82	bool
     83	depends on PCI
     84	select PCI_MSI
     85	select GENERIC_IRQ_CHIP
     86
     87config AL_FIC
     88	bool "Amazon's Annapurna Labs Fabric Interrupt Controller"
     89	depends on OF || COMPILE_TEST
     90	select GENERIC_IRQ_CHIP
     91	select IRQ_DOMAIN
     92	help
     93	  Support Amazon's Annapurna Labs Fabric Interrupt Controller.
     94
     95config ATMEL_AIC_IRQ
     96	bool
     97	select GENERIC_IRQ_CHIP
     98	select IRQ_DOMAIN
     99	select SPARSE_IRQ
    100
    101config ATMEL_AIC5_IRQ
    102	bool
    103	select GENERIC_IRQ_CHIP
    104	select IRQ_DOMAIN
    105	select SPARSE_IRQ
    106
    107config I8259
    108	bool
    109	select IRQ_DOMAIN
    110
    111config BCM6345_L1_IRQ
    112	bool
    113	select GENERIC_IRQ_CHIP
    114	select IRQ_DOMAIN
    115	select GENERIC_IRQ_EFFECTIVE_AFF_MASK
    116
    117config BCM7038_L1_IRQ
    118	tristate "Broadcom STB 7038-style L1/L2 interrupt controller driver"
    119	depends on ARCH_BRCMSTB || BMIPS_GENERIC
    120	default ARCH_BRCMSTB || BMIPS_GENERIC
    121	select GENERIC_IRQ_CHIP
    122	select IRQ_DOMAIN
    123	select GENERIC_IRQ_EFFECTIVE_AFF_MASK
    124
    125config BCM7120_L2_IRQ
    126	tristate "Broadcom STB 7120-style L2 interrupt controller driver"
    127	depends on ARCH_BRCMSTB || BMIPS_GENERIC
    128	default ARCH_BRCMSTB || BMIPS_GENERIC
    129	select GENERIC_IRQ_CHIP
    130	select IRQ_DOMAIN
    131
    132config BRCMSTB_L2_IRQ
    133	tristate "Broadcom STB generic L2 interrupt controller driver"
    134	depends on ARCH_BCM2835 || ARCH_BRCMSTB || BMIPS_GENERIC
    135	default ARCH_BCM2835 || ARCH_BRCMSTB || BMIPS_GENERIC
    136	select GENERIC_IRQ_CHIP
    137	select IRQ_DOMAIN
    138
    139config DAVINCI_AINTC
    140	bool
    141	select GENERIC_IRQ_CHIP
    142	select IRQ_DOMAIN
    143
    144config DAVINCI_CP_INTC
    145	bool
    146	select GENERIC_IRQ_CHIP
    147	select IRQ_DOMAIN
    148
    149config DW_APB_ICTL
    150	bool
    151	select GENERIC_IRQ_CHIP
    152	select IRQ_DOMAIN_HIERARCHY
    153
    154config FARADAY_FTINTC010
    155	bool
    156	select IRQ_DOMAIN
    157	select SPARSE_IRQ
    158
    159config HISILICON_IRQ_MBIGEN
    160	bool
    161	select ARM_GIC_V3
    162	select ARM_GIC_V3_ITS
    163
    164config IMGPDC_IRQ
    165	bool
    166	select GENERIC_IRQ_CHIP
    167	select IRQ_DOMAIN
    168
    169config IXP4XX_IRQ
    170	bool
    171	select IRQ_DOMAIN
    172	select SPARSE_IRQ
    173
    174config MADERA_IRQ
    175	tristate
    176
    177config IRQ_MIPS_CPU
    178	bool
    179	select GENERIC_IRQ_CHIP
    180	select GENERIC_IRQ_IPI if SYS_SUPPORTS_MULTITHREADING
    181	select IRQ_DOMAIN
    182	select GENERIC_IRQ_EFFECTIVE_AFF_MASK
    183
    184config CLPS711X_IRQCHIP
    185	bool
    186	depends on ARCH_CLPS711X
    187	select IRQ_DOMAIN
    188	select SPARSE_IRQ
    189	default y
    190
    191config OMPIC
    192	bool
    193
    194config OR1K_PIC
    195	bool
    196	select IRQ_DOMAIN
    197
    198config OMAP_IRQCHIP
    199	bool
    200	select GENERIC_IRQ_CHIP
    201	select IRQ_DOMAIN
    202
    203config ORION_IRQCHIP
    204	bool
    205	select IRQ_DOMAIN
    206
    207config PIC32_EVIC
    208	bool
    209	select GENERIC_IRQ_CHIP
    210	select IRQ_DOMAIN
    211
    212config JCORE_AIC
    213	bool "J-Core integrated AIC" if COMPILE_TEST
    214	depends on OF
    215	select IRQ_DOMAIN
    216	help
    217	  Support for the J-Core integrated AIC.
    218
    219config RDA_INTC
    220	bool
    221	select IRQ_DOMAIN
    222
    223config RENESAS_INTC_IRQPIN
    224	bool "Renesas INTC External IRQ Pin Support" if COMPILE_TEST
    225	select IRQ_DOMAIN
    226	help
    227	  Enable support for the Renesas Interrupt Controller for external
    228	  interrupt pins, as found on SH/R-Mobile and R-Car Gen1 SoCs.
    229
    230config RENESAS_IRQC
    231	bool "Renesas R-Mobile APE6, R-Car Gen{2,3} and RZ/G{1,2} IRQC support" if COMPILE_TEST
    232	select GENERIC_IRQ_CHIP
    233	select IRQ_DOMAIN
    234	help
    235	  Enable support for the Renesas Interrupt Controller for external
    236	  devices, as found on R-Mobile APE6, R-Car Gen{2,3} and RZ/G{1,2} SoCs.
    237
    238config RENESAS_RZA1_IRQC
    239	bool "Renesas RZ/A1 IRQC support" if COMPILE_TEST
    240	select IRQ_DOMAIN_HIERARCHY
    241	help
    242	  Enable support for the Renesas RZ/A1 Interrupt Controller, to use up
    243	  to 8 external interrupts with configurable sense select.
    244
    245config SL28CPLD_INTC
    246	bool "Kontron sl28cpld IRQ controller"
    247	depends on MFD_SL28CPLD=y || COMPILE_TEST
    248	select REGMAP_IRQ
    249	help
    250	  Interrupt controller driver for the board management controller
    251	  found on the Kontron sl28 CPLD.
    252
    253config ST_IRQCHIP
    254	bool
    255	select REGMAP
    256	select MFD_SYSCON
    257	help
    258	  Enables SysCfg Controlled IRQs on STi based platforms.
    259
    260config SUN4I_INTC
    261	bool
    262
    263config SUN6I_R_INTC
    264	bool
    265	select IRQ_DOMAIN_HIERARCHY
    266	select IRQ_FASTEOI_HIERARCHY_HANDLERS
    267
    268config SUNXI_NMI_INTC
    269	bool
    270	select GENERIC_IRQ_CHIP
    271
    272config TB10X_IRQC
    273	bool
    274	select IRQ_DOMAIN
    275	select GENERIC_IRQ_CHIP
    276
    277config TS4800_IRQ
    278	tristate "TS-4800 IRQ controller"
    279	select IRQ_DOMAIN
    280	depends on HAS_IOMEM
    281	depends on SOC_IMX51 || COMPILE_TEST
    282	help
    283	  Support for the TS-4800 FPGA IRQ controller
    284
    285config VERSATILE_FPGA_IRQ
    286	bool
    287	select IRQ_DOMAIN
    288
    289config VERSATILE_FPGA_IRQ_NR
    290       int
    291       default 4
    292       depends on VERSATILE_FPGA_IRQ
    293
    294config XTENSA_MX
    295	bool
    296	select IRQ_DOMAIN
    297	select GENERIC_IRQ_EFFECTIVE_AFF_MASK
    298
    299config XILINX_INTC
    300	bool "Xilinx Interrupt Controller IP"
    301	depends on OF_ADDRESS
    302	select IRQ_DOMAIN
    303	help
    304	  Support for the Xilinx Interrupt Controller IP core.
    305	  This is used as a primary controller with MicroBlaze and can also
    306	  be used as a secondary chained controller on other platforms.
    307
    308config IRQ_CROSSBAR
    309	bool
    310	help
    311	  Support for a CROSSBAR ip that precedes the main interrupt controller.
    312	  The primary irqchip invokes the crossbar's callback which inturn allocates
    313	  a free irq and configures the IP. Thus the peripheral interrupts are
    314	  routed to one of the free irqchip interrupt lines.
    315
    316config KEYSTONE_IRQ
    317	tristate "Keystone 2 IRQ controller IP"
    318	depends on ARCH_KEYSTONE
    319	help
    320		Support for Texas Instruments Keystone 2 IRQ controller IP which
    321		is part of the Keystone 2 IPC mechanism
    322
    323config MIPS_GIC
    324	bool
    325	select GENERIC_IRQ_IPI
    326	select MIPS_CM
    327
    328config INGENIC_IRQ
    329	bool
    330	depends on MACH_INGENIC
    331	default y
    332
    333config INGENIC_TCU_IRQ
    334	bool "Ingenic JZ47xx TCU interrupt controller"
    335	default MACH_INGENIC
    336	depends on MIPS || COMPILE_TEST
    337	select MFD_SYSCON
    338	select GENERIC_IRQ_CHIP
    339	help
    340	  Support for interrupts in the Timer/Counter Unit (TCU) of the Ingenic
    341	  JZ47xx SoCs.
    342
    343	  If unsure, say N.
    344
    345config IMX_GPCV2
    346	bool
    347	select IRQ_DOMAIN
    348	help
    349	  Enables the wakeup IRQs for IMX platforms with GPCv2 block
    350
    351config IRQ_MXS
    352	def_bool y if MACH_ASM9260 || ARCH_MXS
    353	select IRQ_DOMAIN
    354	select STMP_DEVICE
    355
    356config MSCC_OCELOT_IRQ
    357	bool
    358	select IRQ_DOMAIN
    359	select GENERIC_IRQ_CHIP
    360
    361config MVEBU_GICP
    362	bool
    363
    364config MVEBU_ICU
    365	bool
    366
    367config MVEBU_ODMI
    368	bool
    369	select GENERIC_MSI_IRQ_DOMAIN
    370
    371config MVEBU_PIC
    372	bool
    373
    374config MVEBU_SEI
    375        bool
    376
    377config LS_EXTIRQ
    378	def_bool y if SOC_LS1021A || ARCH_LAYERSCAPE
    379	select MFD_SYSCON
    380
    381config LS_SCFG_MSI
    382	def_bool y if SOC_LS1021A || ARCH_LAYERSCAPE
    383	depends on PCI && PCI_MSI
    384
    385config PARTITION_PERCPU
    386	bool
    387
    388config STM32_EXTI
    389	bool
    390	select IRQ_DOMAIN
    391	select GENERIC_IRQ_CHIP
    392
    393config QCOM_IRQ_COMBINER
    394	bool "QCOM IRQ combiner support"
    395	depends on ARCH_QCOM && ACPI
    396	select IRQ_DOMAIN_HIERARCHY
    397	help
    398	  Say yes here to add support for the IRQ combiner devices embedded
    399	  in Qualcomm Technologies chips.
    400
    401config IRQ_UNIPHIER_AIDET
    402	bool "UniPhier AIDET support" if COMPILE_TEST
    403	depends on ARCH_UNIPHIER || COMPILE_TEST
    404	default ARCH_UNIPHIER
    405	select IRQ_DOMAIN_HIERARCHY
    406	help
    407	  Support for the UniPhier AIDET (ARM Interrupt Detector).
    408
    409config MESON_IRQ_GPIO
    410       tristate "Meson GPIO Interrupt Multiplexer"
    411       depends on ARCH_MESON || COMPILE_TEST
    412       default ARCH_MESON
    413       select IRQ_DOMAIN_HIERARCHY
    414       help
    415         Support Meson SoC Family GPIO Interrupt Multiplexer
    416
    417config GOLDFISH_PIC
    418       bool "Goldfish programmable interrupt controller"
    419       depends on MIPS && (GOLDFISH || COMPILE_TEST)
    420       select GENERIC_IRQ_CHIP
    421       select IRQ_DOMAIN
    422       help
    423         Say yes here to enable Goldfish interrupt controller driver used
    424         for Goldfish based virtual platforms.
    425
    426config QCOM_PDC
    427	tristate "QCOM PDC"
    428	depends on ARCH_QCOM
    429	select IRQ_DOMAIN_HIERARCHY
    430	help
    431	  Power Domain Controller driver to manage and configure wakeup
    432	  IRQs for Qualcomm Technologies Inc (QTI) mobile chips.
    433
    434config QCOM_MPM
    435	tristate "QCOM MPM"
    436	depends on ARCH_QCOM
    437	depends on MAILBOX
    438	select IRQ_DOMAIN_HIERARCHY
    439	help
    440	  MSM Power Manager driver to manage and configure wakeup
    441	  IRQs for Qualcomm Technologies Inc (QTI) mobile chips.
    442
    443config CSKY_MPINTC
    444	bool
    445	depends on CSKY
    446	help
    447	  Say yes here to enable C-SKY SMP interrupt controller driver used
    448	  for C-SKY SMP system.
    449	  In fact it's not mmio map in hardware and it uses ld/st to visit the
    450	  controller's register inside CPU.
    451
    452config CSKY_APB_INTC
    453	bool "C-SKY APB Interrupt Controller"
    454	depends on CSKY
    455	help
    456	  Say yes here to enable C-SKY APB interrupt controller driver used
    457	  by C-SKY single core SOC system. It uses mmio map apb-bus to visit
    458	  the controller's register.
    459
    460config IMX_IRQSTEER
    461	bool "i.MX IRQSTEER support"
    462	depends on ARCH_MXC || COMPILE_TEST
    463	default ARCH_MXC
    464	select IRQ_DOMAIN
    465	help
    466	  Support for the i.MX IRQSTEER interrupt multiplexer/remapper.
    467
    468config IMX_INTMUX
    469	bool "i.MX INTMUX support" if COMPILE_TEST
    470	default y if ARCH_MXC
    471	select IRQ_DOMAIN
    472	help
    473	  Support for the i.MX INTMUX interrupt multiplexer.
    474
    475config LS1X_IRQ
    476	bool "Loongson-1 Interrupt Controller"
    477	depends on MACH_LOONGSON32
    478	default y
    479	select IRQ_DOMAIN
    480	select GENERIC_IRQ_CHIP
    481	help
    482	  Support for the Loongson-1 platform Interrupt Controller.
    483
    484config TI_SCI_INTR_IRQCHIP
    485	bool
    486	depends on TI_SCI_PROTOCOL
    487	select IRQ_DOMAIN_HIERARCHY
    488	help
    489	  This enables the irqchip driver support for K3 Interrupt router
    490	  over TI System Control Interface available on some new TI's SoCs.
    491	  If you wish to use interrupt router irq resources managed by the
    492	  TI System Controller, say Y here. Otherwise, say N.
    493
    494config TI_SCI_INTA_IRQCHIP
    495	bool
    496	depends on TI_SCI_PROTOCOL
    497	select IRQ_DOMAIN_HIERARCHY
    498	select TI_SCI_INTA_MSI_DOMAIN
    499	help
    500	  This enables the irqchip driver support for K3 Interrupt aggregator
    501	  over TI System Control Interface available on some new TI's SoCs.
    502	  If you wish to use interrupt aggregator irq resources managed by the
    503	  TI System Controller, say Y here. Otherwise, say N.
    504
    505config TI_PRUSS_INTC
    506	tristate
    507	depends on TI_PRUSS
    508	default TI_PRUSS
    509	select IRQ_DOMAIN
    510	help
    511	  This enables support for the PRU-ICSS Local Interrupt Controller
    512	  present within a PRU-ICSS subsystem present on various TI SoCs.
    513	  The PRUSS INTC enables various interrupts to be routed to multiple
    514	  different processors within the SoC.
    515
    516config RISCV_INTC
    517	bool "RISC-V Local Interrupt Controller"
    518	depends on RISCV
    519	default y
    520	help
    521	   This enables support for the per-HART local interrupt controller
    522	   found in standard RISC-V systems.  The per-HART local interrupt
    523	   controller handles timer interrupts, software interrupts, and
    524	   hardware interrupts. Without a per-HART local interrupt controller,
    525	   a RISC-V system will be unable to handle any interrupts.
    526
    527	   If you don't know what to do here, say Y.
    528
    529config SIFIVE_PLIC
    530	bool "SiFive Platform-Level Interrupt Controller"
    531	depends on RISCV
    532	select IRQ_DOMAIN_HIERARCHY
    533	help
    534	   This enables support for the PLIC chip found in SiFive (and
    535	   potentially other) RISC-V systems.  The PLIC controls devices
    536	   interrupts and connects them to each core's local interrupt
    537	   controller.  Aside from timer and software interrupts, all other
    538	   interrupt sources are subordinate to the PLIC.
    539
    540	   If you don't know what to do here, say Y.
    541
    542config EXYNOS_IRQ_COMBINER
    543	bool "Samsung Exynos IRQ combiner support" if COMPILE_TEST
    544	depends on (ARCH_EXYNOS && ARM) || COMPILE_TEST
    545	help
    546	  Say yes here to add support for the IRQ combiner devices embedded
    547	  in Samsung Exynos chips.
    548
    549config LOONGSON_LIOINTC
    550	bool "Loongson Local I/O Interrupt Controller"
    551	depends on MACH_LOONGSON64
    552	default y
    553	select IRQ_DOMAIN
    554	select GENERIC_IRQ_CHIP
    555	help
    556	  Support for the Loongson Local I/O Interrupt Controller.
    557
    558config LOONGSON_HTPIC
    559	bool "Loongson3 HyperTransport PIC Controller"
    560	depends on MACH_LOONGSON64 && MIPS
    561	default y
    562	select IRQ_DOMAIN
    563	select GENERIC_IRQ_CHIP
    564	help
    565	  Support for the Loongson-3 HyperTransport PIC Controller.
    566
    567config LOONGSON_HTVEC
    568	bool "Loongson HyperTransport Interrupt Vector Controller"
    569	depends on MACH_LOONGSON64
    570	default MACH_LOONGSON64
    571	select IRQ_DOMAIN_HIERARCHY
    572	help
    573	  Support for the Loongson HyperTransport Interrupt Vector Controller.
    574
    575config LOONGSON_PCH_PIC
    576	bool "Loongson PCH PIC Controller"
    577	depends on MACH_LOONGSON64 || COMPILE_TEST
    578	default MACH_LOONGSON64
    579	select IRQ_DOMAIN_HIERARCHY
    580	select IRQ_FASTEOI_HIERARCHY_HANDLERS
    581	help
    582	  Support for the Loongson PCH PIC Controller.
    583
    584config LOONGSON_PCH_MSI
    585	bool "Loongson PCH MSI Controller"
    586	depends on MACH_LOONGSON64 || COMPILE_TEST
    587	depends on PCI
    588	default MACH_LOONGSON64
    589	select IRQ_DOMAIN_HIERARCHY
    590	select PCI_MSI
    591	help
    592	  Support for the Loongson PCH MSI Controller.
    593
    594config MST_IRQ
    595	bool "MStar Interrupt Controller"
    596	depends on ARCH_MEDIATEK || ARCH_MSTARV7 || COMPILE_TEST
    597	default ARCH_MEDIATEK
    598	select IRQ_DOMAIN
    599	select IRQ_DOMAIN_HIERARCHY
    600	help
    601	  Support MStar Interrupt Controller.
    602
    603config WPCM450_AIC
    604	bool "Nuvoton WPCM450 Advanced Interrupt Controller"
    605	depends on ARCH_WPCM450
    606	help
    607	  Support for the interrupt controller in the Nuvoton WPCM450 BMC SoC.
    608
    609config IRQ_IDT3243X
    610	bool
    611	select GENERIC_IRQ_CHIP
    612	select IRQ_DOMAIN
    613
    614config APPLE_AIC
    615	bool "Apple Interrupt Controller (AIC)"
    616	depends on ARM64
    617	depends on ARCH_APPLE || COMPILE_TEST
    618	help
    619	  Support for the Apple Interrupt Controller found on Apple Silicon SoCs,
    620	  such as the M1.
    621
    622config MCHP_EIC
    623	bool "Microchip External Interrupt Controller"
    624	depends on ARCH_AT91 || COMPILE_TEST
    625	select IRQ_DOMAIN
    626	select IRQ_DOMAIN_HIERARCHY
    627	help
    628	  Support for Microchip External Interrupt Controller.
    629
    630endmenu