Master Boot Image (MBI)
Master Boot Image can be used directly (e.g. by using blhost write-memory command) or it can be used for further processing (e.g. used as input to Secure Binary image container). Image is created based on a supplied configuration file, either JSON or YAML is supported.
We can divide divide into two categories based on layout.
- eXecute-In-Place (XIP) images
Plain
CRC
Signed
- Load-to-RAM images
Plain
CRC
Signed images with HMAC signed header. Since load-to-RAM copies the image from untrusted media to on-chip RAM, the length field in header should be authenticated before copy. Hence HMAC signed headers are used.
Encrypted (plain header with HMAC + AES-CBC encrypted).
Example of use
nxpimage: nxpimage mbi export <path to config file>
Sample configuration for LPC55s6x plain signed XIP image. Other sample configurations might be obtained with the get-templates sub-command.
# =========== Master Boot Image Configuration template for lpc55s6x, Plain Signed XIP Image. ===========
#
# == Basic Settings ==
#
family: lpc55s6x # MCU family., MCU family name.
outputImageExecutionTarget: xip # Application target., Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence.
outputImageAuthenticationType: signed # Type of boot image authentication., Specification of final master boot image authentication.
masterBootOutputFile: my_mbi.bin # Master Boot Image name., The file for Master Boot Image result file.
inputImageFile: my_application.bin # Plain application image., The input application image to by modified to Master Boot Image.
#
# == Trust Zone Settings ==
#
enableTrustZone: false # TrustZone enable option, If not specified, the Trust zone is disabled.
trustZonePresetFile: my_tz_custom.yaml # TrustZone Customization file, If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.
#
# == Certificate V2 Settings ==
#
mainCertPrivateKeyFile: my_prv_key.pem # Main Certificate private key, Main Certificate private key used to sign certificate
imageBuildNumber: 0 # Image Build Number, If it's omitted, it will be used 0 as default value.
rootCertificate0File: my_certificate0.pem # Root Certificate File 0, Root certificate file index 0.
rootCertificate1File: my_certificate1.pem # Root Certificate File 1, Root certificate file index 1.
rootCertificate2File: my_certificate2.pem # Root Certificate File 2, Root certificate file index 2.
rootCertificate3File: my_certificate3.pem # Root Certificate File 3, Root certificate file index 3.
mainCertChainId: 0 # Main Certificate Index, Index of certificate that is used as a main.
chainCertificate0File0: chain_certificate0_depth0.pem # Chain certificate 0 for root 0, Chain certificate 0 for root certificate 0
chainCertificate0File1: chain_certificate0_depth1.pem # Chain certificate 1 for root 0, Chain certificate 1 for root certificate 0
chainCertificate0File2: chain_certificate0_depth2.pem # Chain certificate 2 for root 0, Chain certificate 2 for root certificate 0
chainCertificate0File3: chain_certificate0_depth3.pem # Chain certificate 3 for root 0, Chain certificate 3 for root certificate 0
chainCertificate1File0: chain_certificate1_depth0.pem # Chain certificate 0 for root 1, Chain certificate 0 for root certificate 1
chainCertificate1File1: chain_certificate1_depth1.pem # Chain certificate 1 for root 1, Chain certificate 1 for root certificate 1
chainCertificate1File2: chain_certificate1_depth2.pem # Chain certificate 2 for root 1, Chain certificate 2 for root certificate 1
chainCertificate1File3: chain_certificate1_depth3.pem # Chain certificate 3 for root 1, Chain certificate 3 for root certificate 1
chainCertificate2File0: chain_certificate2_depth0.pem # Chain certificate 0 for root 2, Chain certificate 0 for root certificate 2
chainCertificate2File1: chain_certificate2_depth1.pem # Chain certificate 1 for root 2, Chain certificate 1 for root certificate 2
chainCertificate2File2: chain_certificate2_depth2.pem # Chain certificate 2 for root 2, Chain certificate 2 for root certificate 2
chainCertificate2File3: chain_certificate2_depth3.pem # Chain certificate 3 for root 2, Chain certificate 3 for root certificate 2
chainCertificate3File0: chain_certificate3_depth0.pem # Chain certificate 0 for root 3, Chain certificate 0 for root certificate 3
chainCertificate3File1: chain_certificate3_depth1.pem # Chain certificate 1 for root 3, Chain certificate 1 for root certificate 3
chainCertificate3File2: chain_certificate3_depth2.pem # Chain certificate 2 for root 3, Chain certificate 2 for root certificate 3
chainCertificate3File3: chain_certificate3_depth3.pem # Chain certificate 3 for root 3, Chain certificate 3 for root certificate 3
Supported devices for MBI
NXPIMAGE support devices from LPC55xx family (LPC55S0x, LPC55S1x, LPC55S2x, LPC552x, LPC55S6x), RT5xx, RT6xx, LPC55S3x, MCXN9xx and RW61x. Supported execution targets are: XIP (Execute in place) and Load to RAM and image authentication types: Plain, CRC, Signed, Encrypted and NXP Signed.
The following table shows the supported image types for each device, it either shows “N/A” if the configuration is not available or respective class that will be used for image creation.
Target in the table represents outputImageExecutionTarget in the configuration file and authentication in the table represents outputImageAuthenticationType.
Targets |
xip |
xip |
xip |
xip |
xip |
load-to-ram |
load-to-ram |
load-to-ram |
load-to-ram |
load-to-ram |
|---|---|---|---|---|---|---|---|---|---|---|
Authentication |
plain |
crc |
signed |
signed-nxp |
signed-encrypted |
plain |
crc |
signed |
signed-nxp |
signed-encrypted |
lpc55s0x |
N/A |
N/A |
N/A |
N/A |
N/A |
|||||
lpc550x |
N/A |
N/A |
N/A |
N/A |
N/A |
N/A |
N/A |
|||
lpc55s1x |
N/A |
N/A |
N/A |
N/A |
N/A |
|||||
lpc551x |
N/A |
N/A |
N/A |
N/A |
N/A |
N/A |
N/A |
|||
lpc55s2x |
N/A |
N/A |
N/A |
N/A |
N/A |
|||||
lpc552x |
N/A |
N/A |
N/A |
N/A |
N/A |
N/A |
N/A |
|||
lpc55s6x |
N/A |
N/A |
N/A |
N/A |
N/A |
|||||
nhs52sxx |
N/A |
N/A |
N/A |
N/A |
N/A |
|||||
rt5xx |
N/A |
N/A |
N/A |
|||||||
rt6xx |
N/A |
N/A |
N/A |
|||||||
lpc55s3x |
N/A |
N/A |
N/A |
N/A |
N/A |
|||||
kw45xx |
N/A |
N/A |
N/A |
N/A |
N/A |
N/A |
||||
k32w1xx |
N/A |
N/A |
N/A |
N/A |
N/A |
N/A |
||||
lpc553x |
N/A |
N/A |
N/A |
N/A |
N/A |
N/A |
||||
mcxn9xx |
N/A |
N/A |
N/A |
N/A |
||||||
mc56f81xxx |
N/A |
N/A |
N/A |
N/A |
N/A |
N/A |
N/A |
N/A |
N/A |
|
mwct20d2x |
N/A |
N/A |
N/A |
N/A |
N/A |
N/A |
N/A |
N/A |
N/A |
|
rw61x |
N/A |
N/A |
N/A |
N/A |
||||||
mcxa1xx |
N/A |
N/A |
N/A |
N/A |
N/A |
N/A |
N/A |
N/A |
Note
For LPC55xx (except for the LPC55S36 with external flash) the load-to-RAM images are intended only for recovery boot from 1-bit SPI flash.
Supported configuration options
Refer to the documentation below for the supported configuration options for each image type. Please note that the outputImageExecutionTarget and outputImageAuthenticationType must be filled in addition to the basic settings according to the table with supported devices.
outputImageExecutionTarget: xip # Application target., Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence.
outputImageAuthenticationType: signed # Type of boot image authentication., Specification of final master boot image authentication.
Mbi_CrcExtXipRw61x
family(string): MCU family name. Must be one of:["rw61x"].outputImageExecutionTarget(string): Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence. Must be one of:["xip", "load-to-ram", "Internal flash (XIP)", "External flash (XIP)", "Internal Flash (XIP)", "External Flash (XIP)", "RAM", "ram"].outputImageAuthenticationType(string): Specification of final master boot image authentication. Must be one of:["plain", "crc", "signed", "signed-encrypted", "signed-nxp", "Plain", "CRC", "Signed", "Encrypted + Signed", "NXP Signed", "NXP signed", "encrypted"].masterBootOutputFile(string): The file for Master Boot Image result file.inputImageFile(string): The input application image to by modified to Master Boot Image.enableTrustZone(boolean): If not specified, the Trust zone is disabled.trustZonePresetFile(string): If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.outputImageExecutionAddress([‘number’, ‘string’]): Application loading address in RAM if not XiP, otherwise address of load in XiP.imageVersion([‘number’, ‘string’]): Image version is used for dual boot. The boot ROM decides which image to boot first based on the image version. It boots the one with the newer image version first, and in case of a failure, it boots the older one.
# ========================================= YAML template Mbi_CrcExtXipRw61x =========================================
# ======================================================================================================================
# == Mbi_CrcExtXipRw61x ==
# ======================================================================================================================
# ------------------------------------------===== MCU family [Required] =====-------------------------------------------
# Description: MCU family name.
# Possible options: <rw61x>
family: CHOOSE_FROM_TABLE
# --------------------------------------===== Application target [Required] =====---------------------------------------
# Description: Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence.
# Possible options: <xip, load-to-ram, Internal flash (XIP), External flash (XIP), Internal Flash (XIP), External Flash
# (XIP), RAM, ram>
outputImageExecutionTarget: CHOOSE_FROM_TABLE
# -------------------------------===== Type of boot image authentication [Required] =====-------------------------------
# Description: Specification of final master boot image authentication.
# Possible options: <plain, crc, signed, signed-encrypted, signed-nxp, Plain, CRC, Signed, Encrypted + Signed, NXP
# Signed, NXP signed, encrypted>
outputImageAuthenticationType: CHOOSE_FROM_TABLE
# ------------------------------------===== Master Boot Image name [Required] =====-------------------------------------
# Description: The file for Master Boot Image result file.
masterBootOutputFile: my_mbi.bin
# ------------------------------------===== Plain application image [Required] =====------------------------------------
# Description: The input application image to by modified to Master Boot Image.
inputImageFile: my_application.bin
# ------------------------------------===== TrustZone enable option [Optional] =====------------------------------------
# Description: If not specified, the Trust zone is disabled.
enableTrustZone: false
# ---------------------------------===== TrustZone Customization file [Optional] =====----------------------------------
# Description: If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.
trustZonePresetFile: my_tz_custom.yaml
# --------------------------------===== Loading address of application [Required] =====---------------------------------
# Description: Application loading address in RAM if not XiP, otherwise address of load in XiP.
outputImageExecutionAddress: 0
# ----------------------------------------===== Image version. [Optional] =====-----------------------------------------
# Description: Image version is used for dual boot. The boot ROM decides which image to boot first based on the image
# version. It boots the one with the newer image version first, and in case of a failure, it boots the older one.
imageVersion: 0
Mbi_CrcRam
family(string): MCU family name. Must be one of:["lpc550x", "lpc551x", "lpc552x", "lpc55s0x", "lpc55s1x", "lpc55s2x", "lpc55s6x", "nhs52sxx"].outputImageExecutionTarget(string): Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence. Must be one of:["xip", "load-to-ram", "Internal flash (XIP)", "External flash (XIP)", "Internal Flash (XIP)", "External Flash (XIP)", "RAM", "ram"].outputImageAuthenticationType(string): Specification of final master boot image authentication. Must be one of:["plain", "crc", "signed", "signed-encrypted", "signed-nxp", "Plain", "CRC", "Signed", "Encrypted + Signed", "NXP Signed", "NXP signed", "encrypted"].masterBootOutputFile(string): The file for Master Boot Image result file.inputImageFile(string): The input application image to by modified to Master Boot Image.enableTrustZone(boolean): If not specified, the Trust zone is disabled.trustZonePresetFile(string): If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.outputImageExecutionAddress([‘number’, ‘string’]): Application loading address in RAM if not XiP, otherwise address of load in XiP.
# ============================================= YAML template Mbi_CrcRam =============================================
# ======================================================================================================================
# == Mbi_CrcRam ==
# ======================================================================================================================
# ------------------------------------------===== MCU family [Required] =====-------------------------------------------
# Description: MCU family name.
# Possible options: <lpc550x, lpc551x, lpc552x, lpc55s0x, lpc55s1x, lpc55s2x, lpc55s6x, nhs52sxx>
family: CHOOSE_FROM_TABLE
# --------------------------------------===== Application target [Required] =====---------------------------------------
# Description: Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence.
# Possible options: <xip, load-to-ram, Internal flash (XIP), External flash (XIP), Internal Flash (XIP), External Flash
# (XIP), RAM, ram>
outputImageExecutionTarget: CHOOSE_FROM_TABLE
# -------------------------------===== Type of boot image authentication [Required] =====-------------------------------
# Description: Specification of final master boot image authentication.
# Possible options: <plain, crc, signed, signed-encrypted, signed-nxp, Plain, CRC, Signed, Encrypted + Signed, NXP
# Signed, NXP signed, encrypted>
outputImageAuthenticationType: CHOOSE_FROM_TABLE
# ------------------------------------===== Master Boot Image name [Required] =====-------------------------------------
# Description: The file for Master Boot Image result file.
masterBootOutputFile: my_mbi.bin
# ------------------------------------===== Plain application image [Required] =====------------------------------------
# Description: The input application image to by modified to Master Boot Image.
inputImageFile: my_application.bin
# ------------------------------------===== TrustZone enable option [Optional] =====------------------------------------
# Description: If not specified, the Trust zone is disabled.
enableTrustZone: false
# ---------------------------------===== TrustZone Customization file [Optional] =====----------------------------------
# Description: If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.
trustZonePresetFile: my_tz_custom.yaml
# --------------------------------===== Loading address of application [Required] =====---------------------------------
# Description: Application loading address in RAM if not XiP, otherwise address of load in XiP.
outputImageExecutionAddress: 0
Mbi_CrcRamLpc55s3x
family(string): MCU family name. Must be one of:["lpc553x", "lpc55s3x"].outputImageExecutionTarget(string): Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence. Must be one of:["xip", "load-to-ram", "Internal flash (XIP)", "External flash (XIP)", "Internal Flash (XIP)", "External Flash (XIP)", "RAM", "ram"].outputImageAuthenticationType(string): Specification of final master boot image authentication. Must be one of:["plain", "crc", "signed", "signed-encrypted", "signed-nxp", "Plain", "CRC", "Signed", "Encrypted + Signed", "NXP Signed", "NXP signed", "encrypted"].masterBootOutputFile(string): The file for Master Boot Image result file.inputImageFile(string): The input application image to by modified to Master Boot Image.imageVersion([‘number’, ‘string’]): Image version is used for dual boot. The boot ROM decides which image to boot first based on the image version. It boots the one with the newer image version first, and in case of a failure, it boots the older one.enableTrustZone(boolean): If not specified, the Trust zone is disabled.trustZonePresetFile(string): If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.outputImageExecutionAddress([‘number’, ‘string’]): Application loading address in RAM if not XiP, otherwise address of load in XiP.
# ========================================= YAML template Mbi_CrcRamLpc55s3x =========================================
# ======================================================================================================================
# == Mbi_CrcRamLpc55s3x ==
# ======================================================================================================================
# ------------------------------------------===== MCU family [Required] =====-------------------------------------------
# Description: MCU family name.
# Possible options: <lpc553x, lpc55s3x>
family: CHOOSE_FROM_TABLE
# --------------------------------------===== Application target [Required] =====---------------------------------------
# Description: Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence.
# Possible options: <xip, load-to-ram, Internal flash (XIP), External flash (XIP), Internal Flash (XIP), External Flash
# (XIP), RAM, ram>
outputImageExecutionTarget: CHOOSE_FROM_TABLE
# -------------------------------===== Type of boot image authentication [Required] =====-------------------------------
# Description: Specification of final master boot image authentication.
# Possible options: <plain, crc, signed, signed-encrypted, signed-nxp, Plain, CRC, Signed, Encrypted + Signed, NXP
# Signed, NXP signed, encrypted>
outputImageAuthenticationType: CHOOSE_FROM_TABLE
# ------------------------------------===== Master Boot Image name [Required] =====-------------------------------------
# Description: The file for Master Boot Image result file.
masterBootOutputFile: my_mbi.bin
# ------------------------------------===== Plain application image [Required] =====------------------------------------
# Description: The input application image to by modified to Master Boot Image.
inputImageFile: my_application.bin
# ----------------------------------------===== Image version. [Optional] =====-----------------------------------------
# Description: Image version is used for dual boot. The boot ROM decides which image to boot first based on the image
# version. It boots the one with the newer image version first, and in case of a failure, it boots the older one.
imageVersion: 0
# ------------------------------------===== TrustZone enable option [Optional] =====------------------------------------
# Description: If not specified, the Trust zone is disabled.
enableTrustZone: false
# ---------------------------------===== TrustZone Customization file [Optional] =====----------------------------------
# Description: If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.
trustZonePresetFile: my_tz_custom.yaml
# --------------------------------===== Loading address of application [Required] =====---------------------------------
# Description: Application loading address in RAM if not XiP, otherwise address of load in XiP.
outputImageExecutionAddress: 0
Mbi_CrcRamMcxNx
family(string): MCU family name. Must be one of:["mcxn9xx"].outputImageExecutionTarget(string): Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence. Must be one of:["xip", "load-to-ram", "Internal flash (XIP)", "External flash (XIP)", "Internal Flash (XIP)", "External Flash (XIP)", "RAM", "ram"].outputImageAuthenticationType(string): Specification of final master boot image authentication. Must be one of:["plain", "crc", "signed", "signed-encrypted", "signed-nxp", "Plain", "CRC", "Signed", "Encrypted + Signed", "NXP Signed", "NXP signed", "encrypted"].masterBootOutputFile(string): The file for Master Boot Image result file.inputImageFile(string): The input application image to by modified to Master Boot Image.enableTrustZone(boolean): If not specified, the Trust zone is disabled.trustZonePresetFile(string): If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.outputImageExecutionAddress([‘number’, ‘string’]): Application loading address in RAM if not XiP, otherwise address of load in XiP.imageVersion([‘number’, ‘string’]): Image version is used for dual boot. The boot ROM decides which image to boot first based on the image version. It boots the one with the newer image version first, and in case of a failure, it boots the older one.
# ========================================== YAML template Mbi_CrcRamMcxNx ===========================================
# ======================================================================================================================
# == Mbi_CrcRamMcxNx ==
# ======================================================================================================================
# ------------------------------------------===== MCU family [Required] =====-------------------------------------------
# Description: MCU family name.
# Possible options: <mcxn9xx>
family: CHOOSE_FROM_TABLE
# --------------------------------------===== Application target [Required] =====---------------------------------------
# Description: Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence.
# Possible options: <xip, load-to-ram, Internal flash (XIP), External flash (XIP), Internal Flash (XIP), External Flash
# (XIP), RAM, ram>
outputImageExecutionTarget: CHOOSE_FROM_TABLE
# -------------------------------===== Type of boot image authentication [Required] =====-------------------------------
# Description: Specification of final master boot image authentication.
# Possible options: <plain, crc, signed, signed-encrypted, signed-nxp, Plain, CRC, Signed, Encrypted + Signed, NXP
# Signed, NXP signed, encrypted>
outputImageAuthenticationType: CHOOSE_FROM_TABLE
# ------------------------------------===== Master Boot Image name [Required] =====-------------------------------------
# Description: The file for Master Boot Image result file.
masterBootOutputFile: my_mbi.bin
# ------------------------------------===== Plain application image [Required] =====------------------------------------
# Description: The input application image to by modified to Master Boot Image.
inputImageFile: my_application.bin
# ------------------------------------===== TrustZone enable option [Optional] =====------------------------------------
# Description: If not specified, the Trust zone is disabled.
enableTrustZone: false
# ---------------------------------===== TrustZone Customization file [Optional] =====----------------------------------
# Description: If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.
trustZonePresetFile: my_tz_custom.yaml
# --------------------------------===== Loading address of application [Required] =====---------------------------------
# Description: Application loading address in RAM if not XiP, otherwise address of load in XiP.
outputImageExecutionAddress: 0
# ----------------------------------------===== Image version. [Optional] =====-----------------------------------------
# Description: Image version is used for dual boot. The boot ROM decides which image to boot first based on the image
# version. It boots the one with the newer image version first, and in case of a failure, it boots the older one.
imageVersion: 0
Mbi_CrcRamRtxxx
family(string): MCU family name. Must be one of:["rt5xx", "rt6xx"].outputImageExecutionTarget(string): Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence. Must be one of:["xip", "load-to-ram", "Internal flash (XIP)", "External flash (XIP)", "Internal Flash (XIP)", "External Flash (XIP)", "RAM", "ram"].outputImageAuthenticationType(string): Specification of final master boot image authentication. Must be one of:["plain", "crc", "signed", "signed-encrypted", "signed-nxp", "Plain", "CRC", "Signed", "Encrypted + Signed", "NXP Signed", "NXP signed", "encrypted"].masterBootOutputFile(string): The file for Master Boot Image result file.inputImageFile(string): The input application image to by modified to Master Boot Image.applicationTable(array): This is software future of RTxxx family that NXP SDK startup code(not ROM) could load additional images.Items (object)
binary(string, required): The binary file to be added to final application.destAddress([‘string’, ‘number’], required): Destination address in RAM of additional binary.load(boolean, required): Enabler to load/use the image.
outputImageExecutionAddress([‘number’, ‘string’]): Application loading address in RAM if not XiP, otherwise address of load in XiP.enableTrustZone(boolean): If not specified, the Trust zone is disabled.trustZonePresetFile(string): If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.enableHwUserModeKeys([‘boolean’, ‘string’]): Controlling secure hardware key bus. If enabled(1), then it is possible to access keys on hardware secure bus from non-secure application, else non-secure application will read zeros.
# ========================================== YAML template Mbi_CrcRamRtxxx ===========================================
# ======================================================================================================================
# == Mbi_CrcRamRtxxx ==
# ======================================================================================================================
# ------------------------------------------===== MCU family [Required] =====-------------------------------------------
# Description: MCU family name.
# Possible options: <rt5xx, rt6xx>
family: CHOOSE_FROM_TABLE
# --------------------------------------===== Application target [Required] =====---------------------------------------
# Description: Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence.
# Possible options: <xip, load-to-ram, Internal flash (XIP), External flash (XIP), Internal Flash (XIP), External Flash
# (XIP), RAM, ram>
outputImageExecutionTarget: CHOOSE_FROM_TABLE
# -------------------------------===== Type of boot image authentication [Required] =====-------------------------------
# Description: Specification of final master boot image authentication.
# Possible options: <plain, crc, signed, signed-encrypted, signed-nxp, Plain, CRC, Signed, Encrypted + Signed, NXP
# Signed, NXP signed, encrypted>
outputImageAuthenticationType: CHOOSE_FROM_TABLE
# ------------------------------------===== Master Boot Image name [Required] =====-------------------------------------
# Description: The file for Master Boot Image result file.
masterBootOutputFile: my_mbi.bin
# ------------------------------------===== Plain application image [Required] =====------------------------------------
# Description: The input application image to by modified to Master Boot Image.
inputImageFile: my_application.bin
# --------------------------------===== The list of additional binaries [Optional] =====--------------------------------
# Description: This is software future of RTxxx family that NXP SDK startup code(not ROM) could load additional images.
applicationTable:
-
# ----------------------------------------===== Binary file [Required] =====----------------------------------------
# Description: The binary file to be added to final application.
binary: my_additional_binary.bin
# ------------------------------------===== Destination address [Required] =====------------------------------------
# Description: Destination address in RAM of additional binary.
destAddress: 536870912
# ----------------------------------------===== Enable load [Required] =====----------------------------------------
# Description: Enabler to load/use the image.
load: true
# --------------------------------===== Loading address of application [Required] =====---------------------------------
# Description: Application loading address in RAM if not XiP, otherwise address of load in XiP.
outputImageExecutionAddress: 0
# ------------------------------------===== TrustZone enable option [Optional] =====------------------------------------
# Description: If not specified, the Trust zone is disabled.
enableTrustZone: false
# ---------------------------------===== TrustZone Customization file [Optional] =====----------------------------------
# Description: If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.
trustZonePresetFile: my_tz_custom.yaml
# ----------------------------------===== Enable User HW key sharing [Required] =====-----------------------------------
# Description: Controlling secure hardware key bus. If enabled(1), then it is possible to access keys on hardware secure
# bus from non-secure application, else non-secure application will read zeros.
enableHwUserModeKeys: false
Mbi_CrcRamRw61x
family(string): MCU family name. Must be one of:["rw61x"].outputImageExecutionTarget(string): Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence. Must be one of:["xip", "load-to-ram", "Internal flash (XIP)", "External flash (XIP)", "Internal Flash (XIP)", "External Flash (XIP)", "RAM", "ram"].outputImageAuthenticationType(string): Specification of final master boot image authentication. Must be one of:["plain", "crc", "signed", "signed-encrypted", "signed-nxp", "Plain", "CRC", "Signed", "Encrypted + Signed", "NXP Signed", "NXP signed", "encrypted"].masterBootOutputFile(string): The file for Master Boot Image result file.inputImageFile(string): The input application image to by modified to Master Boot Image.enableTrustZone(boolean): If not specified, the Trust zone is disabled.trustZonePresetFile(string): If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.outputImageExecutionAddress([‘number’, ‘string’]): Application loading address in RAM if not XiP, otherwise address of load in XiP.imageVersion([‘number’, ‘string’]): Image version is used for dual boot. The boot ROM decides which image to boot first based on the image version. It boots the one with the newer image version first, and in case of a failure, it boots the older one.
# ========================================== YAML template Mbi_CrcRamRw61x ===========================================
# ======================================================================================================================
# == Mbi_CrcRamRw61x ==
# ======================================================================================================================
# ------------------------------------------===== MCU family [Required] =====-------------------------------------------
# Description: MCU family name.
# Possible options: <rw61x>
family: CHOOSE_FROM_TABLE
# --------------------------------------===== Application target [Required] =====---------------------------------------
# Description: Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence.
# Possible options: <xip, load-to-ram, Internal flash (XIP), External flash (XIP), Internal Flash (XIP), External Flash
# (XIP), RAM, ram>
outputImageExecutionTarget: CHOOSE_FROM_TABLE
# -------------------------------===== Type of boot image authentication [Required] =====-------------------------------
# Description: Specification of final master boot image authentication.
# Possible options: <plain, crc, signed, signed-encrypted, signed-nxp, Plain, CRC, Signed, Encrypted + Signed, NXP
# Signed, NXP signed, encrypted>
outputImageAuthenticationType: CHOOSE_FROM_TABLE
# ------------------------------------===== Master Boot Image name [Required] =====-------------------------------------
# Description: The file for Master Boot Image result file.
masterBootOutputFile: my_mbi.bin
# ------------------------------------===== Plain application image [Required] =====------------------------------------
# Description: The input application image to by modified to Master Boot Image.
inputImageFile: my_application.bin
# ------------------------------------===== TrustZone enable option [Optional] =====------------------------------------
# Description: If not specified, the Trust zone is disabled.
enableTrustZone: false
# ---------------------------------===== TrustZone Customization file [Optional] =====----------------------------------
# Description: If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.
trustZonePresetFile: my_tz_custom.yaml
# --------------------------------===== Loading address of application [Required] =====---------------------------------
# Description: Application loading address in RAM if not XiP, otherwise address of load in XiP.
outputImageExecutionAddress: 0
# ----------------------------------------===== Image version. [Optional] =====-----------------------------------------
# Description: Image version is used for dual boot. The boot ROM decides which image to boot first based on the image
# version. It boots the one with the newer image version first, and in case of a failure, it boots the older one.
imageVersion: 0
Mbi_CrcXip
family(string): MCU family name. Must be one of:["lpc550x", "lpc551x", "lpc552x", "lpc55s2x", "lpc55s6x", "nhs52sxx"].outputImageExecutionTarget(string): Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence. Must be one of:["xip", "load-to-ram", "Internal flash (XIP)", "External flash (XIP)", "Internal Flash (XIP)", "External Flash (XIP)", "RAM", "ram"].outputImageAuthenticationType(string): Specification of final master boot image authentication. Must be one of:["plain", "crc", "signed", "signed-encrypted", "signed-nxp", "Plain", "CRC", "Signed", "Encrypted + Signed", "NXP Signed", "NXP signed", "encrypted"].masterBootOutputFile(string): The file for Master Boot Image result file.inputImageFile(string): The input application image to by modified to Master Boot Image.enableTrustZone(boolean): If not specified, the Trust zone is disabled.trustZonePresetFile(string): If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.
# ============================================= YAML template Mbi_CrcXip =============================================
# ======================================================================================================================
# == Mbi_CrcXip ==
# ======================================================================================================================
# ------------------------------------------===== MCU family [Required] =====-------------------------------------------
# Description: MCU family name.
# Possible options: <lpc550x, lpc551x, lpc552x, lpc55s2x, lpc55s6x, nhs52sxx>
family: CHOOSE_FROM_TABLE
# --------------------------------------===== Application target [Required] =====---------------------------------------
# Description: Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence.
# Possible options: <xip, load-to-ram, Internal flash (XIP), External flash (XIP), Internal Flash (XIP), External Flash
# (XIP), RAM, ram>
outputImageExecutionTarget: CHOOSE_FROM_TABLE
# -------------------------------===== Type of boot image authentication [Required] =====-------------------------------
# Description: Specification of final master boot image authentication.
# Possible options: <plain, crc, signed, signed-encrypted, signed-nxp, Plain, CRC, Signed, Encrypted + Signed, NXP
# Signed, NXP signed, encrypted>
outputImageAuthenticationType: CHOOSE_FROM_TABLE
# ------------------------------------===== Master Boot Image name [Required] =====-------------------------------------
# Description: The file for Master Boot Image result file.
masterBootOutputFile: my_mbi.bin
# ------------------------------------===== Plain application image [Required] =====------------------------------------
# Description: The input application image to by modified to Master Boot Image.
inputImageFile: my_application.bin
# ------------------------------------===== TrustZone enable option [Optional] =====------------------------------------
# Description: If not specified, the Trust zone is disabled.
enableTrustZone: false
# ---------------------------------===== TrustZone Customization file [Optional] =====----------------------------------
# Description: If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.
trustZonePresetFile: my_tz_custom.yaml
Mbi_CrcXipKw45xx
family(string): MCU family name. Must be one of:["k32w1xx", "kw45xx"].outputImageExecutionTarget(string): Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence. Must be one of:["xip", "load-to-ram", "Internal flash (XIP)", "External flash (XIP)", "Internal Flash (XIP)", "External Flash (XIP)", "RAM", "ram"].outputImageAuthenticationType(string): Specification of final master boot image authentication. Must be one of:["plain", "crc", "signed", "signed-encrypted", "signed-nxp", "Plain", "CRC", "Signed", "Encrypted + Signed", "NXP Signed", "NXP signed", "encrypted"].masterBootOutputFile(string): The file for Master Boot Image result file.inputImageFile(string): The input application image to by modified to Master Boot Image.outputImageExecutionAddress([‘number’, ‘string’]): Application loading address in RAM if not XiP, otherwise address of load in XiP.enableTrustZone(boolean): If not specified, the Trust zone is disabled.trustZonePresetFile(string): If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.outputImageSubtype(string): Image subtype determine the image use in MCU. “main” for main application, “nbu” for Narrow Band Unit image and “recovery” for recovery image type. Must be one of:["main", "nbu", "recovery"].
# ========================================== YAML template Mbi_CrcXipKw45xx ==========================================
# ======================================================================================================================
# == Mbi_CrcXipKw45xx ==
# ======================================================================================================================
# ------------------------------------------===== MCU family [Required] =====-------------------------------------------
# Description: MCU family name.
# Possible options: <k32w1xx, kw45xx>
family: CHOOSE_FROM_TABLE
# --------------------------------------===== Application target [Required] =====---------------------------------------
# Description: Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence.
# Possible options: <xip, load-to-ram, Internal flash (XIP), External flash (XIP), Internal Flash (XIP), External Flash
# (XIP), RAM, ram>
outputImageExecutionTarget: CHOOSE_FROM_TABLE
# -------------------------------===== Type of boot image authentication [Required] =====-------------------------------
# Description: Specification of final master boot image authentication.
# Possible options: <plain, crc, signed, signed-encrypted, signed-nxp, Plain, CRC, Signed, Encrypted + Signed, NXP
# Signed, NXP signed, encrypted>
outputImageAuthenticationType: CHOOSE_FROM_TABLE
# ------------------------------------===== Master Boot Image name [Required] =====-------------------------------------
# Description: The file for Master Boot Image result file.
masterBootOutputFile: my_mbi.bin
# ------------------------------------===== Plain application image [Required] =====------------------------------------
# Description: The input application image to by modified to Master Boot Image.
inputImageFile: my_application.bin
# --------------------------------===== Loading address of application [Required] =====---------------------------------
# Description: Application loading address in RAM if not XiP, otherwise address of load in XiP.
outputImageExecutionAddress: 0
# ------------------------------------===== TrustZone enable option [Optional] =====------------------------------------
# Description: If not specified, the Trust zone is disabled.
enableTrustZone: false
# ---------------------------------===== TrustZone Customization file [Optional] =====----------------------------------
# Description: If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.
trustZonePresetFile: my_tz_custom.yaml
# -----------------------------------------===== Image SubType [Optional] =====-----------------------------------------
# Description: Image subtype determine the image use in MCU. "main" for main application, "nbu" for Narrow Band Unit
# image and "recovery" for recovery image type
# Possible options: <main, nbu, recovery>
outputImageSubtype: main
Mbi_CrcXipLpc55s3x
family(string): MCU family name. Must be one of:["lpc553x", "lpc55s3x"].outputImageExecutionTarget(string): Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence. Must be one of:["xip", "load-to-ram", "Internal flash (XIP)", "External flash (XIP)", "Internal Flash (XIP)", "External Flash (XIP)", "RAM", "ram"].outputImageAuthenticationType(string): Specification of final master boot image authentication. Must be one of:["plain", "crc", "signed", "signed-encrypted", "signed-nxp", "Plain", "CRC", "Signed", "Encrypted + Signed", "NXP Signed", "NXP signed", "encrypted"].masterBootOutputFile(string): The file for Master Boot Image result file.inputImageFile(string): The input application image to by modified to Master Boot Image.imageVersion([‘number’, ‘string’]): Image version is used for dual boot. The boot ROM decides which image to boot first based on the image version. It boots the one with the newer image version first, and in case of a failure, it boots the older one.enableTrustZone(boolean): If not specified, the Trust zone is disabled.trustZonePresetFile(string): If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.outputImageExecutionAddress([‘number’, ‘string’]): Application loading address in RAM if not XiP, otherwise address of load in XiP.
# ========================================= YAML template Mbi_CrcXipLpc55s3x =========================================
# ======================================================================================================================
# == Mbi_CrcXipLpc55s3x ==
# ======================================================================================================================
# ------------------------------------------===== MCU family [Required] =====-------------------------------------------
# Description: MCU family name.
# Possible options: <lpc553x, lpc55s3x>
family: CHOOSE_FROM_TABLE
# --------------------------------------===== Application target [Required] =====---------------------------------------
# Description: Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence.
# Possible options: <xip, load-to-ram, Internal flash (XIP), External flash (XIP), Internal Flash (XIP), External Flash
# (XIP), RAM, ram>
outputImageExecutionTarget: CHOOSE_FROM_TABLE
# -------------------------------===== Type of boot image authentication [Required] =====-------------------------------
# Description: Specification of final master boot image authentication.
# Possible options: <plain, crc, signed, signed-encrypted, signed-nxp, Plain, CRC, Signed, Encrypted + Signed, NXP
# Signed, NXP signed, encrypted>
outputImageAuthenticationType: CHOOSE_FROM_TABLE
# ------------------------------------===== Master Boot Image name [Required] =====-------------------------------------
# Description: The file for Master Boot Image result file.
masterBootOutputFile: my_mbi.bin
# ------------------------------------===== Plain application image [Required] =====------------------------------------
# Description: The input application image to by modified to Master Boot Image.
inputImageFile: my_application.bin
# ----------------------------------------===== Image version. [Optional] =====-----------------------------------------
# Description: Image version is used for dual boot. The boot ROM decides which image to boot first based on the image
# version. It boots the one with the newer image version first, and in case of a failure, it boots the older one.
imageVersion: 0
# ------------------------------------===== TrustZone enable option [Optional] =====------------------------------------
# Description: If not specified, the Trust zone is disabled.
enableTrustZone: false
# ---------------------------------===== TrustZone Customization file [Optional] =====----------------------------------
# Description: If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.
trustZonePresetFile: my_tz_custom.yaml
# --------------------------------===== Loading address of application [Required] =====---------------------------------
# Description: Application loading address in RAM if not XiP, otherwise address of load in XiP.
outputImageExecutionAddress: 0
Mbi_CrcXipMcxAx
family(string): MCU family name. Must be one of:["mcxa1xx"].outputImageExecutionTarget(string): Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence. Must be one of:["xip", "load-to-ram", "Internal flash (XIP)", "External flash (XIP)", "Internal Flash (XIP)", "External Flash (XIP)", "RAM", "ram"].outputImageAuthenticationType(string): Specification of final master boot image authentication. Must be one of:["plain", "crc", "signed", "signed-encrypted", "signed-nxp", "Plain", "CRC", "Signed", "Encrypted + Signed", "NXP Signed", "NXP signed", "encrypted"].masterBootOutputFile(string): The file for Master Boot Image result file.inputImageFile(string): The input application image to by modified to Master Boot Image.imageVersion([‘number’, ‘string’]): Image version is used for dual boot. The boot ROM decides which image to boot first based on the image version. It boots the one with the newer image version first, and in case of a failure, it boots the older one.
# ========================================== YAML template Mbi_CrcXipMcxAx ===========================================
# ======================================================================================================================
# == Mbi_CrcXipMcxAx ==
# ======================================================================================================================
# ------------------------------------------===== MCU family [Required] =====-------------------------------------------
# Description: MCU family name.
# Possible options: <mcxa1xx>
family: CHOOSE_FROM_TABLE
# --------------------------------------===== Application target [Required] =====---------------------------------------
# Description: Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence.
# Possible options: <xip, load-to-ram, Internal flash (XIP), External flash (XIP), Internal Flash (XIP), External Flash
# (XIP), RAM, ram>
outputImageExecutionTarget: CHOOSE_FROM_TABLE
# -------------------------------===== Type of boot image authentication [Required] =====-------------------------------
# Description: Specification of final master boot image authentication.
# Possible options: <plain, crc, signed, signed-encrypted, signed-nxp, Plain, CRC, Signed, Encrypted + Signed, NXP
# Signed, NXP signed, encrypted>
outputImageAuthenticationType: CHOOSE_FROM_TABLE
# ------------------------------------===== Master Boot Image name [Required] =====-------------------------------------
# Description: The file for Master Boot Image result file.
masterBootOutputFile: my_mbi.bin
# ------------------------------------===== Plain application image [Required] =====------------------------------------
# Description: The input application image to by modified to Master Boot Image.
inputImageFile: my_application.bin
# ----------------------------------------===== Image version. [Optional] =====-----------------------------------------
# Description: Image version is used for dual boot. The boot ROM decides which image to boot first based on the image
# version. It boots the one with the newer image version first, and in case of a failure, it boots the older one.
imageVersion: 0
Mbi_CrcXipMcxNx
family(string): MCU family name. Must be one of:["mcxn9xx"].outputImageExecutionTarget(string): Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence. Must be one of:["xip", "load-to-ram", "Internal flash (XIP)", "External flash (XIP)", "Internal Flash (XIP)", "External Flash (XIP)", "RAM", "ram"].outputImageAuthenticationType(string): Specification of final master boot image authentication. Must be one of:["plain", "crc", "signed", "signed-encrypted", "signed-nxp", "Plain", "CRC", "Signed", "Encrypted + Signed", "NXP Signed", "NXP signed", "encrypted"].masterBootOutputFile(string): The file for Master Boot Image result file.inputImageFile(string): The input application image to by modified to Master Boot Image.enableTrustZone(boolean): If not specified, the Trust zone is disabled.trustZonePresetFile(string): If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.imageVersion([‘number’, ‘string’]): Image version is used for dual boot. The boot ROM decides which image to boot first based on the image version. It boots the one with the newer image version first, and in case of a failure, it boots the older one.
# ========================================== YAML template Mbi_CrcXipMcxNx ===========================================
# ======================================================================================================================
# == Mbi_CrcXipMcxNx ==
# ======================================================================================================================
# ------------------------------------------===== MCU family [Required] =====-------------------------------------------
# Description: MCU family name.
# Possible options: <mcxn9xx>
family: CHOOSE_FROM_TABLE
# --------------------------------------===== Application target [Required] =====---------------------------------------
# Description: Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence.
# Possible options: <xip, load-to-ram, Internal flash (XIP), External flash (XIP), Internal Flash (XIP), External Flash
# (XIP), RAM, ram>
outputImageExecutionTarget: CHOOSE_FROM_TABLE
# -------------------------------===== Type of boot image authentication [Required] =====-------------------------------
# Description: Specification of final master boot image authentication.
# Possible options: <plain, crc, signed, signed-encrypted, signed-nxp, Plain, CRC, Signed, Encrypted + Signed, NXP
# Signed, NXP signed, encrypted>
outputImageAuthenticationType: CHOOSE_FROM_TABLE
# ------------------------------------===== Master Boot Image name [Required] =====-------------------------------------
# Description: The file for Master Boot Image result file.
masterBootOutputFile: my_mbi.bin
# ------------------------------------===== Plain application image [Required] =====------------------------------------
# Description: The input application image to by modified to Master Boot Image.
inputImageFile: my_application.bin
# ------------------------------------===== TrustZone enable option [Optional] =====------------------------------------
# Description: If not specified, the Trust zone is disabled.
enableTrustZone: false
# ---------------------------------===== TrustZone Customization file [Optional] =====----------------------------------
# Description: If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.
trustZonePresetFile: my_tz_custom.yaml
# ----------------------------------------===== Image version. [Optional] =====-----------------------------------------
# Description: Image version is used for dual boot. The boot ROM decides which image to boot first based on the image
# version. It boots the one with the newer image version first, and in case of a failure, it boots the older one.
imageVersion: 0
Mbi_CrcXipRtxxx
family(string): MCU family name. Must be one of:["lpc55s0x", "lpc55s1x", "rt5xx", "rt6xx"].outputImageExecutionTarget(string): Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence. Must be one of:["xip", "load-to-ram", "Internal flash (XIP)", "External flash (XIP)", "Internal Flash (XIP)", "External Flash (XIP)", "RAM", "ram"].outputImageAuthenticationType(string): Specification of final master boot image authentication. Must be one of:["plain", "crc", "signed", "signed-encrypted", "signed-nxp", "Plain", "CRC", "Signed", "Encrypted + Signed", "NXP Signed", "NXP signed", "encrypted"].masterBootOutputFile(string): The file for Master Boot Image result file.inputImageFile(string): The input application image to by modified to Master Boot Image.outputImageExecutionAddress([‘number’, ‘string’]): Application loading address in RAM if not XiP, otherwise address of load in XiP.enableTrustZone(boolean): If not specified, the Trust zone is disabled.trustZonePresetFile(string): If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.enableHwUserModeKeys([‘boolean’, ‘string’]): Controlling secure hardware key bus. If enabled(1), then it is possible to access keys on hardware secure bus from non-secure application, else non-secure application will read zeros.
# ========================================== YAML template Mbi_CrcXipRtxxx ===========================================
# ======================================================================================================================
# == Mbi_CrcXipRtxxx ==
# ======================================================================================================================
# ------------------------------------------===== MCU family [Required] =====-------------------------------------------
# Description: MCU family name.
# Possible options: <lpc55s0x, lpc55s1x, rt5xx, rt6xx>
family: CHOOSE_FROM_TABLE
# --------------------------------------===== Application target [Required] =====---------------------------------------
# Description: Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence.
# Possible options: <xip, load-to-ram, Internal flash (XIP), External flash (XIP), Internal Flash (XIP), External Flash
# (XIP), RAM, ram>
outputImageExecutionTarget: CHOOSE_FROM_TABLE
# -------------------------------===== Type of boot image authentication [Required] =====-------------------------------
# Description: Specification of final master boot image authentication.
# Possible options: <plain, crc, signed, signed-encrypted, signed-nxp, Plain, CRC, Signed, Encrypted + Signed, NXP
# Signed, NXP signed, encrypted>
outputImageAuthenticationType: CHOOSE_FROM_TABLE
# ------------------------------------===== Master Boot Image name [Required] =====-------------------------------------
# Description: The file for Master Boot Image result file.
masterBootOutputFile: my_mbi.bin
# ------------------------------------===== Plain application image [Required] =====------------------------------------
# Description: The input application image to by modified to Master Boot Image.
inputImageFile: my_application.bin
# --------------------------------===== Loading address of application [Required] =====---------------------------------
# Description: Application loading address in RAM if not XiP, otherwise address of load in XiP.
outputImageExecutionAddress: 0
# ------------------------------------===== TrustZone enable option [Optional] =====------------------------------------
# Description: If not specified, the Trust zone is disabled.
enableTrustZone: false
# ---------------------------------===== TrustZone Customization file [Optional] =====----------------------------------
# Description: If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.
trustZonePresetFile: my_tz_custom.yaml
# ----------------------------------===== Enable User HW key sharing [Required] =====-----------------------------------
# Description: Controlling secure hardware key bus. If enabled(1), then it is possible to access keys on hardware secure
# bus from non-secure application, else non-secure application will read zeros.
enableHwUserModeKeys: false
Mbi_EncryptedRamRtxxx
family(string): MCU family name. Must be one of:["rt5xx", "rt6xx"].outputImageExecutionTarget(string): Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence. Must be one of:["xip", "load-to-ram", "Internal flash (XIP)", "External flash (XIP)", "Internal Flash (XIP)", "External Flash (XIP)", "RAM", "ram"].outputImageAuthenticationType(string): Specification of final master boot image authentication. Must be one of:["plain", "crc", "signed", "signed-encrypted", "signed-nxp", "Plain", "CRC", "Signed", "Encrypted + Signed", "NXP Signed", "NXP signed", "encrypted"].masterBootOutputFile(string): The file for Master Boot Image result file.inputImageFile(string): The input application image to by modified to Master Boot Image.applicationTable(array): This is software future of RTxxx family that NXP SDK startup code(not ROM) could load additional images.Items (object)
binary(string, required): The binary file to be added to final application.destAddress([‘string’, ‘number’], required): Destination address in RAM of additional binary.load(boolean, required): Enabler to load/use the image.
outputImageExecutionAddress([‘number’, ‘string’]): Application loading address in RAM if not XiP, otherwise address of load in XiP.enableTrustZone(boolean): If not specified, the Trust zone is disabled.trustZonePresetFile(string): If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.certBlock(string): Path to certificate block binary or config file.mainRootCertPrivateKeyFile(string): Main Certificate private key used to sign certificate. It can be replaced by signProvider key.signPrivateKey(string): Main Certificate private key used to sign certificate. It can be replaced by signProvider key.signProvider(string): Signature provider configuration in format ‘type=<sp_type>;= ; = ”. enableHwUserModeKeys([‘boolean’, ‘string’]): Controlling secure hardware key bus. If enabled(1), then it is possible to access keys on hardware secure bus from non-secure application, else non-secure application will read zeros.keyStoreFile(string): Optional KeyStore data file for included keystore in LoadToRam images. If defined the KeyStore is added into MBI.outputImageEncryptionKeyFile(string): The OTP Master key that is used to compute HMAC encryption key. Could be defined as hex number and also as hex/binary file.\n Used algorithm by tool the get HMAC Key; AES_ENCRYPT (OTP_MASTER_KEK, 0x00000000000000000000000000000000).CtrInitVector(string): The initial vector for encryption counter. Could be defined as hex number and also as hex/binary file.
# ======================================= YAML template Mbi_EncryptedRamRtxxx ========================================
# ======================================================================================================================
# == Mbi_EncryptedRamRtxxx ==
# ======================================================================================================================
# ------------------------------------------===== MCU family [Required] =====-------------------------------------------
# Description: MCU family name.
# Possible options: <rt5xx, rt6xx>
family: CHOOSE_FROM_TABLE
# --------------------------------------===== Application target [Required] =====---------------------------------------
# Description: Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence.
# Possible options: <xip, load-to-ram, Internal flash (XIP), External flash (XIP), Internal Flash (XIP), External Flash
# (XIP), RAM, ram>
outputImageExecutionTarget: CHOOSE_FROM_TABLE
# -------------------------------===== Type of boot image authentication [Required] =====-------------------------------
# Description: Specification of final master boot image authentication.
# Possible options: <plain, crc, signed, signed-encrypted, signed-nxp, Plain, CRC, Signed, Encrypted + Signed, NXP
# Signed, NXP signed, encrypted>
outputImageAuthenticationType: CHOOSE_FROM_TABLE
# ------------------------------------===== Master Boot Image name [Required] =====-------------------------------------
# Description: The file for Master Boot Image result file.
masterBootOutputFile: my_mbi.bin
# ------------------------------------===== Plain application image [Required] =====------------------------------------
# Description: The input application image to by modified to Master Boot Image.
inputImageFile: my_application.bin
# --------------------------------===== The list of additional binaries [Optional] =====--------------------------------
# Description: This is software future of RTxxx family that NXP SDK startup code(not ROM) could load additional images.
applicationTable:
-
# ----------------------------------------===== Binary file [Required] =====----------------------------------------
# Description: The binary file to be added to final application.
binary: my_additional_binary.bin
# ------------------------------------===== Destination address [Required] =====------------------------------------
# Description: Destination address in RAM of additional binary.
destAddress: 536870912
# ----------------------------------------===== Enable load [Required] =====----------------------------------------
# Description: Enabler to load/use the image.
load: true
# --------------------------------===== Loading address of application [Required] =====---------------------------------
# Description: Application loading address in RAM if not XiP, otherwise address of load in XiP.
outputImageExecutionAddress: 0
# ------------------------------------===== TrustZone enable option [Optional] =====------------------------------------
# Description: If not specified, the Trust zone is disabled.
enableTrustZone: false
# ---------------------------------===== TrustZone Customization file [Optional] =====----------------------------------
# Description: If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.
trustZonePresetFile: my_tz_custom.yaml
# -----------------------------===== Certificate Block binary/config file [Required] =====------------------------------
# Description: Path to certificate block binary or config file.
certBlock: cert_block.yaml
# --------------------------===== Main Certificate private key [Conditionally required] =====---------------------------
# Description: Main Certificate private key used to sign certificate. It can be replaced by signProvider key.
signPrivateKey: main_prv_key.pem
# -------------------------------===== Signature Provider [Conditionally required] =====--------------------------------
# Description: Signature provider configuration in format 'type=<sp_type>;<key1>=<value1>;<key2>=<value2>".
signProvider: type=file;file_path=my_prv_key.pem
# ----------------------------------===== Enable User HW key sharing [Required] =====-----------------------------------
# Description: Controlling secure hardware key bus. If enabled(1), then it is possible to access keys on hardware secure
# bus from non-secure application, else non-secure application will read zeros.
enableHwUserModeKeys: false
# ------------------------------------===== The Key store data file [Optional] =====------------------------------------
# Description: Optional KeyStore data file for included keystore in LoadToRam images. If defined the KeyStore is added
# into MBI.
keyStoreFile: my_key_store_data.bin
# -----------------------------------===== OTP Master key (HMAC Key) [Required] =====-----------------------------------
# Description: The OTP Master key that is used to compute HMAC encryption key. Could be defined as hex number and also
# as hex/binary file.\n Used algorithm by tool the get HMAC Key; AES_ENCRYPT (OTP_MASTER_KEK,
# 0x00000000000000000000000000000000)
outputImageEncryptionKeyFile: otp_master_key.bin
# ---------------===== The output image encryption initial vector for encryption counter [Optional] =====---------------
# Description: The initial vector for encryption counter. Could be defined as hex number and also as hex/binary file
CtrInitVector: '0xc3df2316fd40b15586cb5ae49483aee2'
Mbi_PlainExtXipSignedRw61x
family(string): MCU family name. Must be one of:["rw61x"].outputImageExecutionTarget(string): Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence. Must be one of:["xip", "load-to-ram", "Internal flash (XIP)", "External flash (XIP)", "Internal Flash (XIP)", "External Flash (XIP)", "RAM", "ram"].outputImageAuthenticationType(string): Specification of final master boot image authentication. Must be one of:["plain", "crc", "signed", "signed-encrypted", "signed-nxp", "Plain", "CRC", "Signed", "Encrypted + Signed", "NXP Signed", "NXP signed", "encrypted"].masterBootOutputFile(string): The file for Master Boot Image result file.inputImageFile(string): The input application image to by modified to Master Boot Image.certBlock(string): Path to certificate block binary or config file.mainRootCertPrivateKeyFile(string): Main Certificate private key used to sign certificate. It can be replaced by signProvider key.signPrivateKey(string): Main Certificate private key used to sign certificate. It can be replaced by signProvider key.signProvider(string): Signature provider configuration in format ‘type=<sp_type>;= ; = ”. enableTrustZone(boolean): If not specified, the Trust zone is disabled.trustZonePresetFile(string): If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.firmwareVersion([‘number’, ‘string’]): Value compared with Secure_FW_Version monotonic counter value stored in PFR/IFR. If value is lower than value in PFR/IFR, then is image rejected (rollback protection)..outputImageExecutionAddress([‘number’, ‘string’]): Application loading address in RAM if not XiP, otherwise address of load in XiP.imageVersion([‘number’, ‘string’]): Image version is used for dual boot. The boot ROM decides which image to boot first based on the image version. It boots the one with the newer image version first, and in case of a failure, it boots the older one.
# ===================================== YAML template Mbi_PlainExtXipSignedRw61x =====================================
# ======================================================================================================================
# == Mbi_PlainExtXipSignedRw61x ==
# ======================================================================================================================
# ------------------------------------------===== MCU family [Required] =====-------------------------------------------
# Description: MCU family name.
# Possible options: <rw61x>
family: CHOOSE_FROM_TABLE
# --------------------------------------===== Application target [Required] =====---------------------------------------
# Description: Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence.
# Possible options: <xip, load-to-ram, Internal flash (XIP), External flash (XIP), Internal Flash (XIP), External Flash
# (XIP), RAM, ram>
outputImageExecutionTarget: CHOOSE_FROM_TABLE
# -------------------------------===== Type of boot image authentication [Required] =====-------------------------------
# Description: Specification of final master boot image authentication.
# Possible options: <plain, crc, signed, signed-encrypted, signed-nxp, Plain, CRC, Signed, Encrypted + Signed, NXP
# Signed, NXP signed, encrypted>
outputImageAuthenticationType: CHOOSE_FROM_TABLE
# ------------------------------------===== Master Boot Image name [Required] =====-------------------------------------
# Description: The file for Master Boot Image result file.
masterBootOutputFile: my_mbi.bin
# ------------------------------------===== Plain application image [Required] =====------------------------------------
# Description: The input application image to by modified to Master Boot Image.
inputImageFile: my_application.bin
# -----------------------------===== Certificate Block binary/config file [Required] =====------------------------------
# Description: Path to certificate block binary or config file.
certBlock: cert_block.yaml
# --------------------------===== Main Certificate private key [Conditionally required] =====---------------------------
# Description: Main Certificate private key used to sign certificate. It can be replaced by signProvider key.
signPrivateKey: main_prv_key.pem
# -------------------------------===== Signature Provider [Conditionally required] =====--------------------------------
# Description: Signature provider configuration in format 'type=<sp_type>;<key1>=<value1>;<key2>=<value2>".
signProvider: type=file;file_path=my_prv_key.pem
# ------------------------------------===== TrustZone enable option [Optional] =====------------------------------------
# Description: If not specified, the Trust zone is disabled.
enableTrustZone: false
# ---------------------------------===== TrustZone Customization file [Optional] =====----------------------------------
# Description: If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.
trustZonePresetFile: my_tz_custom.yaml
# ---------------------------------------===== Firmware version. [Optional] =====---------------------------------------
# Description: Value compared with Secure_FW_Version monotonic counter value stored in PFR/IFR. If value is lower than
# value in PFR/IFR, then is image rejected (rollback protection)..
firmwareVersion: 0
# --------------------------------===== Loading address of application [Required] =====---------------------------------
# Description: Application loading address in RAM if not XiP, otherwise address of load in XiP.
outputImageExecutionAddress: 0
# ----------------------------------------===== Image version. [Optional] =====-----------------------------------------
# Description: Image version is used for dual boot. The boot ROM decides which image to boot first based on the image
# version. It boots the one with the newer image version first, and in case of a failure, it boots the older one.
imageVersion: 0
Mbi_PlainRamLpc55s3x
family(string): MCU family name. Must be one of:["lpc553x", "lpc55s3x"].outputImageExecutionTarget(string): Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence. Must be one of:["xip", "load-to-ram", "Internal flash (XIP)", "External flash (XIP)", "Internal Flash (XIP)", "External Flash (XIP)", "RAM", "ram"].outputImageAuthenticationType(string): Specification of final master boot image authentication. Must be one of:["plain", "crc", "signed", "signed-encrypted", "signed-nxp", "Plain", "CRC", "Signed", "Encrypted + Signed", "NXP Signed", "NXP signed", "encrypted"].masterBootOutputFile(string): The file for Master Boot Image result file.inputImageFile(string): The input application image to by modified to Master Boot Image.imageVersion([‘number’, ‘string’]): Image version is used for dual boot. The boot ROM decides which image to boot first based on the image version. It boots the one with the newer image version first, and in case of a failure, it boots the older one.enableTrustZone(boolean): If not specified, the Trust zone is disabled.trustZonePresetFile(string): If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.outputImageExecutionAddress([‘number’, ‘string’]): Application loading address in RAM if not XiP, otherwise address of load in XiP.
# ======================================== YAML template Mbi_PlainRamLpc55s3x ========================================
# ======================================================================================================================
# == Mbi_PlainRamLpc55s3x ==
# ======================================================================================================================
# ------------------------------------------===== MCU family [Required] =====-------------------------------------------
# Description: MCU family name.
# Possible options: <lpc553x, lpc55s3x>
family: CHOOSE_FROM_TABLE
# --------------------------------------===== Application target [Required] =====---------------------------------------
# Description: Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence.
# Possible options: <xip, load-to-ram, Internal flash (XIP), External flash (XIP), Internal Flash (XIP), External Flash
# (XIP), RAM, ram>
outputImageExecutionTarget: CHOOSE_FROM_TABLE
# -------------------------------===== Type of boot image authentication [Required] =====-------------------------------
# Description: Specification of final master boot image authentication.
# Possible options: <plain, crc, signed, signed-encrypted, signed-nxp, Plain, CRC, Signed, Encrypted + Signed, NXP
# Signed, NXP signed, encrypted>
outputImageAuthenticationType: CHOOSE_FROM_TABLE
# ------------------------------------===== Master Boot Image name [Required] =====-------------------------------------
# Description: The file for Master Boot Image result file.
masterBootOutputFile: my_mbi.bin
# ------------------------------------===== Plain application image [Required] =====------------------------------------
# Description: The input application image to by modified to Master Boot Image.
inputImageFile: my_application.bin
# ----------------------------------------===== Image version. [Optional] =====-----------------------------------------
# Description: Image version is used for dual boot. The boot ROM decides which image to boot first based on the image
# version. It boots the one with the newer image version first, and in case of a failure, it boots the older one.
imageVersion: 0
# ------------------------------------===== TrustZone enable option [Optional] =====------------------------------------
# Description: If not specified, the Trust zone is disabled.
enableTrustZone: false
# ---------------------------------===== TrustZone Customization file [Optional] =====----------------------------------
# Description: If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.
trustZonePresetFile: my_tz_custom.yaml
# --------------------------------===== Loading address of application [Required] =====---------------------------------
# Description: Application loading address in RAM if not XiP, otherwise address of load in XiP.
outputImageExecutionAddress: 0
Mbi_PlainRamMcxNx
family(string): MCU family name. Must be one of:["mcxn9xx"].outputImageExecutionTarget(string): Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence. Must be one of:["xip", "load-to-ram", "Internal flash (XIP)", "External flash (XIP)", "Internal Flash (XIP)", "External Flash (XIP)", "RAM", "ram"].outputImageAuthenticationType(string): Specification of final master boot image authentication. Must be one of:["plain", "crc", "signed", "signed-encrypted", "signed-nxp", "Plain", "CRC", "Signed", "Encrypted + Signed", "NXP Signed", "NXP signed", "encrypted"].masterBootOutputFile(string): The file for Master Boot Image result file.inputImageFile(string): The input application image to by modified to Master Boot Image.enableTrustZone(boolean): If not specified, the Trust zone is disabled.trustZonePresetFile(string): If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.outputImageExecutionAddress([‘number’, ‘string’]): Application loading address in RAM if not XiP, otherwise address of load in XiP.imageVersion([‘number’, ‘string’]): Image version is used for dual boot. The boot ROM decides which image to boot first based on the image version. It boots the one with the newer image version first, and in case of a failure, it boots the older one.
# ========================================= YAML template Mbi_PlainRamMcxNx ==========================================
# ======================================================================================================================
# == Mbi_PlainRamMcxNx ==
# ======================================================================================================================
# ------------------------------------------===== MCU family [Required] =====-------------------------------------------
# Description: MCU family name.
# Possible options: <mcxn9xx>
family: CHOOSE_FROM_TABLE
# --------------------------------------===== Application target [Required] =====---------------------------------------
# Description: Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence.
# Possible options: <xip, load-to-ram, Internal flash (XIP), External flash (XIP), Internal Flash (XIP), External Flash
# (XIP), RAM, ram>
outputImageExecutionTarget: CHOOSE_FROM_TABLE
# -------------------------------===== Type of boot image authentication [Required] =====-------------------------------
# Description: Specification of final master boot image authentication.
# Possible options: <plain, crc, signed, signed-encrypted, signed-nxp, Plain, CRC, Signed, Encrypted + Signed, NXP
# Signed, NXP signed, encrypted>
outputImageAuthenticationType: CHOOSE_FROM_TABLE
# ------------------------------------===== Master Boot Image name [Required] =====-------------------------------------
# Description: The file for Master Boot Image result file.
masterBootOutputFile: my_mbi.bin
# ------------------------------------===== Plain application image [Required] =====------------------------------------
# Description: The input application image to by modified to Master Boot Image.
inputImageFile: my_application.bin
# ------------------------------------===== TrustZone enable option [Optional] =====------------------------------------
# Description: If not specified, the Trust zone is disabled.
enableTrustZone: false
# ---------------------------------===== TrustZone Customization file [Optional] =====----------------------------------
# Description: If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.
trustZonePresetFile: my_tz_custom.yaml
# --------------------------------===== Loading address of application [Required] =====---------------------------------
# Description: Application loading address in RAM if not XiP, otherwise address of load in XiP.
outputImageExecutionAddress: 0
# ----------------------------------------===== Image version. [Optional] =====-----------------------------------------
# Description: Image version is used for dual boot. The boot ROM decides which image to boot first based on the image
# version. It boots the one with the newer image version first, and in case of a failure, it boots the older one.
imageVersion: 0
Mbi_PlainRamRtxxx
family(string): MCU family name. Must be one of:["rt5xx", "rt6xx"].outputImageExecutionTarget(string): Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence. Must be one of:["xip", "load-to-ram", "Internal flash (XIP)", "External flash (XIP)", "Internal Flash (XIP)", "External Flash (XIP)", "RAM", "ram"].outputImageAuthenticationType(string): Specification of final master boot image authentication. Must be one of:["plain", "crc", "signed", "signed-encrypted", "signed-nxp", "Plain", "CRC", "Signed", "Encrypted + Signed", "NXP Signed", "NXP signed", "encrypted"].masterBootOutputFile(string): The file for Master Boot Image result file.inputImageFile(string): The input application image to by modified to Master Boot Image.enableTrustZone(boolean): If not specified, the Trust zone is disabled.trustZonePresetFile(string): If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.outputImageExecutionAddress([‘number’, ‘string’]): Application loading address in RAM if not XiP, otherwise address of load in XiP.enableHwUserModeKeys([‘boolean’, ‘string’]): Controlling secure hardware key bus. If enabled(1), then it is possible to access keys on hardware secure bus from non-secure application, else non-secure application will read zeros.
# ========================================= YAML template Mbi_PlainRamRtxxx ==========================================
# ======================================================================================================================
# == Mbi_PlainRamRtxxx ==
# ======================================================================================================================
# ------------------------------------------===== MCU family [Required] =====-------------------------------------------
# Description: MCU family name.
# Possible options: <rt5xx, rt6xx>
family: CHOOSE_FROM_TABLE
# --------------------------------------===== Application target [Required] =====---------------------------------------
# Description: Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence.
# Possible options: <xip, load-to-ram, Internal flash (XIP), External flash (XIP), Internal Flash (XIP), External Flash
# (XIP), RAM, ram>
outputImageExecutionTarget: CHOOSE_FROM_TABLE
# -------------------------------===== Type of boot image authentication [Required] =====-------------------------------
# Description: Specification of final master boot image authentication.
# Possible options: <plain, crc, signed, signed-encrypted, signed-nxp, Plain, CRC, Signed, Encrypted + Signed, NXP
# Signed, NXP signed, encrypted>
outputImageAuthenticationType: CHOOSE_FROM_TABLE
# ------------------------------------===== Master Boot Image name [Required] =====-------------------------------------
# Description: The file for Master Boot Image result file.
masterBootOutputFile: my_mbi.bin
# ------------------------------------===== Plain application image [Required] =====------------------------------------
# Description: The input application image to by modified to Master Boot Image.
inputImageFile: my_application.bin
# ------------------------------------===== TrustZone enable option [Optional] =====------------------------------------
# Description: If not specified, the Trust zone is disabled.
enableTrustZone: false
# ---------------------------------===== TrustZone Customization file [Optional] =====----------------------------------
# Description: If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.
trustZonePresetFile: my_tz_custom.yaml
# --------------------------------===== Loading address of application [Required] =====---------------------------------
# Description: Application loading address in RAM if not XiP, otherwise address of load in XiP.
outputImageExecutionAddress: 0
# ----------------------------------===== Enable User HW key sharing [Required] =====-----------------------------------
# Description: Controlling secure hardware key bus. If enabled(1), then it is possible to access keys on hardware secure
# bus from non-secure application, else non-secure application will read zeros.
enableHwUserModeKeys: false
Mbi_PlainRamRw61x
family(string): MCU family name. Must be one of:["rw61x"].outputImageExecutionTarget(string): Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence. Must be one of:["xip", "load-to-ram", "Internal flash (XIP)", "External flash (XIP)", "Internal Flash (XIP)", "External Flash (XIP)", "RAM", "ram"].outputImageAuthenticationType(string): Specification of final master boot image authentication. Must be one of:["plain", "crc", "signed", "signed-encrypted", "signed-nxp", "Plain", "CRC", "Signed", "Encrypted + Signed", "NXP Signed", "NXP signed", "encrypted"].masterBootOutputFile(string): The file for Master Boot Image result file.inputImageFile(string): The input application image to by modified to Master Boot Image.enableTrustZone(boolean): If not specified, the Trust zone is disabled.trustZonePresetFile(string): If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.outputImageExecutionAddress([‘number’, ‘string’]): Application loading address in RAM if not XiP, otherwise address of load in XiP.imageVersion([‘number’, ‘string’]): Image version is used for dual boot. The boot ROM decides which image to boot first based on the image version. It boots the one with the newer image version first, and in case of a failure, it boots the older one.
# ========================================= YAML template Mbi_PlainRamRw61x ==========================================
# ======================================================================================================================
# == Mbi_PlainRamRw61x ==
# ======================================================================================================================
# ------------------------------------------===== MCU family [Required] =====-------------------------------------------
# Description: MCU family name.
# Possible options: <rw61x>
family: CHOOSE_FROM_TABLE
# --------------------------------------===== Application target [Required] =====---------------------------------------
# Description: Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence.
# Possible options: <xip, load-to-ram, Internal flash (XIP), External flash (XIP), Internal Flash (XIP), External Flash
# (XIP), RAM, ram>
outputImageExecutionTarget: CHOOSE_FROM_TABLE
# -------------------------------===== Type of boot image authentication [Required] =====-------------------------------
# Description: Specification of final master boot image authentication.
# Possible options: <plain, crc, signed, signed-encrypted, signed-nxp, Plain, CRC, Signed, Encrypted + Signed, NXP
# Signed, NXP signed, encrypted>
outputImageAuthenticationType: CHOOSE_FROM_TABLE
# ------------------------------------===== Master Boot Image name [Required] =====-------------------------------------
# Description: The file for Master Boot Image result file.
masterBootOutputFile: my_mbi.bin
# ------------------------------------===== Plain application image [Required] =====------------------------------------
# Description: The input application image to by modified to Master Boot Image.
inputImageFile: my_application.bin
# ------------------------------------===== TrustZone enable option [Optional] =====------------------------------------
# Description: If not specified, the Trust zone is disabled.
enableTrustZone: false
# ---------------------------------===== TrustZone Customization file [Optional] =====----------------------------------
# Description: If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.
trustZonePresetFile: my_tz_custom.yaml
# --------------------------------===== Loading address of application [Required] =====---------------------------------
# Description: Application loading address in RAM if not XiP, otherwise address of load in XiP.
outputImageExecutionAddress: 0
# ----------------------------------------===== Image version. [Optional] =====-----------------------------------------
# Description: Image version is used for dual boot. The boot ROM decides which image to boot first based on the image
# version. It boots the one with the newer image version first, and in case of a failure, it boots the older one.
imageVersion: 0
Mbi_PlainSignedRamRtxxx
family(string): MCU family name. Must be one of:["rt5xx", "rt6xx"].outputImageExecutionTarget(string): Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence. Must be one of:["xip", "load-to-ram", "Internal flash (XIP)", "External flash (XIP)", "Internal Flash (XIP)", "External Flash (XIP)", "RAM", "ram"].outputImageAuthenticationType(string): Specification of final master boot image authentication. Must be one of:["plain", "crc", "signed", "signed-encrypted", "signed-nxp", "Plain", "CRC", "Signed", "Encrypted + Signed", "NXP Signed", "NXP signed", "encrypted"].masterBootOutputFile(string): The file for Master Boot Image result file.inputImageFile(string): The input application image to by modified to Master Boot Image.applicationTable(array): This is software future of RTxxx family that NXP SDK startup code(not ROM) could load additional images.Items (object)
binary(string, required): The binary file to be added to final application.destAddress([‘string’, ‘number’], required): Destination address in RAM of additional binary.load(boolean, required): Enabler to load/use the image.
outputImageExecutionAddress([‘number’, ‘string’]): Application loading address in RAM if not XiP, otherwise address of load in XiP.enableTrustZone(boolean): If not specified, the Trust zone is disabled.trustZonePresetFile(string): If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.certBlock(string): Path to certificate block binary or config file.mainRootCertPrivateKeyFile(string): Main Certificate private key used to sign certificate. It can be replaced by signProvider key.signPrivateKey(string): Main Certificate private key used to sign certificate. It can be replaced by signProvider key.signProvider(string): Signature provider configuration in format ‘type=<sp_type>;= ; = ”. outputImageEncryptionKeyFile(string): The OTP Master key that is used to compute HMAC encryption key. Could be defined as hex number and also as hex/binary file.\n Used algorithm by tool the get HMAC Key; AES_ENCRYPT (OTP_MASTER_KEK, 0x00000000000000000000000000000000).keyStoreFile(string): Optional KeyStore data file for included keystore in LoadToRam images. If defined the KeyStore is added into MBI.enableHwUserModeKeys([‘boolean’, ‘string’]): Controlling secure hardware key bus. If enabled(1), then it is possible to access keys on hardware secure bus from non-secure application, else non-secure application will read zeros.
# ====================================== YAML template Mbi_PlainSignedRamRtxxx =======================================
# ======================================================================================================================
# == Mbi_PlainSignedRamRtxxx ==
# ======================================================================================================================
# ------------------------------------------===== MCU family [Required] =====-------------------------------------------
# Description: MCU family name.
# Possible options: <rt5xx, rt6xx>
family: CHOOSE_FROM_TABLE
# --------------------------------------===== Application target [Required] =====---------------------------------------
# Description: Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence.
# Possible options: <xip, load-to-ram, Internal flash (XIP), External flash (XIP), Internal Flash (XIP), External Flash
# (XIP), RAM, ram>
outputImageExecutionTarget: CHOOSE_FROM_TABLE
# -------------------------------===== Type of boot image authentication [Required] =====-------------------------------
# Description: Specification of final master boot image authentication.
# Possible options: <plain, crc, signed, signed-encrypted, signed-nxp, Plain, CRC, Signed, Encrypted + Signed, NXP
# Signed, NXP signed, encrypted>
outputImageAuthenticationType: CHOOSE_FROM_TABLE
# ------------------------------------===== Master Boot Image name [Required] =====-------------------------------------
# Description: The file for Master Boot Image result file.
masterBootOutputFile: my_mbi.bin
# ------------------------------------===== Plain application image [Required] =====------------------------------------
# Description: The input application image to by modified to Master Boot Image.
inputImageFile: my_application.bin
# --------------------------------===== The list of additional binaries [Optional] =====--------------------------------
# Description: This is software future of RTxxx family that NXP SDK startup code(not ROM) could load additional images.
applicationTable:
-
# ----------------------------------------===== Binary file [Required] =====----------------------------------------
# Description: The binary file to be added to final application.
binary: my_additional_binary.bin
# ------------------------------------===== Destination address [Required] =====------------------------------------
# Description: Destination address in RAM of additional binary.
destAddress: 536870912
# ----------------------------------------===== Enable load [Required] =====----------------------------------------
# Description: Enabler to load/use the image.
load: true
# --------------------------------===== Loading address of application [Required] =====---------------------------------
# Description: Application loading address in RAM if not XiP, otherwise address of load in XiP.
outputImageExecutionAddress: 0
# ------------------------------------===== TrustZone enable option [Optional] =====------------------------------------
# Description: If not specified, the Trust zone is disabled.
enableTrustZone: false
# ---------------------------------===== TrustZone Customization file [Optional] =====----------------------------------
# Description: If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.
trustZonePresetFile: my_tz_custom.yaml
# -----------------------------===== Certificate Block binary/config file [Required] =====------------------------------
# Description: Path to certificate block binary or config file.
certBlock: cert_block.yaml
# --------------------------===== Main Certificate private key [Conditionally required] =====---------------------------
# Description: Main Certificate private key used to sign certificate. It can be replaced by signProvider key.
signPrivateKey: main_prv_key.pem
# -------------------------------===== Signature Provider [Conditionally required] =====--------------------------------
# Description: Signature provider configuration in format 'type=<sp_type>;<key1>=<value1>;<key2>=<value2>".
signProvider: type=file;file_path=my_prv_key.pem
# -----------------------------------===== OTP Master key (HMAC Key) [Required] =====-----------------------------------
# Description: The OTP Master key that is used to compute HMAC encryption key. Could be defined as hex number and also
# as hex/binary file.\n Used algorithm by tool the get HMAC Key; AES_ENCRYPT (OTP_MASTER_KEK,
# 0x00000000000000000000000000000000)
outputImageEncryptionKeyFile: otp_master_key.bin
# ------------------------------------===== The Key store data file [Optional] =====------------------------------------
# Description: Optional KeyStore data file for included keystore in LoadToRam images. If defined the KeyStore is added
# into MBI.
keyStoreFile: my_key_store_data.bin
# ----------------------------------===== Enable User HW key sharing [Required] =====-----------------------------------
# Description: Controlling secure hardware key bus. If enabled(1), then it is possible to access keys on hardware secure
# bus from non-secure application, else non-secure application will read zeros.
enableHwUserModeKeys: false
Mbi_PlainSignedRamRw61x
family(string): MCU family name. Must be one of:["rw61x"].outputImageExecutionTarget(string): Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence. Must be one of:["xip", "load-to-ram", "Internal flash (XIP)", "External flash (XIP)", "Internal Flash (XIP)", "External Flash (XIP)", "RAM", "ram"].outputImageAuthenticationType(string): Specification of final master boot image authentication. Must be one of:["plain", "crc", "signed", "signed-encrypted", "signed-nxp", "Plain", "CRC", "Signed", "Encrypted + Signed", "NXP Signed", "NXP signed", "encrypted"].masterBootOutputFile(string): The file for Master Boot Image result file.inputImageFile(string): The input application image to by modified to Master Boot Image.certBlock(string): Path to certificate block binary or config file.mainRootCertPrivateKeyFile(string): Main Certificate private key used to sign certificate. It can be replaced by signProvider key.signPrivateKey(string): Main Certificate private key used to sign certificate. It can be replaced by signProvider key.signProvider(string): Signature provider configuration in format ‘type=<sp_type>;= ; = ”. enableTrustZone(boolean): If not specified, the Trust zone is disabled.trustZonePresetFile(string): If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.firmwareVersion([‘number’, ‘string’]): Value compared with Secure_FW_Version monotonic counter value stored in PFR/IFR. If value is lower than value in PFR/IFR, then is image rejected (rollback protection)..outputImageExecutionAddress([‘number’, ‘string’]): Application loading address in RAM if not XiP, otherwise address of load in XiP.imageVersion([‘number’, ‘string’]): Image version is used for dual boot. The boot ROM decides which image to boot first based on the image version. It boots the one with the newer image version first, and in case of a failure, it boots the older one.
# ====================================== YAML template Mbi_PlainSignedRamRw61x =======================================
# ======================================================================================================================
# == Mbi_PlainSignedRamRw61x ==
# ======================================================================================================================
# ------------------------------------------===== MCU family [Required] =====-------------------------------------------
# Description: MCU family name.
# Possible options: <rw61x>
family: CHOOSE_FROM_TABLE
# --------------------------------------===== Application target [Required] =====---------------------------------------
# Description: Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence.
# Possible options: <xip, load-to-ram, Internal flash (XIP), External flash (XIP), Internal Flash (XIP), External Flash
# (XIP), RAM, ram>
outputImageExecutionTarget: CHOOSE_FROM_TABLE
# -------------------------------===== Type of boot image authentication [Required] =====-------------------------------
# Description: Specification of final master boot image authentication.
# Possible options: <plain, crc, signed, signed-encrypted, signed-nxp, Plain, CRC, Signed, Encrypted + Signed, NXP
# Signed, NXP signed, encrypted>
outputImageAuthenticationType: CHOOSE_FROM_TABLE
# ------------------------------------===== Master Boot Image name [Required] =====-------------------------------------
# Description: The file for Master Boot Image result file.
masterBootOutputFile: my_mbi.bin
# ------------------------------------===== Plain application image [Required] =====------------------------------------
# Description: The input application image to by modified to Master Boot Image.
inputImageFile: my_application.bin
# -----------------------------===== Certificate Block binary/config file [Required] =====------------------------------
# Description: Path to certificate block binary or config file.
certBlock: cert_block.yaml
# --------------------------===== Main Certificate private key [Conditionally required] =====---------------------------
# Description: Main Certificate private key used to sign certificate. It can be replaced by signProvider key.
signPrivateKey: main_prv_key.pem
# -------------------------------===== Signature Provider [Conditionally required] =====--------------------------------
# Description: Signature provider configuration in format 'type=<sp_type>;<key1>=<value1>;<key2>=<value2>".
signProvider: type=file;file_path=my_prv_key.pem
# ------------------------------------===== TrustZone enable option [Optional] =====------------------------------------
# Description: If not specified, the Trust zone is disabled.
enableTrustZone: false
# ---------------------------------===== TrustZone Customization file [Optional] =====----------------------------------
# Description: If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.
trustZonePresetFile: my_tz_custom.yaml
# ---------------------------------------===== Firmware version. [Optional] =====---------------------------------------
# Description: Value compared with Secure_FW_Version monotonic counter value stored in PFR/IFR. If value is lower than
# value in PFR/IFR, then is image rejected (rollback protection)..
firmwareVersion: 0
# --------------------------------===== Loading address of application [Required] =====---------------------------------
# Description: Application loading address in RAM if not XiP, otherwise address of load in XiP.
outputImageExecutionAddress: 0
# ----------------------------------------===== Image version. [Optional] =====-----------------------------------------
# Description: Image version is used for dual boot. The boot ROM decides which image to boot first based on the image
# version. It boots the one with the newer image version first, and in case of a failure, it boots the older one.
imageVersion: 0
Mbi_PlainSignedXipRtxxx
family(string): MCU family name. Must be one of:["lpc55s0x", "lpc55s1x", "rt5xx", "rt6xx"].outputImageExecutionTarget(string): Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence. Must be one of:["xip", "load-to-ram", "Internal flash (XIP)", "External flash (XIP)", "Internal Flash (XIP)", "External Flash (XIP)", "RAM", "ram"].outputImageAuthenticationType(string): Specification of final master boot image authentication. Must be one of:["plain", "crc", "signed", "signed-encrypted", "signed-nxp", "Plain", "CRC", "Signed", "Encrypted + Signed", "NXP Signed", "NXP signed", "encrypted"].masterBootOutputFile(string): The file for Master Boot Image result file.inputImageFile(string): The input application image to by modified to Master Boot Image.outputImageExecutionAddress([‘number’, ‘string’]): Application loading address in RAM if not XiP, otherwise address of load in XiP.enableTrustZone(boolean): If not specified, the Trust zone is disabled.trustZonePresetFile(string): If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.certBlock(string): Path to certificate block binary or config file.mainRootCertPrivateKeyFile(string): Main Certificate private key used to sign certificate. It can be replaced by signProvider key.signPrivateKey(string): Main Certificate private key used to sign certificate. It can be replaced by signProvider key.signProvider(string): Signature provider configuration in format ‘type=<sp_type>;= ; = ”. enableHwUserModeKeys([‘boolean’, ‘string’]): Controlling secure hardware key bus. If enabled(1), then it is possible to access keys on hardware secure bus from non-secure application, else non-secure application will read zeros.
# ====================================== YAML template Mbi_PlainSignedXipRtxxx =======================================
# ======================================================================================================================
# == Mbi_PlainSignedXipRtxxx ==
# ======================================================================================================================
# ------------------------------------------===== MCU family [Required] =====-------------------------------------------
# Description: MCU family name.
# Possible options: <lpc55s0x, lpc55s1x, rt5xx, rt6xx>
family: CHOOSE_FROM_TABLE
# --------------------------------------===== Application target [Required] =====---------------------------------------
# Description: Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence.
# Possible options: <xip, load-to-ram, Internal flash (XIP), External flash (XIP), Internal Flash (XIP), External Flash
# (XIP), RAM, ram>
outputImageExecutionTarget: CHOOSE_FROM_TABLE
# -------------------------------===== Type of boot image authentication [Required] =====-------------------------------
# Description: Specification of final master boot image authentication.
# Possible options: <plain, crc, signed, signed-encrypted, signed-nxp, Plain, CRC, Signed, Encrypted + Signed, NXP
# Signed, NXP signed, encrypted>
outputImageAuthenticationType: CHOOSE_FROM_TABLE
# ------------------------------------===== Master Boot Image name [Required] =====-------------------------------------
# Description: The file for Master Boot Image result file.
masterBootOutputFile: my_mbi.bin
# ------------------------------------===== Plain application image [Required] =====------------------------------------
# Description: The input application image to by modified to Master Boot Image.
inputImageFile: my_application.bin
# --------------------------------===== Loading address of application [Required] =====---------------------------------
# Description: Application loading address in RAM if not XiP, otherwise address of load in XiP.
outputImageExecutionAddress: 0
# ------------------------------------===== TrustZone enable option [Optional] =====------------------------------------
# Description: If not specified, the Trust zone is disabled.
enableTrustZone: false
# ---------------------------------===== TrustZone Customization file [Optional] =====----------------------------------
# Description: If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.
trustZonePresetFile: my_tz_custom.yaml
# -----------------------------===== Certificate Block binary/config file [Required] =====------------------------------
# Description: Path to certificate block binary or config file.
certBlock: cert_block.yaml
# --------------------------===== Main Certificate private key [Conditionally required] =====---------------------------
# Description: Main Certificate private key used to sign certificate. It can be replaced by signProvider key.
signPrivateKey: main_prv_key.pem
# -------------------------------===== Signature Provider [Conditionally required] =====--------------------------------
# Description: Signature provider configuration in format 'type=<sp_type>;<key1>=<value1>;<key2>=<value2>".
signProvider: type=file;file_path=my_prv_key.pem
# ----------------------------------===== Enable User HW key sharing [Required] =====-----------------------------------
# Description: Controlling secure hardware key bus. If enabled(1), then it is possible to access keys on hardware secure
# bus from non-secure application, else non-secure application will read zeros.
enableHwUserModeKeys: false
Mbi_PlainXip
family(string): MCU family name. Must be one of:["lpc550x", "lpc551x", "lpc552x", "lpc55s2x", "lpc55s6x", "nhs52sxx"].outputImageExecutionTarget(string): Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence. Must be one of:["xip", "load-to-ram", "Internal flash (XIP)", "External flash (XIP)", "Internal Flash (XIP)", "External Flash (XIP)", "RAM", "ram"].outputImageAuthenticationType(string): Specification of final master boot image authentication. Must be one of:["plain", "crc", "signed", "signed-encrypted", "signed-nxp", "Plain", "CRC", "Signed", "Encrypted + Signed", "NXP Signed", "NXP signed", "encrypted"].masterBootOutputFile(string): The file for Master Boot Image result file.inputImageFile(string): The input application image to by modified to Master Boot Image.enableTrustZone(boolean): If not specified, the Trust zone is disabled.trustZonePresetFile(string): If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.
# ============================================ YAML template Mbi_PlainXip ============================================
# ======================================================================================================================
# == Mbi_PlainXip ==
# ======================================================================================================================
# ------------------------------------------===== MCU family [Required] =====-------------------------------------------
# Description: MCU family name.
# Possible options: <lpc550x, lpc551x, lpc552x, lpc55s2x, lpc55s6x, nhs52sxx>
family: CHOOSE_FROM_TABLE
# --------------------------------------===== Application target [Required] =====---------------------------------------
# Description: Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence.
# Possible options: <xip, load-to-ram, Internal flash (XIP), External flash (XIP), Internal Flash (XIP), External Flash
# (XIP), RAM, ram>
outputImageExecutionTarget: CHOOSE_FROM_TABLE
# -------------------------------===== Type of boot image authentication [Required] =====-------------------------------
# Description: Specification of final master boot image authentication.
# Possible options: <plain, crc, signed, signed-encrypted, signed-nxp, Plain, CRC, Signed, Encrypted + Signed, NXP
# Signed, NXP signed, encrypted>
outputImageAuthenticationType: CHOOSE_FROM_TABLE
# ------------------------------------===== Master Boot Image name [Required] =====-------------------------------------
# Description: The file for Master Boot Image result file.
masterBootOutputFile: my_mbi.bin
# ------------------------------------===== Plain application image [Required] =====------------------------------------
# Description: The input application image to by modified to Master Boot Image.
inputImageFile: my_application.bin
# ------------------------------------===== TrustZone enable option [Optional] =====------------------------------------
# Description: If not specified, the Trust zone is disabled.
enableTrustZone: false
# ---------------------------------===== TrustZone Customization file [Optional] =====----------------------------------
# Description: If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.
trustZonePresetFile: my_tz_custom.yaml
Mbi_PlainXipKw45xx
family(string): MCU family name. Must be one of:["k32w1xx", "kw45xx"].outputImageExecutionTarget(string): Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence. Must be one of:["xip", "load-to-ram", "Internal flash (XIP)", "External flash (XIP)", "Internal Flash (XIP)", "External Flash (XIP)", "RAM", "ram"].outputImageAuthenticationType(string): Specification of final master boot image authentication. Must be one of:["plain", "crc", "signed", "signed-encrypted", "signed-nxp", "Plain", "CRC", "Signed", "Encrypted + Signed", "NXP Signed", "NXP signed", "encrypted"].masterBootOutputFile(string): The file for Master Boot Image result file.inputImageFile(string): The input application image to by modified to Master Boot Image.outputImageExecutionAddress([‘number’, ‘string’]): Application loading address in RAM if not XiP, otherwise address of load in XiP.enableTrustZone(boolean): If not specified, the Trust zone is disabled.trustZonePresetFile(string): If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.outputImageSubtype(string): Image subtype determine the image use in MCU. “main” for main application, “nbu” for Narrow Band Unit image and “recovery” for recovery image type. Must be one of:["main", "nbu", "recovery"].
# ========================================= YAML template Mbi_PlainXipKw45xx =========================================
# ======================================================================================================================
# == Mbi_PlainXipKw45xx ==
# ======================================================================================================================
# ------------------------------------------===== MCU family [Required] =====-------------------------------------------
# Description: MCU family name.
# Possible options: <k32w1xx, kw45xx>
family: CHOOSE_FROM_TABLE
# --------------------------------------===== Application target [Required] =====---------------------------------------
# Description: Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence.
# Possible options: <xip, load-to-ram, Internal flash (XIP), External flash (XIP), Internal Flash (XIP), External Flash
# (XIP), RAM, ram>
outputImageExecutionTarget: CHOOSE_FROM_TABLE
# -------------------------------===== Type of boot image authentication [Required] =====-------------------------------
# Description: Specification of final master boot image authentication.
# Possible options: <plain, crc, signed, signed-encrypted, signed-nxp, Plain, CRC, Signed, Encrypted + Signed, NXP
# Signed, NXP signed, encrypted>
outputImageAuthenticationType: CHOOSE_FROM_TABLE
# ------------------------------------===== Master Boot Image name [Required] =====-------------------------------------
# Description: The file for Master Boot Image result file.
masterBootOutputFile: my_mbi.bin
# ------------------------------------===== Plain application image [Required] =====------------------------------------
# Description: The input application image to by modified to Master Boot Image.
inputImageFile: my_application.bin
# --------------------------------===== Loading address of application [Required] =====---------------------------------
# Description: Application loading address in RAM if not XiP, otherwise address of load in XiP.
outputImageExecutionAddress: 0
# ------------------------------------===== TrustZone enable option [Optional] =====------------------------------------
# Description: If not specified, the Trust zone is disabled.
enableTrustZone: false
# ---------------------------------===== TrustZone Customization file [Optional] =====----------------------------------
# Description: If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.
trustZonePresetFile: my_tz_custom.yaml
# -----------------------------------------===== Image SubType [Optional] =====-----------------------------------------
# Description: Image subtype determine the image use in MCU. "main" for main application, "nbu" for Narrow Band Unit
# image and "recovery" for recovery image type
# Possible options: <main, nbu, recovery>
outputImageSubtype: main
Mbi_PlainXipMcxAx
family(string): MCU family name. Must be one of:["mcxa1xx"].outputImageExecutionTarget(string): Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence. Must be one of:["xip", "load-to-ram", "Internal flash (XIP)", "External flash (XIP)", "Internal Flash (XIP)", "External Flash (XIP)", "RAM", "ram"].outputImageAuthenticationType(string): Specification of final master boot image authentication. Must be one of:["plain", "crc", "signed", "signed-encrypted", "signed-nxp", "Plain", "CRC", "Signed", "Encrypted + Signed", "NXP Signed", "NXP signed", "encrypted"].masterBootOutputFile(string): The file for Master Boot Image result file.inputImageFile(string): The input application image to by modified to Master Boot Image.imageVersion([‘number’, ‘string’]): Image version is used for dual boot. The boot ROM decides which image to boot first based on the image version. It boots the one with the newer image version first, and in case of a failure, it boots the older one.
# ========================================= YAML template Mbi_PlainXipMcxAx ==========================================
# ======================================================================================================================
# == Mbi_PlainXipMcxAx ==
# ======================================================================================================================
# ------------------------------------------===== MCU family [Required] =====-------------------------------------------
# Description: MCU family name.
# Possible options: <mcxa1xx>
family: CHOOSE_FROM_TABLE
# --------------------------------------===== Application target [Required] =====---------------------------------------
# Description: Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence.
# Possible options: <xip, load-to-ram, Internal flash (XIP), External flash (XIP), Internal Flash (XIP), External Flash
# (XIP), RAM, ram>
outputImageExecutionTarget: CHOOSE_FROM_TABLE
# -------------------------------===== Type of boot image authentication [Required] =====-------------------------------
# Description: Specification of final master boot image authentication.
# Possible options: <plain, crc, signed, signed-encrypted, signed-nxp, Plain, CRC, Signed, Encrypted + Signed, NXP
# Signed, NXP signed, encrypted>
outputImageAuthenticationType: CHOOSE_FROM_TABLE
# ------------------------------------===== Master Boot Image name [Required] =====-------------------------------------
# Description: The file for Master Boot Image result file.
masterBootOutputFile: my_mbi.bin
# ------------------------------------===== Plain application image [Required] =====------------------------------------
# Description: The input application image to by modified to Master Boot Image.
inputImageFile: my_application.bin
# ----------------------------------------===== Image version. [Optional] =====-----------------------------------------
# Description: Image version is used for dual boot. The boot ROM decides which image to boot first based on the image
# version. It boots the one with the newer image version first, and in case of a failure, it boots the older one.
imageVersion: 0
Mbi_PlainXipMcxNx
family(string): MCU family name. Must be one of:["mcxn9xx"].outputImageExecutionTarget(string): Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence. Must be one of:["xip", "load-to-ram", "Internal flash (XIP)", "External flash (XIP)", "Internal Flash (XIP)", "External Flash (XIP)", "RAM", "ram"].outputImageAuthenticationType(string): Specification of final master boot image authentication. Must be one of:["plain", "crc", "signed", "signed-encrypted", "signed-nxp", "Plain", "CRC", "Signed", "Encrypted + Signed", "NXP Signed", "NXP signed", "encrypted"].masterBootOutputFile(string): The file for Master Boot Image result file.inputImageFile(string): The input application image to by modified to Master Boot Image.enableTrustZone(boolean): If not specified, the Trust zone is disabled.trustZonePresetFile(string): If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.imageVersion([‘number’, ‘string’]): Image version is used for dual boot. The boot ROM decides which image to boot first based on the image version. It boots the one with the newer image version first, and in case of a failure, it boots the older one.
# ========================================= YAML template Mbi_PlainXipMcxNx ==========================================
# ======================================================================================================================
# == Mbi_PlainXipMcxNx ==
# ======================================================================================================================
# ------------------------------------------===== MCU family [Required] =====-------------------------------------------
# Description: MCU family name.
# Possible options: <mcxn9xx>
family: CHOOSE_FROM_TABLE
# --------------------------------------===== Application target [Required] =====---------------------------------------
# Description: Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence.
# Possible options: <xip, load-to-ram, Internal flash (XIP), External flash (XIP), Internal Flash (XIP), External Flash
# (XIP), RAM, ram>
outputImageExecutionTarget: CHOOSE_FROM_TABLE
# -------------------------------===== Type of boot image authentication [Required] =====-------------------------------
# Description: Specification of final master boot image authentication.
# Possible options: <plain, crc, signed, signed-encrypted, signed-nxp, Plain, CRC, Signed, Encrypted + Signed, NXP
# Signed, NXP signed, encrypted>
outputImageAuthenticationType: CHOOSE_FROM_TABLE
# ------------------------------------===== Master Boot Image name [Required] =====-------------------------------------
# Description: The file for Master Boot Image result file.
masterBootOutputFile: my_mbi.bin
# ------------------------------------===== Plain application image [Required] =====------------------------------------
# Description: The input application image to by modified to Master Boot Image.
inputImageFile: my_application.bin
# ------------------------------------===== TrustZone enable option [Optional] =====------------------------------------
# Description: If not specified, the Trust zone is disabled.
enableTrustZone: false
# ---------------------------------===== TrustZone Customization file [Optional] =====----------------------------------
# Description: If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.
trustZonePresetFile: my_tz_custom.yaml
# ----------------------------------------===== Image version. [Optional] =====-----------------------------------------
# Description: Image version is used for dual boot. The boot ROM decides which image to boot first based on the image
# version. It boots the one with the newer image version first, and in case of a failure, it boots the older one.
imageVersion: 0
Mbi_PlainXipRtxxx
family(string): MCU family name. Must be one of:["lpc55s0x", "lpc55s1x", "rt5xx", "rt6xx"].outputImageExecutionTarget(string): Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence. Must be one of:["xip", "load-to-ram", "Internal flash (XIP)", "External flash (XIP)", "Internal Flash (XIP)", "External Flash (XIP)", "RAM", "ram"].outputImageAuthenticationType(string): Specification of final master boot image authentication. Must be one of:["plain", "crc", "signed", "signed-encrypted", "signed-nxp", "Plain", "CRC", "Signed", "Encrypted + Signed", "NXP Signed", "NXP signed", "encrypted"].masterBootOutputFile(string): The file for Master Boot Image result file.inputImageFile(string): The input application image to by modified to Master Boot Image.enableTrustZone(boolean): If not specified, the Trust zone is disabled.trustZonePresetFile(string): If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.enableHwUserModeKeys([‘boolean’, ‘string’]): Controlling secure hardware key bus. If enabled(1), then it is possible to access keys on hardware secure bus from non-secure application, else non-secure application will read zeros.
# ========================================= YAML template Mbi_PlainXipRtxxx ==========================================
# ======================================================================================================================
# == Mbi_PlainXipRtxxx ==
# ======================================================================================================================
# ------------------------------------------===== MCU family [Required] =====-------------------------------------------
# Description: MCU family name.
# Possible options: <lpc55s0x, lpc55s1x, rt5xx, rt6xx>
family: CHOOSE_FROM_TABLE
# --------------------------------------===== Application target [Required] =====---------------------------------------
# Description: Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence.
# Possible options: <xip, load-to-ram, Internal flash (XIP), External flash (XIP), Internal Flash (XIP), External Flash
# (XIP), RAM, ram>
outputImageExecutionTarget: CHOOSE_FROM_TABLE
# -------------------------------===== Type of boot image authentication [Required] =====-------------------------------
# Description: Specification of final master boot image authentication.
# Possible options: <plain, crc, signed, signed-encrypted, signed-nxp, Plain, CRC, Signed, Encrypted + Signed, NXP
# Signed, NXP signed, encrypted>
outputImageAuthenticationType: CHOOSE_FROM_TABLE
# ------------------------------------===== Master Boot Image name [Required] =====-------------------------------------
# Description: The file for Master Boot Image result file.
masterBootOutputFile: my_mbi.bin
# ------------------------------------===== Plain application image [Required] =====------------------------------------
# Description: The input application image to by modified to Master Boot Image.
inputImageFile: my_application.bin
# ------------------------------------===== TrustZone enable option [Optional] =====------------------------------------
# Description: If not specified, the Trust zone is disabled.
enableTrustZone: false
# ---------------------------------===== TrustZone Customization file [Optional] =====----------------------------------
# Description: If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.
trustZonePresetFile: my_tz_custom.yaml
# ----------------------------------===== Enable User HW key sharing [Required] =====-----------------------------------
# Description: Controlling secure hardware key bus. If enabled(1), then it is possible to access keys on hardware secure
# bus from non-secure application, else non-secure application will read zeros.
enableHwUserModeKeys: false
Mbi_PlainXipSignedKw45xx
family(string): MCU family name. Must be one of:["k32w1xx", "kw45xx"].outputImageExecutionTarget(string): Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence. Must be one of:["xip", "load-to-ram", "Internal flash (XIP)", "External flash (XIP)", "Internal Flash (XIP)", "External Flash (XIP)", "RAM", "ram"].outputImageAuthenticationType(string): Specification of final master boot image authentication. Must be one of:["plain", "crc", "signed", "signed-encrypted", "signed-nxp", "Plain", "CRC", "Signed", "Encrypted + Signed", "NXP Signed", "NXP signed", "encrypted"].masterBootOutputFile(string): The file for Master Boot Image result file.inputImageFile(string): The input application image to by modified to Master Boot Image.outputImageExecutionAddress([‘number’, ‘string’]): Application loading address in RAM if not XiP, otherwise address of load in XiP.certBlock(string): Path to certificate block binary or config file.mainRootCertPrivateKeyFile(string): Main Certificate private key used to sign certificate. It can be replaced by signProvider key.signPrivateKey(string): Main Certificate private key used to sign certificate. It can be replaced by signProvider key.signProvider(string): Signature provider configuration in format ‘type=<sp_type>;= ; = ”. enableTrustZone(boolean): If not specified, the Trust zone is disabled.trustZonePresetFile(string): If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.firmwareVersion([‘number’, ‘string’]): Value compared with Secure_FW_Version monotonic counter value stored in PFR/IFR. If value is lower than value in PFR/IFR, then is image rejected (rollback protection)..manifestDigestHashAlgorithm(string): Optional Manifest signing hash algorithm name to create Certificate v3.1 Manifest. Must be one of:["sha256", "sha384", "sha521"].noSignature(boolean): When is set, the signature is not included. The signature could be later added by HSM.
# ====================================== YAML template Mbi_PlainXipSignedKw45xx ======================================
# ======================================================================================================================
# == Mbi_PlainXipSignedKw45xx ==
# ======================================================================================================================
# ------------------------------------------===== MCU family [Required] =====-------------------------------------------
# Description: MCU family name.
# Possible options: <k32w1xx, kw45xx>
family: CHOOSE_FROM_TABLE
# --------------------------------------===== Application target [Required] =====---------------------------------------
# Description: Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence.
# Possible options: <xip, load-to-ram, Internal flash (XIP), External flash (XIP), Internal Flash (XIP), External Flash
# (XIP), RAM, ram>
outputImageExecutionTarget: CHOOSE_FROM_TABLE
# -------------------------------===== Type of boot image authentication [Required] =====-------------------------------
# Description: Specification of final master boot image authentication.
# Possible options: <plain, crc, signed, signed-encrypted, signed-nxp, Plain, CRC, Signed, Encrypted + Signed, NXP
# Signed, NXP signed, encrypted>
outputImageAuthenticationType: CHOOSE_FROM_TABLE
# ------------------------------------===== Master Boot Image name [Required] =====-------------------------------------
# Description: The file for Master Boot Image result file.
masterBootOutputFile: my_mbi.bin
# ------------------------------------===== Plain application image [Required] =====------------------------------------
# Description: The input application image to by modified to Master Boot Image.
inputImageFile: my_application.bin
# --------------------------------===== Loading address of application [Required] =====---------------------------------
# Description: Application loading address in RAM if not XiP, otherwise address of load in XiP.
outputImageExecutionAddress: 0
# -----------------------------===== Certificate Block binary/config file [Required] =====------------------------------
# Description: Path to certificate block binary or config file.
certBlock: cert_block.yaml
# --------------------------===== Main Certificate private key [Conditionally required] =====---------------------------
# Description: Main Certificate private key used to sign certificate. It can be replaced by signProvider key.
signPrivateKey: main_prv_key.pem
# -------------------------------===== Signature Provider [Conditionally required] =====--------------------------------
# Description: Signature provider configuration in format 'type=<sp_type>;<key1>=<value1>;<key2>=<value2>".
signProvider: type=file;file_path=my_prv_key.pem
# ------------------------------------===== TrustZone enable option [Optional] =====------------------------------------
# Description: If not specified, the Trust zone is disabled.
enableTrustZone: false
# ---------------------------------===== TrustZone Customization file [Optional] =====----------------------------------
# Description: If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.
trustZonePresetFile: my_tz_custom.yaml
# ---------------------------------------===== Firmware version. [Optional] =====---------------------------------------
# Description: Value compared with Secure_FW_Version monotonic counter value stored in PFR/IFR. If value is lower than
# value in PFR/IFR, then is image rejected (rollback protection)..
firmwareVersion: 0
# --------------------------------===== Manifest signing hash algorithm [Optional] =====--------------------------------
# Description: Optional Manifest signing hash algorithm name to create Certificate v3.1 Manifest.
# Possible options: <sha256, sha384, sha521>
manifestDigestHashAlgorithm: sha256
# -----------------------------------------===== No Signature [Optional] =====------------------------------------------
# Description: When is set, the signature is not included. The signature could be later added by HSM.
noSignature: false
Mbi_PlainXipSignedLpc55s3x
family(string): MCU family name. Must be one of:["lpc55s3x"].outputImageExecutionTarget(string): Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence. Must be one of:["xip", "load-to-ram", "Internal flash (XIP)", "External flash (XIP)", "Internal Flash (XIP)", "External Flash (XIP)", "RAM", "ram"].outputImageAuthenticationType(string): Specification of final master boot image authentication. Must be one of:["plain", "crc", "signed", "signed-encrypted", "signed-nxp", "Plain", "CRC", "Signed", "Encrypted + Signed", "NXP Signed", "NXP signed", "encrypted"].masterBootOutputFile(string): The file for Master Boot Image result file.inputImageFile(string): The input application image to by modified to Master Boot Image.imageVersion([‘number’, ‘string’]): Image version is used for dual boot. The boot ROM decides which image to boot first based on the image version. It boots the one with the newer image version first, and in case of a failure, it boots the older one.certBlock(string): Path to certificate block binary or config file.mainRootCertPrivateKeyFile(string): Main Certificate private key used to sign certificate. It can be replaced by signProvider key.signPrivateKey(string): Main Certificate private key used to sign certificate. It can be replaced by signProvider key.signProvider(string): Signature provider configuration in format ‘type=<sp_type>;= ; = ”. enableTrustZone(boolean): If not specified, the Trust zone is disabled.trustZonePresetFile(string): If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.firmwareVersion([‘number’, ‘string’]): Value compared with Secure_FW_Version monotonic counter value stored in PFR/IFR. If value is lower than value in PFR/IFR, then is image rejected (rollback protection)..outputImageExecutionAddress([‘number’, ‘string’]): Application loading address in RAM if not XiP, otherwise address of load in XiP.
# ===================================== YAML template Mbi_PlainXipSignedLpc55s3x =====================================
# ======================================================================================================================
# == Mbi_PlainXipSignedLpc55s3x ==
# ======================================================================================================================
# ------------------------------------------===== MCU family [Required] =====-------------------------------------------
# Description: MCU family name.
# Possible options: <lpc55s3x>
family: CHOOSE_FROM_TABLE
# --------------------------------------===== Application target [Required] =====---------------------------------------
# Description: Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence.
# Possible options: <xip, load-to-ram, Internal flash (XIP), External flash (XIP), Internal Flash (XIP), External Flash
# (XIP), RAM, ram>
outputImageExecutionTarget: CHOOSE_FROM_TABLE
# -------------------------------===== Type of boot image authentication [Required] =====-------------------------------
# Description: Specification of final master boot image authentication.
# Possible options: <plain, crc, signed, signed-encrypted, signed-nxp, Plain, CRC, Signed, Encrypted + Signed, NXP
# Signed, NXP signed, encrypted>
outputImageAuthenticationType: CHOOSE_FROM_TABLE
# ------------------------------------===== Master Boot Image name [Required] =====-------------------------------------
# Description: The file for Master Boot Image result file.
masterBootOutputFile: my_mbi.bin
# ------------------------------------===== Plain application image [Required] =====------------------------------------
# Description: The input application image to by modified to Master Boot Image.
inputImageFile: my_application.bin
# ----------------------------------------===== Image version. [Optional] =====-----------------------------------------
# Description: Image version is used for dual boot. The boot ROM decides which image to boot first based on the image
# version. It boots the one with the newer image version first, and in case of a failure, it boots the older one.
imageVersion: 0
# -----------------------------===== Certificate Block binary/config file [Required] =====------------------------------
# Description: Path to certificate block binary or config file.
certBlock: cert_block.yaml
# --------------------------===== Main Certificate private key [Conditionally required] =====---------------------------
# Description: Main Certificate private key used to sign certificate. It can be replaced by signProvider key.
signPrivateKey: main_prv_key.pem
# -------------------------------===== Signature Provider [Conditionally required] =====--------------------------------
# Description: Signature provider configuration in format 'type=<sp_type>;<key1>=<value1>;<key2>=<value2>".
signProvider: type=file;file_path=my_prv_key.pem
# ------------------------------------===== TrustZone enable option [Optional] =====------------------------------------
# Description: If not specified, the Trust zone is disabled.
enableTrustZone: false
# ---------------------------------===== TrustZone Customization file [Optional] =====----------------------------------
# Description: If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.
trustZonePresetFile: my_tz_custom.yaml
# ---------------------------------------===== Firmware version. [Optional] =====---------------------------------------
# Description: Value compared with Secure_FW_Version monotonic counter value stored in PFR/IFR. If value is lower than
# value in PFR/IFR, then is image rejected (rollback protection)..
firmwareVersion: 0
# --------------------------------===== Loading address of application [Required] =====---------------------------------
# Description: Application loading address in RAM if not XiP, otherwise address of load in XiP.
outputImageExecutionAddress: 0
Mbi_PlainXipSignedNxpKw45xx
family(string): MCU family name. Must be one of:["k32w1xx", "kw45xx"].outputImageExecutionTarget(string): Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence. Must be one of:["xip", "load-to-ram", "Internal flash (XIP)", "External flash (XIP)", "Internal Flash (XIP)", "External Flash (XIP)", "RAM", "ram"].outputImageAuthenticationType(string): Specification of final master boot image authentication. Must be one of:["plain", "crc", "signed", "signed-encrypted", "signed-nxp", "Plain", "CRC", "Signed", "Encrypted + Signed", "NXP Signed", "NXP signed", "encrypted"].masterBootOutputFile(string): The file for Master Boot Image result file.inputImageFile(string): The input application image to by modified to Master Boot Image.outputImageExecutionAddress([‘number’, ‘string’]): Application loading address in RAM if not XiP, otherwise address of load in XiP.certBlock(string): Path to certificate block binary or config file.mainRootCertPrivateKeyFile(string): Main Certificate private key used to sign certificate. It can be replaced by signProvider key.signPrivateKey(string): Main Certificate private key used to sign certificate. It can be replaced by signProvider key.signProvider(string): Signature provider configuration in format ‘type=<sp_type>;= ; = ”. enableTrustZone(boolean): If not specified, the Trust zone is disabled.trustZonePresetFile(string): If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.firmwareVersion([‘number’, ‘string’]): Value compared with Secure_FW_Version monotonic counter value stored in PFR/IFR. If value is lower than value in PFR/IFR, then is image rejected (rollback protection)..manifestDigestHashAlgorithm(string): Optional Manifest signing hash algorithm name to create Certificate v3.1 Manifest. Must be one of:["sha256", "sha384", "sha521"].outputImageSubtype(string): Image subtype determine the image use in MCU. “main” for main application, “nbu” for Narrow Band Unit image and “recovery” for recovery image type. Must be one of:["main", "nbu", "recovery"].noSignature(boolean): When is set, the signature is not included. The signature could be later added by HSM.
# ==================================== YAML template Mbi_PlainXipSignedNxpKw45xx =====================================
# ======================================================================================================================
# == Mbi_PlainXipSignedNxpKw45xx ==
# ======================================================================================================================
# ------------------------------------------===== MCU family [Required] =====-------------------------------------------
# Description: MCU family name.
# Possible options: <k32w1xx, kw45xx>
family: CHOOSE_FROM_TABLE
# --------------------------------------===== Application target [Required] =====---------------------------------------
# Description: Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence.
# Possible options: <xip, load-to-ram, Internal flash (XIP), External flash (XIP), Internal Flash (XIP), External Flash
# (XIP), RAM, ram>
outputImageExecutionTarget: CHOOSE_FROM_TABLE
# -------------------------------===== Type of boot image authentication [Required] =====-------------------------------
# Description: Specification of final master boot image authentication.
# Possible options: <plain, crc, signed, signed-encrypted, signed-nxp, Plain, CRC, Signed, Encrypted + Signed, NXP
# Signed, NXP signed, encrypted>
outputImageAuthenticationType: CHOOSE_FROM_TABLE
# ------------------------------------===== Master Boot Image name [Required] =====-------------------------------------
# Description: The file for Master Boot Image result file.
masterBootOutputFile: my_mbi.bin
# ------------------------------------===== Plain application image [Required] =====------------------------------------
# Description: The input application image to by modified to Master Boot Image.
inputImageFile: my_application.bin
# --------------------------------===== Loading address of application [Required] =====---------------------------------
# Description: Application loading address in RAM if not XiP, otherwise address of load in XiP.
outputImageExecutionAddress: 0
# -----------------------------===== Certificate Block binary/config file [Required] =====------------------------------
# Description: Path to certificate block binary or config file.
certBlock: cert_block.yaml
# --------------------------===== Main Certificate private key [Conditionally required] =====---------------------------
# Description: Main Certificate private key used to sign certificate. It can be replaced by signProvider key.
signPrivateKey: main_prv_key.pem
# -------------------------------===== Signature Provider [Conditionally required] =====--------------------------------
# Description: Signature provider configuration in format 'type=<sp_type>;<key1>=<value1>;<key2>=<value2>".
signProvider: type=file;file_path=my_prv_key.pem
# ------------------------------------===== TrustZone enable option [Optional] =====------------------------------------
# Description: If not specified, the Trust zone is disabled.
enableTrustZone: false
# ---------------------------------===== TrustZone Customization file [Optional] =====----------------------------------
# Description: If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.
trustZonePresetFile: my_tz_custom.yaml
# ---------------------------------------===== Firmware version. [Optional] =====---------------------------------------
# Description: Value compared with Secure_FW_Version monotonic counter value stored in PFR/IFR. If value is lower than
# value in PFR/IFR, then is image rejected (rollback protection)..
firmwareVersion: 0
# --------------------------------===== Manifest signing hash algorithm [Optional] =====--------------------------------
# Description: Optional Manifest signing hash algorithm name to create Certificate v3.1 Manifest.
# Possible options: <sha256, sha384, sha521>
manifestDigestHashAlgorithm: sha256
# -----------------------------------------===== Image SubType [Optional] =====-----------------------------------------
# Description: Image subtype determine the image use in MCU. "main" for main application, "nbu" for Narrow Band Unit
# image and "recovery" for recovery image type
# Possible options: <main, nbu, recovery>
outputImageSubtype: main
# -----------------------------------------===== No Signature [Optional] =====------------------------------------------
# Description: When is set, the signature is not included. The signature could be later added by HSM.
noSignature: false
Mbi_SignedRam
family(string): MCU family name. Must be one of:["lpc55s0x", "lpc55s1x", "lpc55s2x", "lpc55s6x", "nhs52sxx"].outputImageExecutionTarget(string): Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence. Must be one of:["xip", "load-to-ram", "Internal flash (XIP)", "External flash (XIP)", "Internal Flash (XIP)", "External Flash (XIP)", "RAM", "ram"].outputImageAuthenticationType(string): Specification of final master boot image authentication. Must be one of:["plain", "crc", "signed", "signed-encrypted", "signed-nxp", "Plain", "CRC", "Signed", "Encrypted + Signed", "NXP Signed", "NXP signed", "encrypted"].masterBootOutputFile(string): The file for Master Boot Image result file.inputImageFile(string): The input application image to by modified to Master Boot Image.enableTrustZone(boolean): If not specified, the Trust zone is disabled.trustZonePresetFile(string): If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.outputImageExecutionAddress([‘number’, ‘string’]): Application loading address in RAM if not XiP, otherwise address of load in XiP.certBlock(string): Path to certificate block binary or config file.mainRootCertPrivateKeyFile(string): Main Certificate private key used to sign certificate. It can be replaced by signProvider key.signPrivateKey(string): Main Certificate private key used to sign certificate. It can be replaced by signProvider key.signProvider(string): Signature provider configuration in format ‘type=<sp_type>;= ; = ”.
# =========================================== YAML template Mbi_SignedRam ============================================
# ======================================================================================================================
# == Mbi_SignedRam ==
# ======================================================================================================================
# ------------------------------------------===== MCU family [Required] =====-------------------------------------------
# Description: MCU family name.
# Possible options: <lpc55s0x, lpc55s1x, lpc55s2x, lpc55s6x, nhs52sxx>
family: CHOOSE_FROM_TABLE
# --------------------------------------===== Application target [Required] =====---------------------------------------
# Description: Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence.
# Possible options: <xip, load-to-ram, Internal flash (XIP), External flash (XIP), Internal Flash (XIP), External Flash
# (XIP), RAM, ram>
outputImageExecutionTarget: CHOOSE_FROM_TABLE
# -------------------------------===== Type of boot image authentication [Required] =====-------------------------------
# Description: Specification of final master boot image authentication.
# Possible options: <plain, crc, signed, signed-encrypted, signed-nxp, Plain, CRC, Signed, Encrypted + Signed, NXP
# Signed, NXP signed, encrypted>
outputImageAuthenticationType: CHOOSE_FROM_TABLE
# ------------------------------------===== Master Boot Image name [Required] =====-------------------------------------
# Description: The file for Master Boot Image result file.
masterBootOutputFile: my_mbi.bin
# ------------------------------------===== Plain application image [Required] =====------------------------------------
# Description: The input application image to by modified to Master Boot Image.
inputImageFile: my_application.bin
# ------------------------------------===== TrustZone enable option [Optional] =====------------------------------------
# Description: If not specified, the Trust zone is disabled.
enableTrustZone: false
# ---------------------------------===== TrustZone Customization file [Optional] =====----------------------------------
# Description: If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.
trustZonePresetFile: my_tz_custom.yaml
# --------------------------------===== Loading address of application [Required] =====---------------------------------
# Description: Application loading address in RAM if not XiP, otherwise address of load in XiP.
outputImageExecutionAddress: 0
# -----------------------------===== Certificate Block binary/config file [Required] =====------------------------------
# Description: Path to certificate block binary or config file.
certBlock: cert_block.yaml
# --------------------------===== Main Certificate private key [Conditionally required] =====---------------------------
# Description: Main Certificate private key used to sign certificate. It can be replaced by signProvider key.
signPrivateKey: main_prv_key.pem
# -------------------------------===== Signature Provider [Conditionally required] =====--------------------------------
# Description: Signature provider configuration in format 'type=<sp_type>;<key1>=<value1>;<key2>=<value2>".
signProvider: type=file;file_path=my_prv_key.pem
Mbi_SignedRamMcxNx
family(string): MCU family name. Must be one of:["mcxn9xx"].outputImageExecutionTarget(string): Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence. Must be one of:["xip", "load-to-ram", "Internal flash (XIP)", "External flash (XIP)", "Internal Flash (XIP)", "External Flash (XIP)", "RAM", "ram"].outputImageAuthenticationType(string): Specification of final master boot image authentication. Must be one of:["plain", "crc", "signed", "signed-encrypted", "signed-nxp", "Plain", "CRC", "Signed", "Encrypted + Signed", "NXP Signed", "NXP signed", "encrypted"].masterBootOutputFile(string): The file for Master Boot Image result file.inputImageFile(string): The input application image to by modified to Master Boot Image.certBlock(string): Path to certificate block binary or config file.mainRootCertPrivateKeyFile(string): Main Certificate private key used to sign certificate. It can be replaced by signProvider key.signPrivateKey(string): Main Certificate private key used to sign certificate. It can be replaced by signProvider key.signProvider(string): Signature provider configuration in format ‘type=<sp_type>;= ; = ”. enableTrustZone(boolean): If not specified, the Trust zone is disabled.trustZonePresetFile(string): If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.firmwareVersion([‘number’, ‘string’]): Value compared with Secure_FW_Version monotonic counter value stored in PFR/IFR. If value is lower than value in PFR/IFR, then is image rejected (rollback protection)..outputImageSubtype(string): Image subtype determine the image use in MCU. “main” for main application, “nbu” for Narrow Band Unit image and “recovery” for recovery image type. Must be one of:["main", "nbu", "recovery"].outputImageExecutionAddress([‘number’, ‘string’]): Application loading address in RAM if not XiP, otherwise address of load in XiP.imageVersion([‘number’, ‘string’]): Image version is used for dual boot. The boot ROM decides which image to boot first based on the image version. It boots the one with the newer image version first, and in case of a failure, it boots the older one.
# ========================================= YAML template Mbi_SignedRamMcxNx =========================================
# ======================================================================================================================
# == Mbi_SignedRamMcxNx ==
# ======================================================================================================================
# ------------------------------------------===== MCU family [Required] =====-------------------------------------------
# Description: MCU family name.
# Possible options: <mcxn9xx>
family: CHOOSE_FROM_TABLE
# --------------------------------------===== Application target [Required] =====---------------------------------------
# Description: Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence.
# Possible options: <xip, load-to-ram, Internal flash (XIP), External flash (XIP), Internal Flash (XIP), External Flash
# (XIP), RAM, ram>
outputImageExecutionTarget: CHOOSE_FROM_TABLE
# -------------------------------===== Type of boot image authentication [Required] =====-------------------------------
# Description: Specification of final master boot image authentication.
# Possible options: <plain, crc, signed, signed-encrypted, signed-nxp, Plain, CRC, Signed, Encrypted + Signed, NXP
# Signed, NXP signed, encrypted>
outputImageAuthenticationType: CHOOSE_FROM_TABLE
# ------------------------------------===== Master Boot Image name [Required] =====-------------------------------------
# Description: The file for Master Boot Image result file.
masterBootOutputFile: my_mbi.bin
# ------------------------------------===== Plain application image [Required] =====------------------------------------
# Description: The input application image to by modified to Master Boot Image.
inputImageFile: my_application.bin
# -----------------------------===== Certificate Block binary/config file [Required] =====------------------------------
# Description: Path to certificate block binary or config file.
certBlock: cert_block.yaml
# --------------------------===== Main Certificate private key [Conditionally required] =====---------------------------
# Description: Main Certificate private key used to sign certificate. It can be replaced by signProvider key.
signPrivateKey: main_prv_key.pem
# -------------------------------===== Signature Provider [Conditionally required] =====--------------------------------
# Description: Signature provider configuration in format 'type=<sp_type>;<key1>=<value1>;<key2>=<value2>".
signProvider: type=file;file_path=my_prv_key.pem
# ------------------------------------===== TrustZone enable option [Optional] =====------------------------------------
# Description: If not specified, the Trust zone is disabled.
enableTrustZone: false
# ---------------------------------===== TrustZone Customization file [Optional] =====----------------------------------
# Description: If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.
trustZonePresetFile: my_tz_custom.yaml
# ---------------------------------------===== Firmware version. [Optional] =====---------------------------------------
# Description: Value compared with Secure_FW_Version monotonic counter value stored in PFR/IFR. If value is lower than
# value in PFR/IFR, then is image rejected (rollback protection)..
firmwareVersion: 0
# -----------------------------------------===== Image SubType [Optional] =====-----------------------------------------
# Description: Image subtype determine the image use in MCU. "main" for main application, "nbu" for Narrow Band Unit
# image and "recovery" for recovery image type
# Possible options: <main, nbu, recovery>
outputImageSubtype: main
# --------------------------------===== Loading address of application [Required] =====---------------------------------
# Description: Application loading address in RAM if not XiP, otherwise address of load in XiP.
outputImageExecutionAddress: 0
# ----------------------------------------===== Image version. [Optional] =====-----------------------------------------
# Description: Image version is used for dual boot. The boot ROM decides which image to boot first based on the image
# version. It boots the one with the newer image version first, and in case of a failure, it boots the older one.
imageVersion: 0
Mbi_SignedVx
family(string): MCU family name. Must be one of:["mc56f81xxx", "mwct20d2x"].outputImageExecutionTarget(string): Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence. Must be one of:["xip", "load-to-ram", "Internal flash (XIP)", "External flash (XIP)", "Internal Flash (XIP)", "External Flash (XIP)", "RAM", "ram"].outputImageAuthenticationType(string): Specification of final master boot image authentication. Must be one of:["plain", "crc", "signed", "signed-encrypted", "signed-nxp", "Plain", "CRC", "Signed", "Encrypted + Signed", "NXP Signed", "NXP signed", "encrypted"].masterBootOutputFile(string): The file for Master Boot Image result file.inputImageFile(string): The input application image to by modified to Master Boot Image.firmwareVersion([‘number’, ‘string’]): Value compared with Secure_FW_Version monotonic counter value stored in PFR/IFR. If value is lower than value in PFR/IFR, then is image rejected (rollback protection)..certBlock(string): Path to certificate block.addCertHash(boolean): Not mandatory if the hash is written in OTP.mainRootCertPrivateKeyFile(string): Main Certificate private key used to sign certificate. It can be replaced by signProvider key.signPrivateKey(string): Main Certificate private key used to sign certificate. It can be replaced by signProvider key.signProvider(string): Signature provider configuration in format ‘type=<sp_type>;= ; = ”.
# ============================================ YAML template Mbi_SignedVx ============================================
# ======================================================================================================================
# == Mbi_SignedVx ==
# ======================================================================================================================
# ------------------------------------------===== MCU family [Required] =====-------------------------------------------
# Description: MCU family name.
# Possible options: <mc56f81xxx, mwct20d2x>
family: CHOOSE_FROM_TABLE
# --------------------------------------===== Application target [Required] =====---------------------------------------
# Description: Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence.
# Possible options: <xip, load-to-ram, Internal flash (XIP), External flash (XIP), Internal Flash (XIP), External Flash
# (XIP), RAM, ram>
outputImageExecutionTarget: CHOOSE_FROM_TABLE
# -------------------------------===== Type of boot image authentication [Required] =====-------------------------------
# Description: Specification of final master boot image authentication.
# Possible options: <plain, crc, signed, signed-encrypted, signed-nxp, Plain, CRC, Signed, Encrypted + Signed, NXP
# Signed, NXP signed, encrypted>
outputImageAuthenticationType: CHOOSE_FROM_TABLE
# ------------------------------------===== Master Boot Image name [Required] =====-------------------------------------
# Description: The file for Master Boot Image result file.
masterBootOutputFile: my_mbi.bin
# ------------------------------------===== Plain application image [Required] =====------------------------------------
# Description: The input application image to by modified to Master Boot Image.
inputImageFile: my_application.bin
# ---------------------------------------===== Firmware version. [Optional] =====---------------------------------------
# Description: Value compared with Secure_FW_Version monotonic counter value stored in PFR/IFR. If value is lower than
# value in PFR/IFR, then is image rejected (rollback protection)..
firmwareVersion: 0
# ---------------------------------===== Certificate Block binary file [Required] =====---------------------------------
# Description: Path to certificate block.
certBlock: cert_block.bin
# --------------===== True to append SHA256 hash [0:127] at the end of certificate block [Optional] =====---------------
# Description: Not mandatory if the hash is written in OTP
addCertHash: true
# --------------------------===== Main Certificate private key [Conditionally required] =====---------------------------
# Description: Main Certificate private key used to sign certificate. It can be replaced by signProvider key.
signPrivateKey: main_prv_key.pem
# -------------------------------===== Signature Provider [Conditionally required] =====--------------------------------
# Description: Signature provider configuration in format 'type=<sp_type>;<key1>=<value1>;<key2>=<value2>".
signProvider: type=file;file_path=my_prv_key.pem
Mbi_SignedXip
family(string): MCU family name. Must be one of:["lpc55s2x", "lpc55s6x", "nhs52sxx"].outputImageExecutionTarget(string): Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence. Must be one of:["xip", "load-to-ram", "Internal flash (XIP)", "External flash (XIP)", "Internal Flash (XIP)", "External Flash (XIP)", "RAM", "ram"].outputImageAuthenticationType(string): Specification of final master boot image authentication. Must be one of:["plain", "crc", "signed", "signed-encrypted", "signed-nxp", "Plain", "CRC", "Signed", "Encrypted + Signed", "NXP Signed", "NXP signed", "encrypted"].masterBootOutputFile(string): The file for Master Boot Image result file.inputImageFile(string): The input application image to by modified to Master Boot Image.enableTrustZone(boolean): If not specified, the Trust zone is disabled.trustZonePresetFile(string): If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.certBlock(string): Path to certificate block binary or config file.mainRootCertPrivateKeyFile(string): Main Certificate private key used to sign certificate. It can be replaced by signProvider key.signPrivateKey(string): Main Certificate private key used to sign certificate. It can be replaced by signProvider key.signProvider(string): Signature provider configuration in format ‘type=<sp_type>;= ; = ”.
# =========================================== YAML template Mbi_SignedXip ============================================
# ======================================================================================================================
# == Mbi_SignedXip ==
# ======================================================================================================================
# ------------------------------------------===== MCU family [Required] =====-------------------------------------------
# Description: MCU family name.
# Possible options: <lpc55s2x, lpc55s6x, nhs52sxx>
family: CHOOSE_FROM_TABLE
# --------------------------------------===== Application target [Required] =====---------------------------------------
# Description: Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence.
# Possible options: <xip, load-to-ram, Internal flash (XIP), External flash (XIP), Internal Flash (XIP), External Flash
# (XIP), RAM, ram>
outputImageExecutionTarget: CHOOSE_FROM_TABLE
# -------------------------------===== Type of boot image authentication [Required] =====-------------------------------
# Description: Specification of final master boot image authentication.
# Possible options: <plain, crc, signed, signed-encrypted, signed-nxp, Plain, CRC, Signed, Encrypted + Signed, NXP
# Signed, NXP signed, encrypted>
outputImageAuthenticationType: CHOOSE_FROM_TABLE
# ------------------------------------===== Master Boot Image name [Required] =====-------------------------------------
# Description: The file for Master Boot Image result file.
masterBootOutputFile: my_mbi.bin
# ------------------------------------===== Plain application image [Required] =====------------------------------------
# Description: The input application image to by modified to Master Boot Image.
inputImageFile: my_application.bin
# ------------------------------------===== TrustZone enable option [Optional] =====------------------------------------
# Description: If not specified, the Trust zone is disabled.
enableTrustZone: false
# ---------------------------------===== TrustZone Customization file [Optional] =====----------------------------------
# Description: If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.
trustZonePresetFile: my_tz_custom.yaml
# -----------------------------===== Certificate Block binary/config file [Required] =====------------------------------
# Description: Path to certificate block binary or config file.
certBlock: cert_block.yaml
# --------------------------===== Main Certificate private key [Conditionally required] =====---------------------------
# Description: Main Certificate private key used to sign certificate. It can be replaced by signProvider key.
signPrivateKey: main_prv_key.pem
# -------------------------------===== Signature Provider [Conditionally required] =====--------------------------------
# Description: Signature provider configuration in format 'type=<sp_type>;<key1>=<value1>;<key2>=<value2>".
signProvider: type=file;file_path=my_prv_key.pem
Mbi_SignedXipMcxNx
family(string): MCU family name. Must be one of:["mcxn9xx"].outputImageExecutionTarget(string): Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence. Must be one of:["xip", "load-to-ram", "Internal flash (XIP)", "External flash (XIP)", "Internal Flash (XIP)", "External Flash (XIP)", "RAM", "ram"].outputImageAuthenticationType(string): Specification of final master boot image authentication. Must be one of:["plain", "crc", "signed", "signed-encrypted", "signed-nxp", "Plain", "CRC", "Signed", "Encrypted + Signed", "NXP Signed", "NXP signed", "encrypted"].masterBootOutputFile(string): The file for Master Boot Image result file.inputImageFile(string): The input application image to by modified to Master Boot Image.outputImageExecutionAddress([‘number’, ‘string’]): Application loading address in RAM if not XiP, otherwise address of load in XiP.certBlock(string): Path to certificate block binary or config file.mainRootCertPrivateKeyFile(string): Main Certificate private key used to sign certificate. It can be replaced by signProvider key.signPrivateKey(string): Main Certificate private key used to sign certificate. It can be replaced by signProvider key.signProvider(string): Signature provider configuration in format ‘type=<sp_type>;= ; = ”. enableTrustZone(boolean): If not specified, the Trust zone is disabled.trustZonePresetFile(string): If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.firmwareVersion([‘number’, ‘string’]): Value compared with Secure_FW_Version monotonic counter value stored in PFR/IFR. If value is lower than value in PFR/IFR, then is image rejected (rollback protection)..outputImageSubtype(string): Image subtype determine the image use in MCU. “main” for main application, “nbu” for Narrow Band Unit image and “recovery” for recovery image type. Must be one of:["main", "nbu", "recovery"].imageVersion([‘number’, ‘string’]): Image version is used for dual boot. The boot ROM decides which image to boot first based on the image version. It boots the one with the newer image version first, and in case of a failure, it boots the older one.
# ========================================= YAML template Mbi_SignedXipMcxNx =========================================
# ======================================================================================================================
# == Mbi_SignedXipMcxNx ==
# ======================================================================================================================
# ------------------------------------------===== MCU family [Required] =====-------------------------------------------
# Description: MCU family name.
# Possible options: <mcxn9xx>
family: CHOOSE_FROM_TABLE
# --------------------------------------===== Application target [Required] =====---------------------------------------
# Description: Definition if application is Execute in Place(XiP) or loaded to RAM during reset sequence.
# Possible options: <xip, load-to-ram, Internal flash (XIP), External flash (XIP), Internal Flash (XIP), External Flash
# (XIP), RAM, ram>
outputImageExecutionTarget: CHOOSE_FROM_TABLE
# -------------------------------===== Type of boot image authentication [Required] =====-------------------------------
# Description: Specification of final master boot image authentication.
# Possible options: <plain, crc, signed, signed-encrypted, signed-nxp, Plain, CRC, Signed, Encrypted + Signed, NXP
# Signed, NXP signed, encrypted>
outputImageAuthenticationType: CHOOSE_FROM_TABLE
# ------------------------------------===== Master Boot Image name [Required] =====-------------------------------------
# Description: The file for Master Boot Image result file.
masterBootOutputFile: my_mbi.bin
# ------------------------------------===== Plain application image [Required] =====------------------------------------
# Description: The input application image to by modified to Master Boot Image.
inputImageFile: my_application.bin
# --------------------------------===== Loading address of application [Required] =====---------------------------------
# Description: Application loading address in RAM if not XiP, otherwise address of load in XiP.
outputImageExecutionAddress: 0
# -----------------------------===== Certificate Block binary/config file [Required] =====------------------------------
# Description: Path to certificate block binary or config file.
certBlock: cert_block.yaml
# --------------------------===== Main Certificate private key [Conditionally required] =====---------------------------
# Description: Main Certificate private key used to sign certificate. It can be replaced by signProvider key.
signPrivateKey: main_prv_key.pem
# -------------------------------===== Signature Provider [Conditionally required] =====--------------------------------
# Description: Signature provider configuration in format 'type=<sp_type>;<key1>=<value1>;<key2>=<value2>".
signProvider: type=file;file_path=my_prv_key.pem
# ------------------------------------===== TrustZone enable option [Optional] =====------------------------------------
# Description: If not specified, the Trust zone is disabled.
enableTrustZone: false
# ---------------------------------===== TrustZone Customization file [Optional] =====----------------------------------
# Description: If not specified, but TrustZone is enabled(enableTrustZone) the default values are used.
trustZonePresetFile: my_tz_custom.yaml
# ---------------------------------------===== Firmware version. [Optional] =====---------------------------------------
# Description: Value compared with Secure_FW_Version monotonic counter value stored in PFR/IFR. If value is lower than
# value in PFR/IFR, then is image rejected (rollback protection)..
firmwareVersion: 0
# -----------------------------------------===== Image SubType [Optional] =====-----------------------------------------
# Description: Image subtype determine the image use in MCU. "main" for main application, "nbu" for Narrow Band Unit
# image and "recovery" for recovery image type
# Possible options: <main, nbu, recovery>
outputImageSubtype: main
# ----------------------------------------===== Image version. [Optional] =====-----------------------------------------
# Description: Image version is used for dual boot. The boot ROM decides which image to boot first based on the image
# version. It boots the one with the newer image version first, and in case of a failure, it boots the older one.
imageVersion: 0