@@ -209,6 +209,14 @@ function(${SYSBUILD_CURRENT_MODULE_NAME}_pre_cmake)
209209 endif ()
210210 endforeach ()
211211
212+ if (SB_CONFIG_BOOT_SIGNATURE_TYPE_PURE)
213+ set_config_bool(mcuboot CONFIG_BOOT_SIGNATURE_TYPE_PURE y)
214+ endif ()
215+
216+ if (SB_CONFIG_BOOT_IMG_HASH_ALG_SHA512 AND NOT (SB_CONFIG_MCUBOOT_SIGNATURE_USING_KMU AND SB_CONFIG_BOOT_SIGNATURE_TYPE_PURE))
217+ set_config_bool(mcuboot CONFIG_BOOT_IMG_HASH_ALG_SHA512 y)
218+ endif ()
219+
212220 # Apply configuration to application
213221 foreach (image ${updateable_images} )
214222 foreach (mode ${application_mcuboot_modes} )
@@ -218,21 +226,38 @@ function(${SYSBUILD_CURRENT_MODULE_NAME}_pre_cmake)
218226 set_config_bool(${image} ${mode} n)
219227 endif ()
220228 endforeach ()
229+
230+ if (SB_CONFIG_BOOT_SIGNATURE_TYPE_ED25519)
231+ set_config_bool(${image} CONFIG_MCUBOOT_BOOTLOADER_SIGNATURE_TYPE_ED25519 y)
232+ endif ()
233+
234+ if (SB_CONFIG_BOOT_SIGNATURE_TYPE_PURE)
235+ set_config_bool(${image} CONFIG_MCUBOOT_BOOTLOADER_SIGNATURE_TYPE_PURE y)
236+ endif ()
237+
238+ if (SB_CONFIG_BOOT_IMG_HASH_ALG_SHA512)
239+ set_config_bool(${image} CONFIG_MCUBOOT_BOOTLOADER_USES_SHA512 y)
240+ endif ()
221241 endforeach ()
222242
243+ if (SB_CONFIG_MCUBOOT_MODE_FIRMWARE_UPDATER AND SB_CONFIG_BOOT_SIGNATURE_TYPE_ED25519)
244+ set_config_bool(${SB_CONFIG_FIRMWARE_LOADER_IMAGE_NAME} CONFIG_MCUBOOT_BOOTLOADER_SIGNATURE_TYPE_ED25519 y)
245+
246+ if (SB_CONFIG_BOOT_SIGNATURE_TYPE_PURE)
247+ set_config_bool(${SB_CONFIG_FIRMWARE_LOADER_IMAGE_NAME} CONFIG_MCUBOOT_BOOTLOADER_SIGNATURE_TYPE_PURE y)
248+ endif ()
249+
250+ if (SB_CONFIG_BOOT_IMG_HASH_ALG_SHA512)
251+ set_config_bool(${SB_CONFIG_FIRMWARE_LOADER_IMAGE_NAME} CONFIG_MCUBOOT_BOOTLOADER_USES_SHA512 y)
252+ endif ()
253+ endif ()
254+
223255 # The NRF54LX goes with PSA crypto by default
224256 if (SB_CONFIG_SOC_SERIES_NRF54LX)
225257 if (SB_CONFIG_BOOT_SIGNATURE_TYPE_NONE)
226258 set_config_bool(mcuboot CONFIG_NRF_SECURITY y)
227259 elseif (SB_CONFIG_BOOT_SIGNATURE_TYPE_ED25519)
228260 set_config_bool(mcuboot CONFIG_NRF_SECURITY y)
229- set_config_bool(${DEFAULT_IMAGE} CONFIG_MCUBOOT_BOOTLOADER_SIGNATURE_TYPE_ED25519 y)
230- set_config_bool(${DEFAULT_IMAGE} CONFIG_MCUBOOT_BOOTLOADER_USES_SHA512 y)
231-
232- if (SB_CONFIG_MCUBOOT_MODE_FIRMWARE_UPDATER)
233- set_config_bool(${SB_CONFIG_FIRMWARE_LOADER_IMAGE_NAME} CONFIG_MCUBOOT_BOOTLOADER_SIGNATURE_TYPE_ED25519 y)
234- set_config_bool(${SB_CONFIG_FIRMWARE_LOADER_IMAGE_NAME} CONFIG_MCUBOOT_BOOTLOADER_USES_SHA512 y)
235- endif ()
236261
237262 # We are sure that ED25519 signature on MCUboot does not need these
238263 set_config_bool(mcuboot CONFIG_PSA_USE_CRACEN_AEAD_DRIVER n)
@@ -245,7 +270,7 @@ function(${SYSBUILD_CURRENT_MODULE_NAME}_pre_cmake)
245270
246271 if (SB_CONFIG_NRF_MCUBOOT_HMAC_SHA512)
247272 set_config_bool(mcuboot CONFIG_BOOT_HMAC_SHA512 y)
248- else ()
273+ else ()
249274 set_config_bool(mcuboot CONFIG_BOOT_HMAC_SHA512 n)
250275 endif ()
251276 else ()
@@ -262,37 +287,11 @@ function(${SYSBUILD_CURRENT_MODULE_NAME}_pre_cmake)
262287 set_config_bool(mcuboot CONFIG_BOOT_SIGNATURE_USING_KMU n)
263288 endif ()
264289
265- if (SB_CONFIG_BOOT_SIGNATURE_TYPE_PURE)
266- set_config_bool(mcuboot CONFIG_BOOT_SIGNATURE_TYPE_PURE y)
267- set_config_bool(${DEFAULT_IMAGE} CONFIG_MCUBOOT_BOOTLOADER_SIGNATURE_TYPE_PURE y)
268-
269- if (SB_CONFIG_MCUBOOT_MODE_FIRMWARE_UPDATER)
270- set_config_bool(${SB_CONFIG_FIRMWARE_LOADER_IMAGE_NAME} CONFIG_MCUBOOT_BOOTLOADER_SIGNATURE_TYPE_PURE y)
271- endif ()
272- else ()
273- set_config_bool(mcuboot CONFIG_BOOT_SIGNATURE_TYPE_PURE n)
274- set_config_bool(${DEFAULT_IMAGE} CONFIG_MCUBOOT_BOOTLOADER_SIGNATURE_TYPE_PURE n)
275-
276- if (SB_CONFIG_MCUBOOT_MODE_FIRMWARE_UPDATER)
277- set_config_bool(${SB_CONFIG_FIRMWARE_LOADER_IMAGE_NAME} CONFIG_MCUBOOT_BOOTLOADER_SIGNATURE_TYPE_PURE n)
278- endif ()
279- endif ()
280-
281290 # MCUboot uses hash function to identify key internally when KMU is disabled.
282291 if (SB_CONFIG_MCUBOOT_SIGNATURE_USING_KMU AND SB_CONFIG_BOOT_SIGNATURE_TYPE_PURE)
283292 set_config_bool(mcuboot CONFIG_PSA_USE_CRACEN_HASH_DRIVER n)
284- set_config_bool(mcuboot CONFIG_BOOT_IMG_HASH_ALG_SHA512 n)
285293 else ()
286294 set_config_bool(mcuboot CONFIG_PSA_USE_CRACEN_HASH_DRIVER y)
287- set_config_bool(mcuboot CONFIG_BOOT_IMG_HASH_ALG_SHA512 y)
288- endif ()
289- else ()
290- set_config_bool(${DEFAULT_IMAGE} CONFIG_MCUBOOT_BOOTLOADER_SIGNATURE_TYPE_ED25519 n)
291- set_config_bool(${DEFAULT_IMAGE} CONFIG_MCUBOOT_BOOTLOADER_USES_SHA512 n)
292-
293- if (SB_CONFIG_MCUBOOT_MODE_FIRMWARE_UPDATER)
294- set_config_bool(${SB_CONFIG_FIRMWARE_LOADER_IMAGE_NAME} CONFIG_MCUBOOT_BOOTLOADER_SIGNATURE_TYPE_ED25519 n)
295- set_config_bool(${SB_CONFIG_FIRMWARE_LOADER_IMAGE_NAME} CONFIG_MCUBOOT_BOOTLOADER_USES_SHA512 n)
296295 endif ()
297296 endif ()
298297 endif ()
0 commit comments