Hardware: S32K144EVB-Q100
Software: S32 Design Studio, OpenBLT Bootloader, an5401-csec
1.Can we use the BOOT_DEFINE to protect only the bootloader region?
csec_error = BOOT_DEFINE(16*1024*8, 1); // Only 16KB for bootloader
2.What is the exact CPU behavior difference between boot flavors 0 and 1 when bootloader MAC verification fails? Specifically:
- Flavor 0(strict): Does the CPU halt/block execution or where does control remain?
- Flavor 1(serial): Does the CPU continue to user code or where does control remain?
3.If bootloader verification passes (BOK = 1), can we directly calculate MAC for application using MAC functions without requiring another BOOT_DEFINE? CSEc hardware verifies bootloader autonomously using BOOT_DEFINE for bootloader only. Then bootloader calculates MAC for application directly using CMAC functions with no BOOT_DEFINE needed for application region. Is this approach fine?