高通msm8994启动流程简介
處理器信息
8994包含如下子系統(tǒng):| APSS | 4*Cortex-A53 | 應(yīng)用子系統(tǒng) |
| APSS | 4*Cortex-A57 | 應(yīng)用子系統(tǒng) |
| LPASS | QDSP6 v5.5A(Hexagon) | 低功耗音頻子系統(tǒng) |
| RPM | Cortex-M3 | 資源功耗管理子系統(tǒng) |
| Modem | QDSP6 v5(Hexagon) | 調(diào)制解調(diào)(基帶)處理子系統(tǒng) |
從上表中可以看出,8994包含應(yīng)用處理子系統(tǒng)、資源功耗管理子系統(tǒng)、調(diào)制子系統(tǒng)、低功耗音頻子系統(tǒng)。其中應(yīng)用處理子系統(tǒng)由4個A53和4個A57組成,?
資源功耗管理子系統(tǒng)由一顆Cortex-M3組成,Modem子系統(tǒng)和低功耗音頻子系統(tǒng)分別由一顆高通驍龍?zhí)幚砥鹘M成。
啟動流程
啟動流程框圖?
?
啟動流程?
1. 芯片上電復(fù)位到地址0, RPM PBL開始運行;?
2. RPM PBL執(zhí)行基本的電量和功率檢測,然后復(fù)位APP處理器(地址0xFC010000);?
3. APPS PBL在A53上執(zhí)行,他從啟動設(shè)備中加載(并鑒定)SBL1鏡像到OCMEM;?
4. APPS PBL將RVBAR設(shè)置為SBL1的入口,設(shè)置RMR_EL3為64位模式,然后觸發(fā)熱啟動,程序轉(zhuǎn)到SBL1;?
5. SBL1開始運行,他首先初始化DDR,然后加載(并鑒定)HYP和TZ鏡像;?
6. SBL1將執(zhí)行權(quán)轉(zhuǎn)交給TZ;?
7. TZ安全監(jiān)管器建立安全環(huán)境;?
8. TZ QSEE內(nèi)核運行;?
9. TZ應(yīng)用程序(32/64位)運行,他們初始化系統(tǒng);?
10. TZ將執(zhí)行權(quán)轉(zhuǎn)交給HYP(監(jiān)管程序);?
11. 監(jiān)管程序運行,他建立調(diào)試管理器,然后將執(zhí)行權(quán)交回SBL1;?
12. SBL1加載(并鑒定)RPM 固件,設(shè)置RPM固件準(zhǔn)備就緒魔數(shù);?
13. RPM 固件在RPM處理器上運行;?
14. SBL1加載(并鑒定)SDI(系統(tǒng)調(diào)試鏡像),SDI pass 0開始執(zhí)行;?
15. SBL1加載(并鑒定)HLOS APPSBL(High-Level Operationg System,高級操作系統(tǒng)的SBL,指lk(little kernel));?
16. SBL1將執(zhí)行權(quán)轉(zhuǎn)給HLOS APPSBL;?
17. HLOS APPSBL加載(并鑒定)HLOS kernel(實指linux kernel);?
18. HLOS APPSBL通過TZ陷阱系統(tǒng)調(diào)用(TZ trap syscall)將執(zhí)行權(quán)轉(zhuǎn)交給HLOS kernel;?
19. 根據(jù)需要,HLOS kernel從啟動設(shè)備中加載MBA(Modem Boot Authenticator)到DDR;?
20. HLOS kernel復(fù)位Modem處理器,Modem PBL開始運行;?
21. (此條疑似錯誤,參考80-NM328-6第26頁);?
22. Modem PBL從DDR中將MBA拷貝到modem TCM中,然后在modem TCM中鑒定MBA;?
23. 根據(jù)需要,HLOS kernel從啟動設(shè)備中加載MPSS鏡像到DDR中;?
24. MBA鑒定DDR中的MPSS鏡像;?
25. 根據(jù)需要,HLOS使用PIL加載LPASS鏡像;?
26. 根據(jù)需要,HLOS使用PIL加載Venus鏡像。
附加說明
詳細(xì)請參考《80-NM328-6_A_MSM8994_Boot_CoreBSP_Overview.pdf》,本文大部分內(nèi)容是從該文檔中翻譯的。總結(jié)
以上是生活随笔為你收集整理的高通msm8994启动流程简介的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 使用LogKit进行日志操作
- 下一篇: Android平台 Psensor传感器