i.MX93 Field Return Lifecycle Update#

This documentation covers the field return OEM lifecycle update for the i.MX93 with EdgeLock Secure Enclave. For detailed information about lifecycle management, please consult the reference manual.

1. Prerequisites#

  • SPSDK is needed with examples extension. pip install spsdk[examples] (Please refer to the installation documentation.)

  • This demo was tested with i.MX93 EVK board

  • The target device must be in OEM_CLOSED lifecycle state to successfully request a field return update.

YamlDiffWidget("inputs/return_lifecycle_update_req.diffc").html
nxpimage signed-msg get-template -f mx93 -o workspace/return_lifecycle_update_req.yaml -m return_lifecycle_update_req  --force 
Creating workspace/return_lifecycle_update_req.yaml template file.

Configuration Differences

2. Generation of signed message#

The command generates the signed message for the return lifecycle request.

%! nxpimage -v signed-msg export -c inputs/return_lifecycle_update_req.yaml
nxpimage -v signed-msg export -c inputs/return_lifecycle_update_req.yaml 
INFO:spsdk.apps.nxpimage_apps.nxpimage_signed_msg:Created Signed message Image:
Name:      Signed Message Image
Starts:    0x0
Ends:      0x277
Size:      Size: 632 B
Alignment: 8 B
Execution Start Address: Not defined
Pattern:zeros
Signed Message Image for mimx9352, Revision: latest

INFO:spsdk.apps.nxpimage_apps.nxpimage_signed_msg:Created Signed message Image memory map:

+==0x0000_0000= Signed Message Image ==+
|             Size: 632 B              |
|  Signed Message Image for mimx9352,  |
|           Revision: latest           |
|            Pattern: zeros            |
|+==0x0000_0000= Signed Message ======+|
||            Size: 632 B             ||
||         Signed Message for         ||
||    RETURN_LIFECYCLE_UPDATE_REQ     ||
|+==0x0000_0277=======================+|
+==0x0000_0277=========================+

INFO:spsdk.apps.nxpimage_apps.nxpimage_signed_msg:SRK hash:772e1009c66d2dd57ab25dc6a20409b686676463983e7e54cf24e55b38644f37
Success. (Signed message: outputs/signed_msg_fr_oem.bin created.)

3. Requesting Lifecycle update#

NOTE: Please note this is ONE TIME OPERATION (when lifecycle is moved to FR_OEM it cannot be moved back to OEM_CLOSED lifecycle).

nxpele --family mimx9352 signed-message --binary ./outputs/signed_msg_fr_oem.bin