bootloader启动流程

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

MSM8909+Android5.1.1启动流程概述

PBL:APPS PBL(ApplicationPrimary Boot Loader),主引导加载程序

RPM:ResourcePower Manager,资源电源管理器

RPM(ResourcePower Manager)是高通MSM平台另外加的一块芯片,虽然与AP芯片打包在一起,但其是一个独立的ARM Core。之所以加这个东西,就是要控制整个电源相关的shared resources,比如ldo,clock。负责与SMP,MPM交互进入睡眠或者唤醒整个系统。

L2 TCM:Tightly-CoupledMemory,紧耦合内存

Some ARM SoC:s have a so-called TCM(Tightly-Coupled Memory). This is usually just a few (4-64) KiB of RAM insidethe ARM processor.

Due to being embedded inside the CPU TheTCM has a Harvard-architecture, so there is an ITCM (instruction TCM) and aDTCM (data TCM). The DTCM can not contain any instructions, but the ITCM canactually contain data.

CDT: Configuration Data Table,包含CDB0: platform info信息和CDB1: DDR配置参数。TZ:

PIL:Peripheralimage loader

MBA:Modem Boot Authenticator,调制解调器引导认证

HLOS:High-leveloperation system,高级操作系统

Pronto image:

SMEM : shared memory

RPC : remote procedure call

QCSBL : qualcomm second bootloader

OEMSBL : oem second bootloader

AMSS : Advanced Mobile Subscriber Software

SDI : System Debug Image

QSEE : Qualcomm Secure Execution Environment

TZBSP : TrustZone BSP

SBL1:ScondaryBoot Loader Stage1

MSS:MobileSubscriber Software移动用户软件

在ARM的集成开发环境中,只读的代码段和常量被称作RO段(ReadOnly);可读写的全局变量和静态变量被称作RW段(ReadWrite);RW段中要被初始化为零的变量被称为ZI段(ZeroInit)

1. Msm8909启动涉及部分的介绍

(1) APPS PBL(Application PrimaryBoot Loader)--------Cortex-A7

主引导加载程序,此程序的ZI/RW所需要的内容由L2 TCM和RPM codeRAM分配,在ROM中执行。引导程序功能是引导设备和接口检测、紧急下载模式的支持、通过L2 TCM 和RPM CodeRAM加载和认证SBL1 ELF片段(segments)。

(2) SBL1(Scondary Boot LoaderStage1) --------Cortex-A7

二级引导程序第1阶段,保存在EMMC/NAND中,负责初始化内存子系统(buses、DDR、clocks和CDT),加载和认证TZ、RPM_FW与APPSBL镜像,通过USB2.0和Sahara内存转储,保留看门狗调试,支持RAM转储到EMMC/SD,大容量储存模式支持,USB驱动支持、USB充电、温度检测、PMIC驱动支持、配置DDR和flush L1/L2/ETB to crash调试支持相关的配置

(3) QSEE(Qualcomm Secure ExecEnvironment) --------Cortex-A7

高通安全执行环境,从NAND/EMMC中拷贝到LPDDR2/3中执行,等同于

TZBSP(TrustZoneBSP),创建安全运行时执行环境、配置xPU、支持fluse驱动、创建SMMU 配置等

(4) RPM_FW----Cortex-M3

RPM : Resource Power Manager,资源电源管理器,是高通MSM平台另外加的一块芯片,虽然与AP芯片打包在一起,但其是一个独立的ARM Core。之所以加这个东西,就是要控制整个电源相关的shared resources,比如ldo,clock。负责与SMP,MPM交互进入睡眠或者唤醒整个系统。

从NAND/EMMC中拷贝出来,在RPM CodeRAM中运行

(5) APPSBL image--------Cortex-A7

从NAND/EMMC中拷贝出来,在LPDDR2/3中运行,功能丰富的引导程序HLOS,加载/认证内核、recovery模式等等。

(6) Modem PBL(Modem Primary BootLoader)-----------MSS Q6

在ROM中执行,创建Q6 TCM、从LPDDR2中加载MBA到Q6 TCM中并认证和锁住SMMU CB。

MSS:MobileSubscriber Software移动用户软件

(7) MBA(Modem Boot Authenticator)

调试解调器启动认证,从NAND/EMMC中拷贝到LPDDR2/3和Q6 TCM中运行,认证modem镜像、xPU保护modem的DDR区域

(8)

2. Msm8909的启动流程

PBL--->SBL1--->QSEE/TZ

(1) 芯片上电复位到地址0,Cortex-A7 APPS在自带的ROM中开始执行PBL

(2) PBL从EMMC中拷贝SBL1的第1段到L2 TCM中,执行和认证。

相关文档
最新文档