当前位置:   article > 正文

ATF启动(二):BL1_scp boot rom

scp boot rom

1、BL1

BL1是干什么的?

BL1位于ROM中,在EL3下从reset vector处开始运行。(说明了启动是从EL3启动的,为什么?因为EL3安全等级最高呗。)

(BL1这些都是镜像,我的认识就是以前的bootloader一个人干的事,现在因为安全,分成了这样一个五步的启动来保证安全。)

系统上电之后首先会运行SCP boot ROM。之后会跳转到ATF的bl1中继续执行。
在这里插入图片描述
在这里插入图片描述

BL1做的工作主要有:

  • 决定启动路径:冷启动还是热启动。
  • 架构初始化:异常向量、CPU复位处理函数配置、控制寄存器设置(SCRLR_EL3/SCR_EL3/CPTR_EL3/DAIF)
  • 平台初始化:使能Trusted Watchdog、初始化控制台、配置硬件一致性互联、配置MMU、初始化相关存储设备。
  • 固件更新处理
  • BL2镜像加载和执行:
    • BL1输出“Booting Trusted Firmware"。
    • BL1加载BL2到SRAM;如果SRAM不够或者BL2镜像错误,输出“Failed to load BL2 firmware.”。
    • BL1切换到Secure EL1并将执行权交给BL2.
声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号