modules: tf-m: nordic: Add support for nRF7120 TF-M

This commit adds initial support for non secure nRF7120 targets in
zephyr.

There are important limitations, such as:
- The hardware Crypto accelerator is not supported and thus the non
  secure target is NOT secure for production applications in upstream
  Zephyr.
- The BL2 is not supported, so no DFU is supported with this support

Signed-off-by: Robert Robinson <robert.robinson@nordicsemi.no>
This commit is contained in:
Robert Robinson
2025-12-19 13:00:25 +00:00
committed by Maureen Helm
parent 5445a6ac0f
commit cf6e4178e9
7 changed files with 54 additions and 0 deletions

View File

@@ -7,6 +7,7 @@
config SOC_FLASH_NRF_MRAMC
bool "Nordic Semiconductor flash driver for MRAM using MRAM Controller"
default y
depends on !BUILD_WITH_TFM
depends on DT_HAS_NORDIC_NRF_MRAMC_ENABLED
select NRFX_MRAMC
select FLASH_HAS_DRIVER_ENABLED

View File

@@ -35,6 +35,7 @@ config TFM_BOARD
default "$(ZEPHYR_BASE)/modules/trusted-firmware-m/nordic/nrf54l15_cpuapp" if SOC_NRF54L15_CPUAPP
default "$(ZEPHYR_BASE)/modules/trusted-firmware-m/nordic/nrf54l10_cpuapp" if SOC_NRF54L10_CPUAPP
default "$(ZEPHYR_BASE)/modules/trusted-firmware-m/nordic/nrf54lm20a_cpuapp" if SOC_NRF54LM20A_ENGA_CPUAPP
default "$(ZEPHYR_BASE)/modules/trusted-firmware-m/nordic/nrf7120_cpuapp" if SOC_NRF7120_ENGA_CPUAPP
help
The board name used for building TFM. Building with TFM requires that
TFM has been ported to the given board/SoC.

View File

@@ -37,6 +37,8 @@ extern "C" {
#include <tfm_peripherals_config_nrf5340_application.h>
#elif defined(NRF54L_SERIES)
#include <tfm_peripherals_config_nrf54l.h>
#elif defined(NRF71_SERIES)
#include <tfm_peripherals_config_nrf71.h>
#else
#error "Unknown device."
#endif

View File

@@ -0,0 +1,22 @@
#
# Copyright (c) 2025, Nordic Semiconductor ASA.
#
# SPDX-License-Identifier: Apache-2.0
#
set(NRF_BOARD_SELECTED True)
add_subdirectory(${Trusted\ Firmware\ M_SOURCE_DIR}/platform/ext/target/nordic_nrf/common/nrf7120 nrf7120)
add_subdirectory(.. common)
install(FILES ${CMAKE_CURRENT_LIST_DIR}/ns/cpuarch_ns.cmake
DESTINATION ${INSTALL_PLATFORM_NS_DIR}
RENAME cpuarch.cmake)
install(FILES config.cmake
DESTINATION ${INSTALL_PLATFORM_NS_DIR})
install(DIRECTORY ${Trusted\ Firmware\ M_SOURCE_DIR}/platform/ext/target/nordic_nrf/nrf7120dk_nrf7120_cpuapp/tests
DESTINATION ${INSTALL_PLATFORM_NS_DIR}
)

View File

@@ -0,0 +1,9 @@
#
# Copyright (c) 2025, Nordic Semiconductor ASA.
#
# SPDX-License-Identifier: Apache-2.0
#
set(NRF_SOC_VARIANT nrf7120 CACHE STRING "nRF SoC Variant")
include(${PLATFORM_PATH}/common/nrf7120/config.cmake)

View File

@@ -0,0 +1,9 @@
#
# Copyright (c) 2025, Nordic Semiconductor ASA.
#
# SPDX-License-Identifier: Apache-2.0
#
set(PLATFORM_PATH platform/ext/target/nordic_nrf)
include(${PLATFORM_PATH}/common/nrf7120/cpuarch.cmake)

View File

@@ -0,0 +1,10 @@
#
# Copyright (c) 2025, Nordic Semiconductor ASA.
#
# SPDX-License-Identifier: Apache-2.0
#
set(PLATFORM_DIR ${CMAKE_CURRENT_LIST_DIR})
set(PLATFORM_PATH ${CMAKE_CURRENT_LIST_DIR})
include(${CMAKE_CURRENT_LIST_DIR}/common/nrf7120/cpuarch.cmake)