1.5 Bootloader
The PL360 device is RAM-based, so it is required to transfer the binary code to the device after each reset. The main purpose of this module is to manage the binary download process.
During the bootloading process, the integrity of the SPI communication between the PL360 Host Controller and the PL360 device is checked in each SPI transaction. If the SPI header does not match the expected value, the PL360 Host Controller resets the PL360 device and the bootloader restarts the download of the binary code to the device again. The PL360 Host Controller tries this download process up to three times and reports a critical failure to upper layers after the last unsuccessful download process.
There are two modes of operation for the bootloader: Normal mode or Secure mode.
In Secure mode, the downloaded binary must be encrypted.
- Define ATPL360_SEC_BOOT_MODE in conf_atpl360.h file
- It is mandatory to include specific metadata in the binary file before downloading it to the PL360 device, such as number of blocks to decypher, init vector and signature. A Microchip Python® script is provided in PLC PHY Workspace as an example of how to include this metadata information in the binary file
For further information about Secure mode, please refer to the PL360 Security Features document.