您的位置:首页 > 其它

高通msm8994启动流程简介

2017-08-08 09:42 351 查看
原文地址:http://blog.csdn.net/finewind/article/details/46469645


处理器信息

8994包含如下子系统:

子系统处理器含义
APSS4*Cortex-A53应用子系统
APSS4*Cortex-A57应用子系统
LPASSQDSP6 v5.5A(Hexagon)低功耗音频子系统
RPMCortex-M3资源功耗管理子系统
ModemQDSP6 v5(Hexagon)调制解调(基带)处理子系统
从上表中可以看出,8994包含应用处理子系统、资源功耗管理子系统、调制子系统、低功耗音频子系统。其中应用处理子系统由4个A53和4个A57组成, 

资源功耗管理子系统由一颗Cortex-M3组成,Modem子系统和低功耗音频子系统分别由一颗高通骁龙处理器组成。


启动流程

启动流程框图 


 
启动流程 

1. 芯片上电复位到地址0, RPM PBL开始运行; 

2. RPM PBL执行基本的电量和功率检测,然后复位APP处理器(地址0xFC010000); 

3. APPS PBL在A53上执行,他从启动设备中加载(并鉴定)SBL1镜像到OCMEM; 

4. APPS PBL将RVBAR设置为SBL1的入口,设置RMR_EL3为64位模式,然后触发热启动,程序转到SBL1; 

5. SBL1开始运行,他首先初始化DDR,然后加载(并鉴定)HYP和TZ镜像; 

6. SBL1将执行权转交给TZ; 

7. TZ安全监管器建立安全环境; 

8. TZ QSEE内核运行; 

9. TZ应用程序(32/64位)运行,他们初始化系统; 

10. TZ将执行权转交给HYP(监管程序); 

11. 监管程序运行,他建立调试管理器,然后将执行权交回SBL1; 

12. SBL1加载(并鉴定)RPM 固件,设置RPM固件准备就绪魔数; 

13. RPM 固件在RPM处理器上运行; 

14. SBL1加载(并鉴定)SDI(系统调试镜像),SDI pass 0开始执行; 

15. SBL1加载(并鉴定)HLOS APPSBL(High-Level Operationg System,高级操作系统的SBL,指lk(little kernel)); 

16. SBL1将执行权转给HLOS APPSBL; 

17. HLOS APPSBL加载(并鉴定)HLOS kernel(实指Linux kernel); 

18. HLOS APPSBL通过TZ陷阱系统调用(TZ trap syscall)将执行权转交给HLOS kernel; 

19. 根据需要,HLOS kernel从启动设备中加载MBA(Modem Boot Authenticator)到DDR; 

20. HLOS kernel复位Modem处理器,Modem PBL开始运行; 

21. (此条疑似错误,参考80-NM328-6第26页); 

22. Modem PBL从DDR中将MBA拷贝到modem TCM中,然后在modem TCM中鉴定MBA; 

23. 根据需要,HLOS kernel从启动设备中加载MPSS镜像到DDR中; 

24. MBA鉴定DDR中的MPSS镜像; 

25. 根据需要,HLOS使用PIL加载LPASS镜像; 

26. 根据需要,HLOS使用PIL加载Venus镜像。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: