The latest development version of this page may be more current than this released 2.6.1-rc1 version.
CONFIG_BUILD_WITH_TFM

Build with TF-M as the Secure Execution Environment

Build with TF-M as the Secure Execution Environment

Type: bool

Help

When enabled, this option instructs the Zephyr build process to
additionaly generate a TF-M image for the Secure Execution
environment, along with the Zephyr image. The Zephyr image
itself is to be executed in the Non-Secure Processing Environment.
The required dependency on TRUSTED_EXECUTION_NONSECURE
ensures that the Zephyr image is built as a Non-Secure image. Both
TF-M and Zephyr images, as well as the veneer object file that links
them, are generated during the normal Zephyr build process.

Notes:
  Building with the "_nonsecure" BOARD variant (e.g.
  "mps2_an521_nonsecure") ensures that
  CONFIG_TRUSTED_EXECUTION_NONSECURE ie enabled.

  By default we allow Zephyr preemptible threads be preempted
  while performing a secure function call.

Help

When enabled, this option instructs the Zephyr build process to
additionaly generate a TF-M image for the Secure Execution
environment, along with the Zephyr image. The Zephyr image
itself is to be executed in the Non-Secure Processing Environment.
The required dependency on TRUSTED_EXECUTION_NONSECURE
ensures that the Zephyr image is built as a Non-Secure image. Both
TF-M and Zephyr images, as well as the veneer object file that links
them, are generated during the normal Zephyr build process.

Notes:
  Building with the "_nonsecure" BOARD variant (e.g.
  "mps2_an521_nonsecure") ensures that
  CONFIG_TRUSTED_EXECUTION_NONSECURE ie enabled.

  By default we allow Zephyr preemptible threads be preempted
  while performing a secure function call.

Direct dependencies

BOARD_BL5340_DVK_CPUAPP || BOARD_BL5340_DVK_CPUAPPNS || BOARD_MPS2_AN521 || BOARD_NRF5340DK_NRF5340_CPUAPP || BOARD_NRF5340DK_NRF5340_CPUAPPNS || BOARD_NRF9160DK_NRF9160 || BOARD_NRF9160DK_NRF9160NS || (TRUSTED_EXECUTION_NONSECURE && TFM_BOARD != “” && ARM_TRUSTZONE_M) || (TRUSTED_EXECUTION_NONSECURE && TFM_BOARD != “” && ARM_TRUSTZONE_M && 0)

(Includes any dependencies from ifs and menus.)

Defaults

Symbols selected by this symbol

Symbols implied by this symbol

Kconfig definitions

At boards/arm/bl5340_dvk/Kconfig.defconfig:28

Included via Kconfig:8Kconfig.zephyr:18

Menu path: (Top)

config BUILD_WITH_TFM
    bool
    default y if BOARD_BL5340_DVK_CPUAPPNS
    depends on BOARD_BL5340_DVK_CPUAPP || BOARD_BL5340_DVK_CPUAPPNS

At boards/arm/mps2_an521/Kconfig.defconfig:20

Included via Kconfig:8Kconfig.zephyr:18

Menu path: (Top)

config BUILD_WITH_TFM
    bool
    default y if TRUSTED_EXECUTION_NONSECURE
    depends on BOARD_MPS2_AN521

At boards/arm/nrf5340dk_nrf5340/Kconfig.defconfig:14

Included via Kconfig:8Kconfig.zephyr:18

Menu path: (Top)

config BUILD_WITH_TFM
    bool
    default y if BOARD_NRF5340DK_NRF5340_CPUAPPNS
    depends on BOARD_NRF5340DK_NRF5340_CPUAPP || BOARD_NRF5340DK_NRF5340_CPUAPPNS

At boards/arm/nrf9160dk_nrf9160/Kconfig.defconfig:14

Included via Kconfig:8Kconfig.zephyr:18

Menu path: (Top)

config BUILD_WITH_TFM
    bool
    default y if BOARD_NRF9160DK_NRF9160NS
    depends on BOARD_NRF9160DK_NRF9160 || BOARD_NRF9160DK_NRF9160NS

At modules/trusted-firmware-m/Kconfig:25

Included via Kconfig:8Kconfig.zephyr:23modules/Kconfig:6doc/_build/Kconfig/Kconfig.modules:26

Menu path: (Top) → Modules → trusted-firmware-m (/home/nashif/zephyrproject/modules/tee/tfm)

menuconfig BUILD_WITH_TFM
    bool "Build with TF-M as the Secure Execution Environment"
    select BUILD_OUTPUT_HEX
    imply INIT_ARCH_HW_AT_BOOT
    imply ARM_NONSECURE_PREEMPTIBLE_SECURE_CALLS
    depends on TRUSTED_EXECUTION_NONSECURE && TFM_BOARD != "" && ARM_TRUSTZONE_M
    help
      When enabled, this option instructs the Zephyr build process to
      additionaly generate a TF-M image for the Secure Execution
      environment, along with the Zephyr image. The Zephyr image
      itself is to be executed in the Non-Secure Processing Environment.
      The required dependency on TRUSTED_EXECUTION_NONSECURE
      ensures that the Zephyr image is built as a Non-Secure image. Both
      TF-M and Zephyr images, as well as the veneer object file that links
      them, are generated during the normal Zephyr build process.

      Notes:
        Building with the "_nonsecure" BOARD variant (e.g.
        "mps2_an521_nonsecure") ensures that
        CONFIG_TRUSTED_EXECUTION_NONSECURE ie enabled.

        By default we allow Zephyr preemptible threads be preempted
        while performing a secure function call.

At modules/trusted-firmware-m/Kconfig:25

Included via Kconfig:8Kconfig.zephyr:23modules/Kconfig:66

Menu path: (Top) → Modules

menuconfig BUILD_WITH_TFM
    bool "Build with TF-M as the Secure Execution Environment"
    select BUILD_OUTPUT_HEX
    imply INIT_ARCH_HW_AT_BOOT
    imply ARM_NONSECURE_PREEMPTIBLE_SECURE_CALLS
    depends on TRUSTED_EXECUTION_NONSECURE && TFM_BOARD != "" && ARM_TRUSTZONE_M && 0
    help
      When enabled, this option instructs the Zephyr build process to
      additionaly generate a TF-M image for the Secure Execution
      environment, along with the Zephyr image. The Zephyr image
      itself is to be executed in the Non-Secure Processing Environment.
      The required dependency on TRUSTED_EXECUTION_NONSECURE
      ensures that the Zephyr image is built as a Non-Secure image. Both
      TF-M and Zephyr images, as well as the veneer object file that links
      them, are generated during the normal Zephyr build process.

      Notes:
        Building with the "_nonsecure" BOARD variant (e.g.
        "mps2_an521_nonsecure") ensures that
        CONFIG_TRUSTED_EXECUTION_NONSECURE ie enabled.

        By default we allow Zephyr preemptible threads be preempted
        while performing a secure function call.

(The ‘depends on’ condition includes propagated dependencies from ifs and menus.)