:orphan: .. title:: CONFIG_MULTI_LEVEL_INTERRUPTS .. kconfig:: CONFIG_MULTI_LEVEL_INTERRUPTS CONFIG_MULTI_LEVEL_INTERRUPTS ############################# *Multi-level interrupt support* Type: ``bool`` Help ==== .. code-block:: none Multiple levels of interrupts are normally used to increase the number of addressable interrupts in a system. For example, if two levels are used, a second level interrupt aggregator would combine all interrupts routed to it into one IRQ line in the first level interrupt controller. If three levels are used, a third level aggregator combines its input interrupts into one IRQ line at the second level. The number of interrupt levels is usually determined by the hardware. (The term "aggregator" here means "interrupt controller".) Direct dependencies =================== \ :kconfig:`SOC_SERIES_INTEL_CAVS_V15 ` || \ :kconfig:`SOC_SERIES_INTEL_CAVS_V18 ` || \ :kconfig:`SOC_SERIES_INTEL_CAVS_V20 ` || \ :kconfig:`SOC_SERIES_INTEL_CAVS_V25 ` || \ :kconfig:`SOC_SERIES_NXP_IMX8 ` || \ :kconfig:`SOC_SERIES_INTEL_CAVS_V15 ` || \ :kconfig:`SOC_SERIES_INTEL_CAVS_V18 ` || \ :kconfig:`SOC_SERIES_INTEL_CAVS_V20 ` || \ :kconfig:`SOC_SERIES_INTEL_CAVS_V25 ` || \ :kconfig:`SOC_SERIES_NXP_IMX8 ` || \ :kconfig:`GEN_SW_ISR_TABLE ` *(Includes any dependencies from ifs and menus.)* Defaults ======== - y - y - y - y - n - y - y - y - y - n Symbols that select this symbol =============================== - \ :kconfig:`PLIC ` Kconfig definitions =================== At ``/xtensa/intel_adsp/cavs_v15/Kconfig.defconfig.series:45`` Included via ``Kconfig:8`` → ``Kconfig.zephyr:25`` → ``/kconfig/Kconfig.soc.defconfig:1`` → ``/xtensa/intel_adsp/Kconfig.defconfig:6`` Menu path: (Top) .. code-block:: kconfig config MULTI_LEVEL_INTERRUPTS bool default y depends on SOC_SERIES_INTEL_CAVS_V15 ---- At ``/xtensa/intel_adsp/cavs_v18/Kconfig.defconfig.series:45`` Included via ``Kconfig:8`` → ``Kconfig.zephyr:25`` → ``/kconfig/Kconfig.soc.defconfig:1`` → ``/xtensa/intel_adsp/Kconfig.defconfig:6`` Menu path: (Top) .. code-block:: kconfig config MULTI_LEVEL_INTERRUPTS bool default y depends on SOC_SERIES_INTEL_CAVS_V18 ---- At ``/xtensa/intel_adsp/cavs_v20/Kconfig.defconfig.series:45`` Included via ``Kconfig:8`` → ``Kconfig.zephyr:25`` → ``/kconfig/Kconfig.soc.defconfig:1`` → ``/xtensa/intel_adsp/Kconfig.defconfig:6`` Menu path: (Top) .. code-block:: kconfig config MULTI_LEVEL_INTERRUPTS bool default y depends on SOC_SERIES_INTEL_CAVS_V20 ---- At ``/xtensa/intel_adsp/cavs_v25/Kconfig.defconfig.series:49`` Included via ``Kconfig:8`` → ``Kconfig.zephyr:25`` → ``/kconfig/Kconfig.soc.defconfig:1`` → ``/xtensa/intel_adsp/Kconfig.defconfig:6`` Menu path: (Top) .. code-block:: kconfig config MULTI_LEVEL_INTERRUPTS bool default y depends on SOC_SERIES_INTEL_CAVS_V25 ---- At ``/xtensa/nxp_adsp/imx8/Kconfig.defconfig.series:36`` Included via ``Kconfig:8`` → ``Kconfig.zephyr:25`` → ``/kconfig/Kconfig.soc.defconfig:1`` → ``/xtensa/nxp_adsp/Kconfig.defconfig:6`` Menu path: (Top) .. code-block:: kconfig config MULTI_LEVEL_INTERRUPTS bool default n depends on SOC_SERIES_NXP_IMX8 ---- At ``/xtensa/intel_adsp/cavs_v15/Kconfig.defconfig.series:45`` Included via ``Kconfig:8`` → ``Kconfig.zephyr:27`` → ``/xtensa/intel_adsp/Kconfig.defconfig:6`` Menu path: (Top) .. code-block:: kconfig config MULTI_LEVEL_INTERRUPTS bool default y depends on SOC_SERIES_INTEL_CAVS_V15 ---- At ``/xtensa/intel_adsp/cavs_v18/Kconfig.defconfig.series:45`` Included via ``Kconfig:8`` → ``Kconfig.zephyr:27`` → ``/xtensa/intel_adsp/Kconfig.defconfig:6`` Menu path: (Top) .. code-block:: kconfig config MULTI_LEVEL_INTERRUPTS bool default y depends on SOC_SERIES_INTEL_CAVS_V18 ---- At ``/xtensa/intel_adsp/cavs_v20/Kconfig.defconfig.series:45`` Included via ``Kconfig:8`` → ``Kconfig.zephyr:27`` → ``/xtensa/intel_adsp/Kconfig.defconfig:6`` Menu path: (Top) .. code-block:: kconfig config MULTI_LEVEL_INTERRUPTS bool default y depends on SOC_SERIES_INTEL_CAVS_V20 ---- At ``/xtensa/intel_adsp/cavs_v25/Kconfig.defconfig.series:49`` Included via ``Kconfig:8`` → ``Kconfig.zephyr:27`` → ``/xtensa/intel_adsp/Kconfig.defconfig:6`` Menu path: (Top) .. code-block:: kconfig config MULTI_LEVEL_INTERRUPTS bool default y depends on SOC_SERIES_INTEL_CAVS_V25 ---- At ``/xtensa/nxp_adsp/imx8/Kconfig.defconfig.series:36`` Included via ``Kconfig:8`` → ``Kconfig.zephyr:27`` → ``/xtensa/nxp_adsp/Kconfig.defconfig:6`` Menu path: (Top) .. code-block:: kconfig config MULTI_LEVEL_INTERRUPTS bool default n depends on SOC_SERIES_NXP_IMX8 ---- At ``/interrupt_controller/Kconfig.multilevel:7`` Included via ``Kconfig:8`` → ``Kconfig.zephyr:42`` → ``/Kconfig:28`` → ``/interrupt_controller/Kconfig:48`` Menu path: (Top) → Device Drivers → Interrupt Controllers .. code-block:: kconfig config MULTI_LEVEL_INTERRUPTS bool "Multi-level interrupt support" depends on GEN_SW_ISR_TABLE help Multiple levels of interrupts are normally used to increase the number of addressable interrupts in a system. For example, if two levels are used, a second level interrupt aggregator would combine all interrupts routed to it into one IRQ line in the first level interrupt controller. If three levels are used, a third level aggregator combines its input interrupts into one IRQ line at the second level. The number of interrupt levels is usually determined by the hardware. (The term "aggregator" here means "interrupt controller".) *(The 'depends on' condition includes propagated dependencies from ifs and menus.)*