MSM芯片组Bootloader启动流程详解:处理器、模块与代码加载
需积分: 13 55 浏览量
更新于2024-09-07
收藏 349KB DOCX 举报
Bootloader启动流程是计算机硬件初始化的关键步骤,尤其对于嵌入式系统中的处理器和SoC (System-on-Chip) 设备来说,如高通的MSM8937、MSM8953和MSM8940芯片组。该流程确保设备在接收到电源信号后,能够正确地加载和执行必要的软件组件,从而进入操作系统或应用运行环境。
首先,启动地址对于不同的处理器有着特定安排。在MSM8937/MSM8953/MSM8940的chipsets中,存在多种处理器类型,如应用处理器(APPS)、资源和电源管理(RPM)、调制解调器(Modem)、无线连接网络子系统(WCNSS)以及低功耗音频子系统(LPASS)。这些子系统各自负责特定的功能,比如Modem用于支持2G、3G、4G通信,而LPASS则集成有传感器hub,通常由数字信号处理器(DSP)来实现。
在启动过程中,BootCallStack起到了关键作用。特别是针对经过Fuse处理的机器,DebugPolicy被加载,使得这类机器也能进行调试。BootCodeFlow的执行顺序如下:
1. 当按下电源键后,设备启动,首先将MSM8937/MSM8953/MSM8940的APPSPBL(应用处理器上的Bootloader部分)从ROM加载出来,然后开始执行。
2. 在Cortex-A53架构中,APPSPBL会载入并验证以下内容:
- SBL1(Secure Boot Loader)的第一段代码,从boot设备传输到L2(作为 Trusted Compute Module,TCM),确保安全性和可信性。
- SBL1的第二段代码,即SDI(Secure Device Interface)等效版本,被加载到RPM的code RAM中,并随后执行SBL1。
3. SBL1继续初始化内存(DDR,Double Data Rate RAM),并载入和验证以下关键数据:
- QSEE/TrustZone image:这是一种安全模块,用于保护系统核心,从boot设备加载到DDR。
- DEVCFG image:设备配置寄存器,存储系统配置信息,同样从boot设备加载至DDR。
- DebugPolicy image:调试策略,用于调试权限管理,确保在安全模式下正确操作。
- HLOSAPPSBL image:高层次的Linux Kernel或类似OS的APPSPBL映像,从boot设备传输到DDR,准备后续操作系统的加载。
Bootloader启动流程是一个精心设计的过程,涉及多个步骤和组件间的协同工作,确保设备在最短时间内稳定、安全地进入正常运行状态。理解这个流程对于硬件开发者和维护人员至关重要,因为它直接影响到设备的可靠性和性能。
2022-07-10 上传
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
爬山版YY2022
- 粉丝: 0
- 资源: 2
最新资源
- vic-timer-crx插件
- getting_and_cleaning_data_project:课程
- TF2Mod:适用于Minecraft 1.12.2的TeamFortress 2 Forge Mod
- Axhub Assistant | 谷歌(Chrome)浏览器插件
- HDBSCAN:基于分层密度的聚类,适用于有噪声的应用
- HoverWord - Chinese to English-crx插件
- getdata_analysis:这是获取和清理数据课程的课程项目。 这是 Coursera 提供的数据专业化方向的第三门课程
- jQuery鼠标经过选项卡内容切换特效代码
- DatabasePath-cordova:简单的插件即可获取设备上的数据库位置路径
- MemoryMonitor.rar
- nativescript-hprt:在您的Nativescript应用程序中从HPRT打印到热敏打印机https://www.hprt.com
- 基于JavaScript检测浏览器版本及操作系统版本
- 可切换月份的日历Calendar视图
- datasciencecoursera:我的评估任务 #1_2
- jQuery个性圆圈倒计时特效特效代码
- 瓦拉淘购物助手 | 谷歌(Chrome)浏览器插件