:orphan: .. title:: ARC_FIRQ .. option:: CONFIG_ARC_FIRQ *FIRQ enable* Type: ``bool`` Help ==== .. code-block:: none Fast interrupts are supported (FIRQ). If FIRQ enabled, for interrupts with highest priority, status32 and pc will be saved in aux regs, other regs will be saved according to the number of register bank; If FIRQ is disabled, the handle of interrupts with highest priority will be same with other interrupts. Direct dependencies =================== \ :option:`SOC_ARC_HSDK ` || \ :option:`SOC_ARC_IOT ` || (\ :option:`SOC_EMSDP_EM4 ` && \ :option:`SOC_ARC_EMSDP `) || (\ :option:`SOC_EMSDP_EM5D ` && \ :option:`SOC_ARC_EMSDP `) || (\ :option:`SOC_EMSDP_EM6 ` && \ :option:`SOC_ARC_EMSDP `) || (\ :option:`SOC_EMSDP_EM7D ` && \ :option:`SOC_ARC_EMSDP `) || (\ :option:`SOC_EMSDP_EM7D_ESP ` && \ :option:`SOC_ARC_EMSDP `) || (\ :option:`SOC_EMSDP_EM9D ` && \ :option:`SOC_ARC_EMSDP `) || (\ :option:`SOC_EMSDP_EM11D ` && \ :option:`SOC_ARC_EMSDP `) || (\ :option:`SOC_EMSK_EM7D ` && \ :option:`SOC_EMSK `) || (\ :option:`SOC_NSIM_EM ` && \ :option:`SOC_NSIM `) || (\ :option:`SOC_NSIM_EM7D_V22 ` && \ :option:`SOC_NSIM `) || (\ :option:`SOC_NSIM_SEM ` && \ :option:`SOC_NSIM `) || (\ :option:`SOC_NSIM_HS ` && \ :option:`SOC_NSIM `) || (\ :option:`SOC_NSIM_HS_SMP ` && \ :option:`SOC_NSIM `) || \ :option:`SOC_QEMU_ARC ` || (\ :option:`ISA_ARCV2 ` && \ :option:`ARC `) *(Includes any dependencies from ifs and menus.)* Defaults ======== - y - y - y - y - y - y - n - y - y - n if \ :option:`BOARD_EM_STARTERKIT_R23 ` - y if \ :option:`BOARD_EM_STARTERKIT_R22 ` - y - y - n - y - y - n - y Kconfig definitions =================== At ``/arc/snps_arc_hsdk/Kconfig.defconfig:27`` Included via ``Kconfig:8`` → ``Kconfig.zephyr:19`` → ``/kconfig/Kconfig.soc.defconfig:1`` Menu path: (Top) .. code-block:: kconfig config ARC_FIRQ bool default y depends on SOC_ARC_HSDK ---- At ``/arc/snps_arc_iot/Kconfig.defconfig:34`` Included via ``Kconfig:8`` → ``Kconfig.zephyr:19`` → ``/kconfig/Kconfig.soc.defconfig:1`` Menu path: (Top) .. code-block:: kconfig config ARC_FIRQ bool default y depends on SOC_ARC_IOT ---- At ``/arc/snps_emsdp/Kconfig.defconfig.em4:21`` Included via ``Kconfig:8`` → ``Kconfig.zephyr:19`` → ``/kconfig/Kconfig.soc.defconfig:1`` → ``/arc/snps_emsdp/Kconfig.defconfig:14`` Menu path: (Top) .. code-block:: kconfig config ARC_FIRQ bool default y depends on SOC_EMSDP_EM4 && SOC_ARC_EMSDP ---- At ``/arc/snps_emsdp/Kconfig.defconfig.em5d:21`` Included via ``Kconfig:8`` → ``Kconfig.zephyr:19`` → ``/kconfig/Kconfig.soc.defconfig:1`` → ``/arc/snps_emsdp/Kconfig.defconfig:15`` Menu path: (Top) .. code-block:: kconfig config ARC_FIRQ bool default y depends on SOC_EMSDP_EM5D && SOC_ARC_EMSDP ---- At ``/arc/snps_emsdp/Kconfig.defconfig.em6:21`` Included via ``Kconfig:8`` → ``Kconfig.zephyr:19`` → ``/kconfig/Kconfig.soc.defconfig:1`` → ``/arc/snps_emsdp/Kconfig.defconfig:16`` Menu path: (Top) .. code-block:: kconfig config ARC_FIRQ bool default y depends on SOC_EMSDP_EM6 && SOC_ARC_EMSDP ---- At ``/arc/snps_emsdp/Kconfig.defconfig.em7d:21`` Included via ``Kconfig:8`` → ``Kconfig.zephyr:19`` → ``/kconfig/Kconfig.soc.defconfig:1`` → ``/arc/snps_emsdp/Kconfig.defconfig:17`` Menu path: (Top) .. code-block:: kconfig config ARC_FIRQ bool default y depends on SOC_EMSDP_EM7D && SOC_ARC_EMSDP ---- At ``/arc/snps_emsdp/Kconfig.defconfig.em7d_esp:21`` Included via ``Kconfig:8`` → ``Kconfig.zephyr:19`` → ``/kconfig/Kconfig.soc.defconfig:1`` → ``/arc/snps_emsdp/Kconfig.defconfig:18`` Menu path: (Top) .. code-block:: kconfig config ARC_FIRQ bool default n depends on SOC_EMSDP_EM7D_ESP && SOC_ARC_EMSDP ---- At ``/arc/snps_emsdp/Kconfig.defconfig.em9d:21`` Included via ``Kconfig:8`` → ``Kconfig.zephyr:19`` → ``/kconfig/Kconfig.soc.defconfig:1`` → ``/arc/snps_emsdp/Kconfig.defconfig:19`` Menu path: (Top) .. code-block:: kconfig config ARC_FIRQ bool default y depends on SOC_EMSDP_EM9D && SOC_ARC_EMSDP ---- At ``/arc/snps_emsdp/Kconfig.defconfig.em11d:21`` Included via ``Kconfig:8`` → ``Kconfig.zephyr:19`` → ``/kconfig/Kconfig.soc.defconfig:1`` → ``/arc/snps_emsdp/Kconfig.defconfig:20`` Menu path: (Top) .. code-block:: kconfig config ARC_FIRQ bool default y depends on SOC_EMSDP_EM11D && SOC_ARC_EMSDP ---- At ``/arc/snps_emsk/Kconfig.defconfig.em7d:34`` Included via ``Kconfig:8`` → ``Kconfig.zephyr:19`` → ``/kconfig/Kconfig.soc.defconfig:1`` → ``/arc/snps_emsk/Kconfig.defconfig:10`` Menu path: (Top) .. code-block:: kconfig config ARC_FIRQ bool default n if BOARD_EM_STARTERKIT_R23 default y if BOARD_EM_STARTERKIT_R22 depends on SOC_EMSK_EM7D && SOC_EMSK ---- At ``/arc/snps_nsim/Kconfig.defconfig.em:30`` Included via ``Kconfig:8`` → ``Kconfig.zephyr:19`` → ``/kconfig/Kconfig.soc.defconfig:1`` → ``/arc/snps_nsim/Kconfig.defconfig:15`` Menu path: (Top) .. code-block:: kconfig config ARC_FIRQ bool default y depends on SOC_NSIM_EM && SOC_NSIM ---- At ``/arc/snps_nsim/Kconfig.defconfig.em7d_v22:30`` Included via ``Kconfig:8`` → ``Kconfig.zephyr:19`` → ``/kconfig/Kconfig.soc.defconfig:1`` → ``/arc/snps_nsim/Kconfig.defconfig:16`` Menu path: (Top) .. code-block:: kconfig config ARC_FIRQ bool default y depends on SOC_NSIM_EM7D_V22 && SOC_NSIM ---- At ``/arc/snps_nsim/Kconfig.defconfig.sem:30`` Included via ``Kconfig:8`` → ``Kconfig.zephyr:19`` → ``/kconfig/Kconfig.soc.defconfig:1`` → ``/arc/snps_nsim/Kconfig.defconfig:17`` Menu path: (Top) .. code-block:: kconfig config ARC_FIRQ bool default n depends on SOC_NSIM_SEM && SOC_NSIM ---- At ``/arc/snps_nsim/Kconfig.defconfig.hs:27`` Included via ``Kconfig:8`` → ``Kconfig.zephyr:19`` → ``/kconfig/Kconfig.soc.defconfig:1`` → ``/arc/snps_nsim/Kconfig.defconfig:18`` Menu path: (Top) .. code-block:: kconfig config ARC_FIRQ bool default y depends on SOC_NSIM_HS && SOC_NSIM ---- At ``/arc/snps_nsim/Kconfig.defconfig.hs_smp:28`` Included via ``Kconfig:8`` → ``Kconfig.zephyr:19`` → ``/kconfig/Kconfig.soc.defconfig:1`` → ``/arc/snps_nsim/Kconfig.defconfig:19`` Menu path: (Top) .. code-block:: kconfig config ARC_FIRQ bool default y depends on SOC_NSIM_HS_SMP && SOC_NSIM ---- At ``/arc/snps_qemu/Kconfig.defconfig:21`` Included via ``Kconfig:8`` → ``Kconfig.zephyr:19`` → ``/kconfig/Kconfig.soc.defconfig:1`` Menu path: (Top) .. code-block:: kconfig config ARC_FIRQ bool default n depends on SOC_QEMU_ARC ---- At ``/arc/Kconfig:149`` Included via ``Kconfig:8`` → ``Kconfig.zephyr:29`` → ``/Kconfig:12`` Menu path: (Top) → ARC Options → ARC CPU Options .. code-block:: kconfig config ARC_FIRQ bool "FIRQ enable" default y depends on ISA_ARCV2 && ARC help Fast interrupts are supported (FIRQ). If FIRQ enabled, for interrupts with highest priority, status32 and pc will be saved in aux regs, other regs will be saved according to the number of register bank; If FIRQ is disabled, the handle of interrupts with highest priority will be same with other interrupts. *(The 'depends on' condition includes propagated dependencies from ifs and menus.)*