CONFIG_ARM_SECURE_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 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
Secure state, as well as to exclude code that is designed to
execute only in Non-secure state.
Code executing in Secure state has access to both the Secure
and Non-Secure resources of the Cortex-M MCU.
Code executing in Non-Secure state may trigger Secure Faults,
if Secure MCU resources are accessed from the Non-Secure state.
Secure Faults may only be handled by code executing in Secure
state.
Direct dependencies
ARMV8_M_SE
&& ARM
(Includes any dependencies from ifs and menus.)
Default
Kconfig definition
At <Zephyr>/arch/arm/core/aarch32/Kconfig:191
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_SECURE_FIRMWARE
bool
default y if TRUSTED_EXECUTION_SECURE
depends on ARMV8_M_SE && ARM
help
This option indicates that we are building a Zephyr image that
is intended to execute 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
Secure state, as well as to exclude code that is designed to
execute only in Non-secure state.
Code executing in Secure state has access to both the Secure
and Non-Secure resources of the Cortex-M MCU.
Code executing in Non-Secure state may trigger Secure Faults,
if Secure MCU resources are accessed from the Non-Secure state.
Secure Faults may only be handled by code executing in Secure
state.
(The ‘depends on’ condition includes propagated dependencies from ifs and menus.)