Skip to content

Commit d11a69c

Browse files
nordicjmeivindj-nordic
authored andcommitted
sysbuild: Add support for ed25519 MCUboot images and make default
Makes ed25519 the default signature type for nrf54l* and sets up the MCUboot configuration for it Signed-off-by: Jamie McCrae <[email protected]>
1 parent 6ee9905 commit d11a69c

File tree

3 files changed

+26
-0
lines changed

3 files changed

+26
-0
lines changed

sysbuild/CMakeLists.txt

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,29 @@ function(bm_install_setup)
2323

2424
add_overlay_dts(${SB_CONFIG_BM_FIRMWARE_LOADER_IMAGE_NAME} ${CMAKE_CURRENT_SOURCE_DIR}/image_configurations/FIRMWARE_LOADER_image_default.overlay)
2525

26+
# Enable LTO on MCUboot image
27+
add_overlay_config(mcuboot ${CMAKE_CURRENT_SOURCE_DIR}/image_configurations/lto.conf)
28+
29+
if(SB_CONFIG_SOC_SERIES_NRF54LX)
30+
if(SB_CONFIG_BM_BOOTLOADER_MCUBOOT_SIGNATURE_TYPE_NONE)
31+
set_config_bool(mcuboot CONFIG_NRF_SECURITY y)
32+
elseif(SB_CONFIG_BM_BOOTLOADER_MCUBOOT_SIGNATURE_TYPE_ED25519)
33+
set_config_bool(mcuboot CONFIG_NRF_SECURITY y)
34+
35+
# We are sure that ED25519 signature on MCUboot does not need these
36+
set_config_bool(mcuboot CONFIG_PSA_USE_CRACEN_AEAD_DRIVER n)
37+
set_config_bool(mcuboot CONFIG_PSA_USE_CRACEN_PAKE_DRIVER n)
38+
set_config_bool(mcuboot CONFIG_PSA_USE_CRACEN_CIPHER_DRIVER n)
39+
set_config_bool(mcuboot CONFIG_PSA_USE_CRACEN_MAC_DRIVER n)
40+
set_config_bool(mcuboot CONFIG_PSA_USE_CRACEN_KEY_AGREEMENT_DRIVER n)
41+
set_config_bool(mcuboot CONFIG_PSA_USE_CRACEN_KEY_DERIVATION_DRIVER n)
42+
set_config_bool(mcuboot CONFIG_BOOT_HMAC_SHA512 n)
43+
set_config_bool(mcuboot CONFIG_BOOT_SIGNATURE_USING_KMU n)
44+
set_config_bool(mcuboot CONFIG_BOOT_KEY_IMPORT_BYPASS_ASN y)
45+
set_config_bool(mcuboot CONFIG_PSA_USE_CRACEN_HASH_DRIVER y)
46+
endif()
47+
endif()
48+
2649
ExternalZephyrProject_Add(
2750
APPLICATION installer
2851
SOURCE_DIR ${ZEPHYR_NRF_BM_MODULE_DIR}/applications/installer

sysbuild/Kconfig.bm

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ menu "MCUboot configuration"
2525

2626
choice BM_BOOTLOADER_MCUBOOT_SIGNATURE_TYPE
2727
prompt "Signature type"
28+
default BM_BOOTLOADER_MCUBOOT_SIGNATURE_TYPE_ED25519 if SOC_SERIES_NRF54LX
2829
default BM_BOOTLOADER_MCUBOOT_SIGNATURE_TYPE_RSA
2930

3031
config BM_BOOTLOADER_MCUBOOT_SIGNATURE_TYPE_NONE
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
CONFIG_LTO=y
2+
CONFIG_ISR_TABLES_LOCAL_DECLARATION=y

0 commit comments

Comments
 (0)