CPU复位
本文档描述了在Trusted Firmware-A(TF-A)中处理CPU重置的框架的高级设计。它还描述了平台集成商如何在一定程度上根据系统配置定制此代码,从而简化和优化引导流程。
本文档应与固件设计文档一起使用,该文档提供了有关重置代码的更多实施细节,特别是针对冷启动路径。
(搓搓小手一起来看看)
1.一般重置代码流程
默认情况下,TF-A重置代码在BL1中实现。下图说明了这一点:
此图显示了未优化的默认重置流程。根据系统配置,这些步骤中的一些可能是不必要的。以下各节通过指示哪些构建选项排除哪些步骤来指导平台集成商,具体取决于平台的能力。
Note
如果将BL31用作TF-A入口点而不是BL1,则上图仍然相关,因为在这种情况下,所有这些操作都将发生在BL31中。有关详细信息,请参阅第6节“使用BL31入口点作为重置地址”。
2.可编程CPU复位地址
默认情况下,TF-A假定CPU重置地址不可编程。因此,无论何时重置,所有CPU都从同一地址(通常为地址0)开始。然后需要进一步的逻辑来确定是冷启动还是热启动以将CPU引导到正确的执行路径。
如果重置向量地址(反映在重置向量基地址寄存器RVBAR_EL3中&