编译阶段以某种方式将不同硬件的配置信息写入Image
配置信息一般包含Property列表/APK/...
具体流程请参考下一章节的介绍
LK(little kernel)通过 eFuse/GPIO等硬件讯息获取当前应该是用哪套配置,并通过Command Line的方式传给init.
这个步骤需要客户参考 DCC3209223 并根据自己的硬件设计自行实现
单个Package的时候,无需此步骤,此步骤仅用于需要"切换"的场景。
init process增加一段逻辑,加载当前配置对应的预先放在Image里的 Property 列表.
具体流程参考:/system/core/init/property_service.cpp 里的 LoadRscRoProps LoadRscRwProps
PMS 增加一段逻辑,安装当前配置对应的预先放在Image里的 APK.
具体流程参考:/vendor/mediatek/proprietary/frameworks/base/services/core/java/com/mediatek/server/pm/PmsExtImpl.java 搜索 rsc 相关的code
3. 配置/编译流程:
RSC相关的配置文件,在Project中的位置如下图,主要是由Project的 RuntimeSwitchConfig.mk,以