工具与软件:
大家好!
我们正在使用 SDK 10.0和 AM2634 MCU。 我们实现了一个次级引导加载程序(SBL)、该引导加载程序需要从闪存加载 MCELF 映像(经过签名和加密)。 我们在闪存中分配了两个空间来存储 MCELF、这样、在发生更新时、如果传输的映像损坏、我的 SBL 仍可以加载第二个。
我们在 SBL 中用于验证映像的函数包括:
Bootloader_authStart()
Bootloader_authUpdate()
Bootloader_authFinish()
我们遇到的问题如下:如果第一个映像没有有效签名(例如、它已损坏或未签名)、当我们检查第二个映像时、SBL 会卡在无限循环中。
我们想知道:
- 在第一个函数失败后、为了验证第二个 MCELF 是否正确、要调用的正确函数顺序是什么?
- 如果检查成功、验证函数还会启动内核。 是否可以在不启动 MCELF 的情况下检查它的正确性?
提前感谢您的帮助!
Alessandro