CONFIG_ARC_FIRQ
FIRQ enable
Type: bool
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.
NOTE: we don't allow the configuration with FIRQ enabled and only one
interrupt priority level (so all interrupts are FIRQ). Such
configuration isn't supported in software and it is not beneficial
from the performance point of view.
Direct dependencies
SOC_ARC_HSDK
|| SOC_ARC_IOT
|| (SOC_EMSDP_EM4
&& SOC_ARC_EMSDP
) || (SOC_EMSDP_EM5D
&& SOC_ARC_EMSDP
) || (SOC_EMSDP_EM6
&& SOC_ARC_EMSDP
) || (SOC_EMSDP_EM7D
&& SOC_ARC_EMSDP
) || (SOC_EMSDP_EM7D_ESP
&& SOC_ARC_EMSDP
) || (SOC_EMSDP_EM9D
&& SOC_ARC_EMSDP
) || (SOC_EMSDP_EM11D
&& SOC_ARC_EMSDP
) || (SOC_EMSK_EM7D
&& SOC_EMSK
) || (SOC_NSIM_EM
&& SOC_NSIM
) || (SOC_NSIM_EM7D_V22
&& SOC_NSIM
) || (SOC_NSIM_SEM
&& SOC_NSIM
) || (SOC_NSIM_HS
&& SOC_NSIM
) || (SOC_NSIM_HS_SMP
&& SOC_NSIM
) || (SOC_NSIM_HS_MPUV6
&& SOC_NSIM
) || SOC_QEMU_ARC
|| SOC_ARC_HSDK
|| SOC_ARC_IOT
|| (SOC_EMSDP_EM4
&& SOC_ARC_EMSDP
) || (SOC_EMSDP_EM5D
&& SOC_ARC_EMSDP
) || (SOC_EMSDP_EM6
&& SOC_ARC_EMSDP
) || (SOC_EMSDP_EM7D
&& SOC_ARC_EMSDP
) || (SOC_EMSDP_EM7D_ESP
&& SOC_ARC_EMSDP
) || (SOC_EMSDP_EM9D
&& SOC_ARC_EMSDP
) || (SOC_EMSDP_EM11D
&& SOC_ARC_EMSDP
) || (SOC_EMSK_EM7D
&& SOC_EMSK
) || (SOC_NSIM_EM
&& SOC_NSIM
) || (SOC_NSIM_EM7D_V22
&& SOC_NSIM
) || (SOC_NSIM_SEM
&& SOC_NSIM
) || (SOC_NSIM_HS
&& SOC_NSIM
) || (SOC_NSIM_HS_SMP
&& SOC_NSIM
) || (SOC_NSIM_HS_MPUV6
&& SOC_NSIM
) || SOC_QEMU_ARC
|| (ISA_ARCV2
&& NUM_IRQ_PRIO_LEVELS
> 1 && ARC
)
(Includes any dependencies from ifs and menus.)
Defaults
y
y
y
y
y
y
n
y
y
y
y
n
y
y
y
n
y
y
y
y
y
y
n
y
y
y
y
n
y
y
y
n
y
Kconfig definitions
At <Zephyr>/soc/arc/snps_arc_hsdk/Kconfig.defconfig:27
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:25
→ <nRF>/doc/_build/kconfig/Kconfig.soc.defconfig:1
Menu path: (Top)
config ARC_FIRQ
bool
default y
depends on SOC_ARC_HSDK
At <Zephyr>/soc/arc/snps_arc_iot/Kconfig.defconfig:34
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:25
→ <nRF>/doc/_build/kconfig/Kconfig.soc.defconfig:1
Menu path: (Top)
config ARC_FIRQ
bool
default y
depends on SOC_ARC_IOT
At <Zephyr>/soc/arc/snps_emsdp/Kconfig.defconfig.em4:21
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:25
→ <nRF>/doc/_build/kconfig/Kconfig.soc.defconfig:1
→ <Zephyr>/soc/arc/snps_emsdp/Kconfig.defconfig:14
Menu path: (Top)
config ARC_FIRQ
bool
default y
depends on SOC_EMSDP_EM4 && SOC_ARC_EMSDP
At <Zephyr>/soc/arc/snps_emsdp/Kconfig.defconfig.em5d:21
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:25
→ <nRF>/doc/_build/kconfig/Kconfig.soc.defconfig:1
→ <Zephyr>/soc/arc/snps_emsdp/Kconfig.defconfig:15
Menu path: (Top)
config ARC_FIRQ
bool
default y
depends on SOC_EMSDP_EM5D && SOC_ARC_EMSDP
At <Zephyr>/soc/arc/snps_emsdp/Kconfig.defconfig.em6:21
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:25
→ <nRF>/doc/_build/kconfig/Kconfig.soc.defconfig:1
→ <Zephyr>/soc/arc/snps_emsdp/Kconfig.defconfig:16
Menu path: (Top)
config ARC_FIRQ
bool
default y
depends on SOC_EMSDP_EM6 && SOC_ARC_EMSDP
At <Zephyr>/soc/arc/snps_emsdp/Kconfig.defconfig.em7d:21
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:25
→ <nRF>/doc/_build/kconfig/Kconfig.soc.defconfig:1
→ <Zephyr>/soc/arc/snps_emsdp/Kconfig.defconfig:17
Menu path: (Top)
config ARC_FIRQ
bool
default y
depends on SOC_EMSDP_EM7D && SOC_ARC_EMSDP
At <Zephyr>/soc/arc/snps_emsdp/Kconfig.defconfig.em7d_esp:21
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:25
→ <nRF>/doc/_build/kconfig/Kconfig.soc.defconfig:1
→ <Zephyr>/soc/arc/snps_emsdp/Kconfig.defconfig:18
Menu path: (Top)
config ARC_FIRQ
bool
default n
depends on SOC_EMSDP_EM7D_ESP && SOC_ARC_EMSDP
At <Zephyr>/soc/arc/snps_emsdp/Kconfig.defconfig.em9d:21
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:25
→ <nRF>/doc/_build/kconfig/Kconfig.soc.defconfig:1
→ <Zephyr>/soc/arc/snps_emsdp/Kconfig.defconfig:19
Menu path: (Top)
config ARC_FIRQ
bool
default y
depends on SOC_EMSDP_EM9D && SOC_ARC_EMSDP
At <Zephyr>/soc/arc/snps_emsdp/Kconfig.defconfig.em11d:21
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:25
→ <nRF>/doc/_build/kconfig/Kconfig.soc.defconfig:1
→ <Zephyr>/soc/arc/snps_emsdp/Kconfig.defconfig:20
Menu path: (Top)
config ARC_FIRQ
bool
default y
depends on SOC_EMSDP_EM11D && SOC_ARC_EMSDP
At <Zephyr>/soc/arc/snps_emsk/Kconfig.defconfig.em7d:34
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:25
→ <nRF>/doc/_build/kconfig/Kconfig.soc.defconfig:1
→ <Zephyr>/soc/arc/snps_emsk/Kconfig.defconfig:10
Menu path: (Top)
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 <Zephyr>/soc/arc/snps_nsim/Kconfig.defconfig.em:30
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:25
→ <nRF>/doc/_build/kconfig/Kconfig.soc.defconfig:1
→ <Zephyr>/soc/arc/snps_nsim/Kconfig.defconfig:12
Menu path: (Top)
config ARC_FIRQ
bool
default y
depends on SOC_NSIM_EM && SOC_NSIM
At <Zephyr>/soc/arc/snps_nsim/Kconfig.defconfig.em7d_v22:30
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:25
→ <nRF>/doc/_build/kconfig/Kconfig.soc.defconfig:1
→ <Zephyr>/soc/arc/snps_nsim/Kconfig.defconfig:13
Menu path: (Top)
config ARC_FIRQ
bool
default y
depends on SOC_NSIM_EM7D_V22 && SOC_NSIM
At <Zephyr>/soc/arc/snps_nsim/Kconfig.defconfig.sem:30
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:25
→ <nRF>/doc/_build/kconfig/Kconfig.soc.defconfig:1
→ <Zephyr>/soc/arc/snps_nsim/Kconfig.defconfig:14
Menu path: (Top)
config ARC_FIRQ
bool
default n
depends on SOC_NSIM_SEM && SOC_NSIM
At <Zephyr>/soc/arc/snps_nsim/Kconfig.defconfig.hs:27
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:25
→ <nRF>/doc/_build/kconfig/Kconfig.soc.defconfig:1
→ <Zephyr>/soc/arc/snps_nsim/Kconfig.defconfig:15
Menu path: (Top)
config ARC_FIRQ
bool
default y
depends on SOC_NSIM_HS && SOC_NSIM
At <Zephyr>/soc/arc/snps_nsim/Kconfig.defconfig.hs_smp:28
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:25
→ <nRF>/doc/_build/kconfig/Kconfig.soc.defconfig:1
→ <Zephyr>/soc/arc/snps_nsim/Kconfig.defconfig:16
Menu path: (Top)
config ARC_FIRQ
bool
default y
depends on SOC_NSIM_HS_SMP && SOC_NSIM
At <Zephyr>/soc/arc/snps_nsim/Kconfig.defconfig.hs_mpuv6:33
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:25
→ <nRF>/doc/_build/kconfig/Kconfig.soc.defconfig:1
→ <Zephyr>/soc/arc/snps_nsim/Kconfig.defconfig:19
Menu path: (Top)
config ARC_FIRQ
bool
default y
depends on SOC_NSIM_HS_MPUV6 && SOC_NSIM
At <Zephyr>/soc/arc/snps_qemu/Kconfig.defconfig:17
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:25
→ <nRF>/doc/_build/kconfig/Kconfig.soc.defconfig:1
Menu path: (Top)
config ARC_FIRQ
bool
default n
depends on SOC_QEMU_ARC
At <Zephyr>/soc/arc/snps_arc_hsdk/Kconfig.defconfig:27
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:27
Menu path: (Top)
config ARC_FIRQ
bool
default y
depends on SOC_ARC_HSDK
At <Zephyr>/soc/arc/snps_arc_iot/Kconfig.defconfig:34
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:27
Menu path: (Top)
config ARC_FIRQ
bool
default y
depends on SOC_ARC_IOT
At <Zephyr>/soc/arc/snps_emsdp/Kconfig.defconfig.em4:21
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:27
→ <Zephyr>/soc/arc/snps_emsdp/Kconfig.defconfig:14
Menu path: (Top)
config ARC_FIRQ
bool
default y
depends on SOC_EMSDP_EM4 && SOC_ARC_EMSDP
At <Zephyr>/soc/arc/snps_emsdp/Kconfig.defconfig.em5d:21
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:27
→ <Zephyr>/soc/arc/snps_emsdp/Kconfig.defconfig:15
Menu path: (Top)
config ARC_FIRQ
bool
default y
depends on SOC_EMSDP_EM5D && SOC_ARC_EMSDP
At <Zephyr>/soc/arc/snps_emsdp/Kconfig.defconfig.em6:21
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:27
→ <Zephyr>/soc/arc/snps_emsdp/Kconfig.defconfig:16
Menu path: (Top)
config ARC_FIRQ
bool
default y
depends on SOC_EMSDP_EM6 && SOC_ARC_EMSDP
At <Zephyr>/soc/arc/snps_emsdp/Kconfig.defconfig.em7d:21
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:27
→ <Zephyr>/soc/arc/snps_emsdp/Kconfig.defconfig:17
Menu path: (Top)
config ARC_FIRQ
bool
default y
depends on SOC_EMSDP_EM7D && SOC_ARC_EMSDP
At <Zephyr>/soc/arc/snps_emsdp/Kconfig.defconfig.em7d_esp:21
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:27
→ <Zephyr>/soc/arc/snps_emsdp/Kconfig.defconfig:18
Menu path: (Top)
config ARC_FIRQ
bool
default n
depends on SOC_EMSDP_EM7D_ESP && SOC_ARC_EMSDP
At <Zephyr>/soc/arc/snps_emsdp/Kconfig.defconfig.em9d:21
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:27
→ <Zephyr>/soc/arc/snps_emsdp/Kconfig.defconfig:19
Menu path: (Top)
config ARC_FIRQ
bool
default y
depends on SOC_EMSDP_EM9D && SOC_ARC_EMSDP
At <Zephyr>/soc/arc/snps_emsdp/Kconfig.defconfig.em11d:21
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:27
→ <Zephyr>/soc/arc/snps_emsdp/Kconfig.defconfig:20
Menu path: (Top)
config ARC_FIRQ
bool
default y
depends on SOC_EMSDP_EM11D && SOC_ARC_EMSDP
At <Zephyr>/soc/arc/snps_emsk/Kconfig.defconfig.em7d:34
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:27
→ <Zephyr>/soc/arc/snps_emsk/Kconfig.defconfig:10
Menu path: (Top)
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 <Zephyr>/soc/arc/snps_nsim/Kconfig.defconfig.em:30
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:27
→ <Zephyr>/soc/arc/snps_nsim/Kconfig.defconfig:12
Menu path: (Top)
config ARC_FIRQ
bool
default y
depends on SOC_NSIM_EM && SOC_NSIM
At <Zephyr>/soc/arc/snps_nsim/Kconfig.defconfig.em7d_v22:30
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:27
→ <Zephyr>/soc/arc/snps_nsim/Kconfig.defconfig:13
Menu path: (Top)
config ARC_FIRQ
bool
default y
depends on SOC_NSIM_EM7D_V22 && SOC_NSIM
At <Zephyr>/soc/arc/snps_nsim/Kconfig.defconfig.sem:30
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:27
→ <Zephyr>/soc/arc/snps_nsim/Kconfig.defconfig:14
Menu path: (Top)
config ARC_FIRQ
bool
default n
depends on SOC_NSIM_SEM && SOC_NSIM
At <Zephyr>/soc/arc/snps_nsim/Kconfig.defconfig.hs:27
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:27
→ <Zephyr>/soc/arc/snps_nsim/Kconfig.defconfig:15
Menu path: (Top)
config ARC_FIRQ
bool
default y
depends on SOC_NSIM_HS && SOC_NSIM
At <Zephyr>/soc/arc/snps_nsim/Kconfig.defconfig.hs_smp:28
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:27
→ <Zephyr>/soc/arc/snps_nsim/Kconfig.defconfig:16
Menu path: (Top)
config ARC_FIRQ
bool
default y
depends on SOC_NSIM_HS_SMP && SOC_NSIM
At <Zephyr>/soc/arc/snps_nsim/Kconfig.defconfig.hs_mpuv6:33
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:27
→ <Zephyr>/soc/arc/snps_nsim/Kconfig.defconfig:19
Menu path: (Top)
config ARC_FIRQ
bool
default y
depends on SOC_NSIM_HS_MPUV6 && SOC_NSIM
At <Zephyr>/soc/arc/snps_qemu/Kconfig.defconfig:17
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:27
Menu path: (Top)
config ARC_FIRQ
bool
default n
depends on SOC_QEMU_ARC
At <Zephyr>/arch/arc/Kconfig:154
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:39
→ <Zephyr>/arch/Kconfig:12
Menu path: (Top) → ARC Options → ARC CPU Options
config ARC_FIRQ
bool "FIRQ enable"
default y
depends on ISA_ARCV2 && NUM_IRQ_PRIO_LEVELS > 1 && 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.
NOTE: we don't allow the configuration with FIRQ enabled and only one
interrupt priority level (so all interrupts are FIRQ). Such
configuration isn't supported in software and it is not beneficial
from the performance point of view.
(The ‘depends on’ condition includes propagated dependencies from ifs and menus.)