Skip to content

Commit ab04b7f

Browse files
committed
trusted-firmware-m: Make hex files variables explicit
Make variables that define output files explicitly include 'HEX' in the name. This refactoring step allows for the introduction of BIN file generation. Signed-off-by: BUDKE Gerson Fernando <[email protected]>
1 parent 376b006 commit ab04b7f

File tree

1 file changed

+34
-31
lines changed

1 file changed

+34
-31
lines changed

modules/trusted-firmware-m/CMakeLists.txt

Lines changed: 34 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -544,84 +544,87 @@ if (CONFIG_BUILD_WITH_TFM)
544544
PARENT_SCOPE)
545545
endfunction()
546546

547-
set(MERGED_FILE ${CMAKE_BINARY_DIR}/zephyr/tfm_merged.hex)
548-
set(S_NS_FILE ${CMAKE_BINARY_DIR}/zephyr/tfm_s_zephyr_ns.hex)
549-
set(S_NS_SIGNED_FILE ${CMAKE_BINARY_DIR}/zephyr/tfm_s_zephyr_ns_signed.hex)
550-
set(NS_SIGNED_FILE ${CMAKE_BINARY_DIR}/zephyr/zephyr_ns_signed.hex)
551-
set(S_SIGNED_FILE ${CMAKE_BINARY_DIR}/zephyr/tfm_s_signed.hex)
547+
set(MERGED_HEX_FILE ${CMAKE_BINARY_DIR}/zephyr/tfm_merged.hex)
548+
set(S_NS_HEX_FILE ${CMAKE_BINARY_DIR}/zephyr/tfm_s_zephyr_ns.hex)
549+
set(S_NS_SIGNED_HEX_FILE ${CMAKE_BINARY_DIR}/zephyr/tfm_s_zephyr_ns_signed.hex)
550+
set(NS_SIGNED_HEX_FILE ${CMAKE_BINARY_DIR}/zephyr/zephyr_ns_signed.hex)
551+
set(S_SIGNED_HEX_FILE ${CMAKE_BINARY_DIR}/zephyr/tfm_s_signed.hex)
552552

553553
if (CONFIG_TFM_USE_NS_APP)
554554
# Use the TF-M NS binary as the Non-Secure application firmware image
555-
set(NS_APP_FILE $<TARGET_PROPERTY:tfm,TFM_NS_HEX_FILE>)
555+
set(NS_HEX_APP_FILE $<TARGET_PROPERTY:tfm,TFM_NS_HEX_FILE>)
556556
else()
557557
# Use the Zephyr binary as the Non-Secure application firmware image
558-
set(NS_APP_FILE ${CMAKE_BINARY_DIR}/zephyr/${KERNEL_HEX_NAME})
558+
set(NS_HEX_APP_FILE ${CMAKE_BINARY_DIR}/zephyr/${KERNEL_HEX_NAME})
559559
endif()
560560

561561
if (NOT CONFIG_TFM_BL2)
562562
# Merge tfm_s and zephyr (NS) image to a single binary.
563563
set_property(GLOBAL APPEND PROPERTY extra_post_build_commands
564564
COMMAND ${PYTHON_EXECUTABLE} ${ZEPHYR_BASE}/scripts/build/mergehex.py
565-
-o ${MERGED_FILE}
565+
-o ${MERGED_HEX_FILE}
566566
$<TARGET_PROPERTY:tfm,TFM_S_HEX_FILE>
567-
${NS_APP_FILE}
567+
${NS_HEX_APP_FILE}
568568
)
569569

570570
set_property(GLOBAL APPEND PROPERTY extra_post_build_byproducts
571-
${MERGED_FILE}
571+
${MERGED_HEX_FILE}
572572
)
573573

574574
elseif(CONFIG_TFM_MCUBOOT_IMAGE_NUMBER STREQUAL "1")
575-
tfm_sign(sign_cmd S_NS TRUE TRUE TRUE ${S_NS_MAX_SECTORS} ${S_NS_FILE} ${S_NS_SIGNED_FILE})
575+
tfm_sign(sign_cmd_s_ns_hex S_NS TRUE TRUE TRUE ${S_NS_MAX_SECTORS} ${S_NS_HEX_FILE}
576+
${S_NS_SIGNED_HEX_FILE})
576577

577578
set_property(GLOBAL APPEND PROPERTY extra_post_build_commands
578579
COMMAND ${PYTHON_EXECUTABLE} ${ZEPHYR_BASE}/scripts/build/mergehex.py
579-
-o ${S_NS_FILE}
580+
-o ${S_NS_HEX_FILE}
580581
$<TARGET_PROPERTY:tfm,TFM_S_HEX_FILE>
581-
${NS_APP_FILE}
582+
${NS_HEX_APP_FILE}
582583

583-
COMMAND ${sign_cmd}
584+
COMMAND ${sign_cmd_s_ns_hex}
584585

585586
COMMAND ${PYTHON_EXECUTABLE} ${ZEPHYR_BASE}/scripts/build/mergehex.py
586-
-o ${MERGED_FILE}
587+
-o ${MERGED_HEX_FILE}
587588
$<$<BOOL:${CONFIG_TFM_BL1}>:$<TARGET_PROPERTY:tfm,BL2_SIGNED_HEX_FILE>>
588589
$<$<NOT:$<BOOL:${CONFIG_TFM_BL1}>>:$<TARGET_PROPERTY:tfm,BL2_HEX_FILE>>
589-
${S_NS_SIGNED_FILE}
590+
${S_NS_SIGNED_HEX_FILE}
590591
)
591592

592593
set_property(GLOBAL APPEND PROPERTY extra_post_build_byproducts
593-
${S_NS_FILE}
594-
${S_NS_SIGNED_FILE}
595-
${MERGED_FILE}
594+
${S_NS_HEX_FILE}
595+
${S_NS_SIGNED_HEX_FILE}
596+
${MERGED_HEX_FILE}
596597
)
597598

598599
else()
599600
if (CONFIG_TFM_USE_NS_APP)
600-
tfm_sign(sign_cmd_ns NS TRUE TRUE TRUE ${S_NS_MAX_SECTORS} ${NS_APP_FILE} ${NS_SIGNED_FILE})
601+
tfm_sign(sign_cmd_ns_hex NS TRUE TRUE TRUE ${S_NS_MAX_SECTORS} ${NS_HEX_APP_FILE}
602+
${NS_SIGNED_HEX_FILE})
601603
else()
602-
tfm_sign(sign_cmd_ns NS FALSE TRUE TRUE ${S_NS_MAX_SECTORS} ${NS_APP_FILE} ${NS_SIGNED_FILE})
604+
tfm_sign(sign_cmd_ns NS FALSE TRUE TRUE ${S_NS_MAX_SECTORS} ${NS_HEX_APP_FILE}
605+
${NS_SIGNED_HEX_FILE})
603606
endif()
604607

605-
tfm_sign(sign_cmd_s S TRUE TRUE TRUE ${S_NS_MAX_SECTORS} $<TARGET_PROPERTY:tfm,TFM_S_HEX_FILE>
606-
${S_SIGNED_FILE})
608+
tfm_sign(sign_cmd_s_hex S TRUE TRUE TRUE ${S_NS_MAX_SECTORS}
609+
$<TARGET_PROPERTY:tfm,TFM_S_HEX_FILE> ${S_SIGNED_HEX_FILE})
607610

608611
#Create and sign for concatenated binary image, should align with the TF-M BL2
609612
set_property(GLOBAL APPEND PROPERTY extra_post_build_commands
610-
COMMAND ${sign_cmd_ns}
611-
COMMAND ${sign_cmd_s}
613+
COMMAND ${sign_cmd_ns_hex}
614+
COMMAND ${sign_cmd_s_hex}
612615

613616
COMMAND ${PYTHON_EXECUTABLE} ${ZEPHYR_BASE}/scripts/build/mergehex.py
614-
-o ${MERGED_FILE}
617+
-o ${MERGED_HEX_FILE}
615618
$<$<BOOL:${CONFIG_TFM_BL1}>:$<TARGET_PROPERTY:tfm,BL2_SIGNED_HEX_FILE>>
616619
$<$<NOT:$<BOOL:${CONFIG_TFM_BL1}>>:$<TARGET_PROPERTY:tfm,BL2_HEX_FILE>>
617-
${S_SIGNED_FILE}
618-
${NS_SIGNED_FILE}
620+
${S_SIGNED_HEX_FILE}
621+
${NS_SIGNED_HEX_FILE}
619622
)
620623

621624
set_property(GLOBAL APPEND PROPERTY extra_post_build_byproducts
622-
${S_SIGNED_FILE}
623-
${NS_SIGNED_FILE}
624-
${MERGED_FILE}
625+
${S_SIGNED_HEX_FILE}
626+
${NS_SIGNED_HEX_FILE}
627+
${MERGED_HEX_FILE}
625628
)
626629
endif()
627630

0 commit comments

Comments
 (0)