:orphan: .. title:: CONFIG_ARC_NORMAL_FIRMWARE .. kconfig:: CONFIG_ARC_NORMAL_FIRMWARE CONFIG_ARC_NORMAL_FIRMWARE ########################## *Generate Normal Firmware* Type: ``bool`` Help ==== .. code-block:: none This option indicates that we are building a Zephyr image that is intended to execute in normal mode. Execution of this image is triggered by secure firmware that executes in secure mode. The option is only applicable to ARC processors that implement the SecureShield. This option enables Zephyr to include code that executes in normal mode only, as well as to exclude code that is designed to execute only in secure mode. Code executing in normal mode has no access to secure resources of the ARC processors, and, therefore, it shall avoid accessing them. Direct dependencies =================== !\ :kconfig:`ARC_SECURE_FIRMWARE ` && \ :kconfig:`ARC_HAS_SECURE ` && \ :kconfig:`ARC ` *(Includes any dependencies from ifs and menus.)* Default ======= - y if \ :kconfig:`TRUSTED_EXECUTION_NONSECURE ` Kconfig definition ================== At ``/arc/Kconfig:305`` Included via ``Kconfig:8`` → ``Kconfig.zephyr:39`` → ``/Kconfig:12`` Menu path: (Top) → ARC Options → ARC CPU Options .. code-block:: kconfig config ARC_NORMAL_FIRMWARE bool "Generate Normal Firmware" default y if TRUSTED_EXECUTION_NONSECURE depends on !ARC_SECURE_FIRMWARE && ARC_HAS_SECURE && ARC help This option indicates that we are building a Zephyr image that is intended to execute in normal mode. Execution of this image is triggered by secure firmware that executes in secure mode. The option is only applicable to ARC processors that implement the SecureShield. This option enables Zephyr to include code that executes in normal mode only, as well as to exclude code that is designed to execute only in secure mode. Code executing in normal mode has no access to secure resources of the ARC processors, and, therefore, it shall avoid accessing them. *(The 'depends on' condition includes propagated dependencies from ifs and menus.)*