1# interrupt controller configuration options 2 3# Copyright (c) 2015 Intel Corporation 4# SPDX-License-Identifier: Apache-2.0 5 6menu "Interrupt controller drivers" 7 8config ARCV2_INTERRUPT_UNIT 9 bool "ARCv2 Interrupt Unit" 10 default y 11 depends on ARC 12 help 13 The ARCv2 interrupt unit has 16 allocated exceptions associated with 14 vectors 0 to 15 and 240 interrupts associated with vectors 16 to 255. 15 The interrupt unit is optional in the ARCv2-based processors. When 16 building a processor, you can configure the processor to include an 17 interrupt unit. The ARCv2 interrupt unit is highly programmable. 18 19config SWERV_PIC 20 bool "SweRV EH1 Programmable Interrupt Controller (PIC)" 21 default y 22 depends on DT_HAS_SWERV_PIC_ENABLED 23 help 24 Programmable Interrupt Controller for the SweRV EH1 RISC-V CPU. 25 26config VEXRISCV_LITEX_IRQ 27 bool "VexRiscv LiteX Interrupt controller" 28 default y 29 depends on DT_HAS_LITEX_VEXRISCV_INTC0_ENABLED 30 help 31 IRQ implementation for LiteX VexRiscv 32 33config HAZARD3_INTC 34 bool "Hazard3 interrupt controller" 35 default y 36 select PICOSDK_USE_CLAIM 37 select RISCV_SOC_HAS_CUSTOM_IRQ_HANDLING 38 depends on DT_HAS_HAZARD3_HAZARD3_INTC_ENABLED 39 help 40 IRQ implementation for Hazard3 Interrupt Controller found on the RP2350 series SoCs 41 42config LEON_IRQMP 43 bool "GRLIB IRQMP interrupt controller" 44 default y 45 depends on DT_HAS_GAISLER_IRQMP_ENABLED 46 help 47 GRLIB IRQMP and IRQAMP 48 49config INTC_INIT_PRIORITY 50 int "Interrupt controller init priority" 51 default KERNEL_INIT_PRIORITY_DEFAULT 52 help 53 Interrupt controller device initialization priority. 54 55if MCHP_ECIA_XEC 56 57config XEC_GIRQ_INIT_PRIORITY 58 int "XEX GIRQ Interrupt controller init priority" 59 default 41 60 help 61 XEC GIRQ Interrupt controller device initialization priority. 62 The priority value needs to be greater than INTC_INIT_PRIORITY 63 So that the XEC GIRQ controllers are initialized after the 64 xec_ecia. 65 66endif 67 68module = INTC 69module-str = intc 70source "subsys/logging/Kconfig.template.log_config" 71 72# zephyr-keep-sorted-start 73source "drivers/interrupt_controller/Kconfig.cavs" 74source "drivers/interrupt_controller/Kconfig.clic" 75source "drivers/interrupt_controller/Kconfig.dw" 76source "drivers/interrupt_controller/Kconfig.esp32" 77source "drivers/interrupt_controller/Kconfig.gd32_exti" 78source "drivers/interrupt_controller/Kconfig.gic" 79source "drivers/interrupt_controller/Kconfig.intel_vtd" 80source "drivers/interrupt_controller/Kconfig.it51xxx" 81source "drivers/interrupt_controller/Kconfig.it8xxx2" 82source "drivers/interrupt_controller/Kconfig.loapic" 83source "drivers/interrupt_controller/Kconfig.mtk_adsp" 84source "drivers/interrupt_controller/Kconfig.multilevel" 85source "drivers/interrupt_controller/Kconfig.npcx" 86source "drivers/interrupt_controller/Kconfig.nxp_irqsteer" 87source "drivers/interrupt_controller/Kconfig.nxp_pint" 88source "drivers/interrupt_controller/Kconfig.nxp_s32" 89source "drivers/interrupt_controller/Kconfig.nxp_siul2" 90source "drivers/interrupt_controller/Kconfig.plic" 91source "drivers/interrupt_controller/Kconfig.renesas_rx" 92source "drivers/interrupt_controller/Kconfig.renesas_rz" 93source "drivers/interrupt_controller/Kconfig.rv32m1" 94source "drivers/interrupt_controller/Kconfig.sam0" 95source "drivers/interrupt_controller/Kconfig.stm32" 96source "drivers/interrupt_controller/Kconfig.vim" 97source "drivers/interrupt_controller/Kconfig.wch_exti" 98source "drivers/interrupt_controller/Kconfig.wch_pfic" 99source "drivers/interrupt_controller/Kconfig.xec" 100source "drivers/interrupt_controller/Kconfig.xmc4xxx" 101# zephyr-keep-sorted-stop 102 103endmenu 104