高通mdm9x25的启动流程如图所示:
rpm pbl, apps pbl和modem pbl都是rom固化的。
sbl是可见的,入口在/boot_images/core/boot/secboot3/hw/mdm9x25/sbl1/sbl1.s,c入口是sbl1_main_ctl().
差异化的LPDDR2主要改动点在CDT: Configuration Data Table.
可以用cdt_generator.py将xml文件转化成c的table格式:
/boot_images/core/boot/secboot3/scripts/boot_cdt_array.xml
/boot_images/core/boot/secboot3/hw/mdm9x25/boot_cdt_array.c
Nandflash的差异化工作是根据datasheet添加nand device,主要code在:
/boot_images/core/storage/flash/src/dal/flash_decode_nandids.c
/boot_images/core/storage/flash/src/dal/flash_decode_nandconfig.c
appsbl的flash相关code是:
/apps_proc/bootable/bootloader/lk/platform/msm_shared/qpic_nand.c
分区表partition.mbn
配置文件在/common/build/partition_nand.xml。
与msm7k平台不同,mdm9x25使用secboot3版本的download流程,引如hsusb qdload,
支持pbl下的firehose协议,sbl下的sahara协议。
ddr的压力测试
/boot_images/core/boot/ddr/scripts/mdm9x25/ddr_test.cmm
nandflash的压力测试
/boot_images/core/storage/flash/tools/src/nand/nand_diagnose.cmm
高通mdm9x25启动流程解析
本文详细介绍了高通mdm9x25平台的启动流程,包括rom固化的rpmpbl, appspbl和modempbl,以及sbl的实现方式和入口。文中还探讨了LPDDR2的配置更改方法,并提供了nandflash差异化工作的代码位置及分区表和配置文件的具体路径。此外,还介绍了mdm9x25平台特有的下载流程以及ddr和nandflash的压力测试方法。
506

被折叠的 条评论
为什么被折叠?



