SPRADN0 December 2024 F29H850TU , F29H859TU-Q1
A brief description of the commands and the associated kernel behavior are provided in Table 4-4.
| Kernel Commands | Command Code | Description |
|---|---|---|
| DFU CPU1 | 0x01 | 1. Receive the command packet with no data |
| 2. Receive the flash application byte-by-byte | ||
| 3. Program and verify the application | ||
| 4. Send flash status packet | ||
| 5. Send message for the final status | ||
| Load HSMRt Image | 0x0B | 1. Receive the command packet with no data |
| 2. Receive the HSMRt byte-by-byte | ||
| 3. Place HSMRt in shared LDAx RAM | ||
| 4. Send flash status packet | ||
| 5. Wait to receive status of the HSM client | ||
| 6. Send message for the final status | ||
| Load HSM Keys | 0x0E | 1. Receive the command packet with no data |
| 2. Receive the HSMRt byte-by-byte | ||
| 3. Place key certificate in shared LDAx RAM so the HSM can program them | ||
| 4. Waits for HSM authentication status in forms of IPC message | ||
| 5. Send status packet | ||
| 6. Forward the status log messages from HSM | ||
| Load HSM Code Provisioning Image (firmware upgrade for HSM) | 0x0D | 1. Receive the command packet with no data |
| 2. Receive HSM firmware byte-by-byte, send the included key certificate for HSM validate | ||
| 3. Proceed to store the firmware in shared LDAx RAM for HSM to validate in chunks (if the firmware exceeds the size of RAM) | ||
| 4. Waits for HSM to perform integrity checks on the programmed firmware | ||
| 5. Send flash status packet | ||
| 6. Send status log message | ||
| Load C29 Code Provisioning Image (firmware upgrade for HS-SE C29) | 0x10 | Identical to HSM Code Provisioning Image |
|
Program SECCFG section (HS-SE) |
0x0C |
1. Receive the command packet with no data |
| 2. Receive SECCFG image byte-by-byte and store in shared RAM for the HSM to validate | ||
| 3. Send status packet | ||
| 4. Send status log message | ||
|
Run CPU1 |
0x09 |
1. Receive the packet with no data |
| 2. Branch to application entry point | ||
|
Reset CPU1 |
0x0A |
1. Receive the packet with no data |
| 2. Enable WatchDog and allow to cause a reset |