CONFIG_ARM_NONSECURE_FIRMWARE
(No prompt – not directly user assignable.)
Type: bool
Help
This option indicates that we are building a Zephyr image that
is intended to execute in Non-Secure state. Execution of this
image is triggered by Secure firmware that executes in Secure
state. The option is only applicable to ARMv8-M MCUs that
implement the Security Extension.
This option enables Zephyr to include code that executes in
Non-Secure state only, as well as to exclude code that is
designed to execute only in Secure state.
Code executing in Non-Secure state has no access to Secure
resources of the Cortex-M MCU, and, therefore, it shall avoid
accessing them.
Direct dependencies
!ARM_SECURE_FIRMWARE
&& ARMV8_M_SE
&& ARM
(Includes any dependencies from ifs and menus.)
Default
Kconfig definition
At <Zephyr>/arch/arm/core/aarch32/Kconfig:212
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:39
→ <Zephyr>/arch/Kconfig:12
→ <Zephyr>/arch/arm/Kconfig:65
Menu path: (Top) → ARM Options
config ARM_NONSECURE_FIRMWARE
bool
default y if TRUSTED_EXECUTION_NONSECURE
depends on !ARM_SECURE_FIRMWARE && ARMV8_M_SE && ARM
help
This option indicates that we are building a Zephyr image that
is intended to execute in Non-Secure state. Execution of this
image is triggered by Secure firmware that executes in Secure
state. The option is only applicable to ARMv8-M MCUs that
implement the Security Extension.
This option enables Zephyr to include code that executes in
Non-Secure state only, as well as to exclude code that is
designed to execute only in Secure state.
Code executing in Non-Secure state has no access to Secure
resources of the Cortex-M MCU, and, therefore, it shall avoid
accessing them.
(The ‘depends on’ condition includes propagated dependencies from ifs and menus.)