【AndroidQ】how to enable dynamic partition on msm8953

本章记录一下安卓10上添加动态分区code的变动。

1. 首先修改分区表,主要将system,vendor变为super分区,路径:common/config

 1. <partition label="system" size_in_kb="3145728" type="97D7B011-54DA-4835-B3C4-
917AD6E73D74" bootable="false" readonly="true" filename="system.img" sparse="true"/>
 2. <partition label="vendor" size_in_kb="1048576" type="97D7B011-54DA-4835-B3C4-
917AD6E73D74" bootable="false" readonly="true" filename="vendor.img" sparse="true"/>
 3. <!-- change for dynamice partition start -->
 4. <partition label="super" size_in_kb="6291456" type="89A12DE1-5E41-4CB3-8B4C-B1441EB5DA38
" bootable="false" readonly="false" filename="super.img" sparse="true"/>
 5. <partition label="vbmeta_system" size_in_kb="64" type="1344859D-3A6A-4C14-A316-
9E696B3A5400" bootable="false" readonly="true" filename="vbmeta_system.img"/>
 6. <partition label="metadata" size_in_kb="16384" type="EFB44098-C7B9-4D94-AFE4-
5870727CBD79" bootable="false" readonly="false" filename="metadata.img" sparse="true"/>
 7. <!-- change for dynamice partition end -->

改动前
改动前改动后
改动后
2. API Level29代表着Android 10.0(Q),路径:device/qcom/msm8953_64/BoardConfig.mk

#Generate DTBO image
ifeq ($(TARGET_KERNEL_VERSION), 4.9)
BOARD_KERNEL_SEPARATED_DTBO := true
-BOARD_SYSTEMSDK_VERSIONS :=28
+BOARD_SYSTEMSDK_VERSIONS :=29
BOARD_VNDK_VERSION := current
endif

3. 修改init里面挂载阶段信息,路径:device/qcom/msm8953_64/init.target.rc

on fs
wait /dev/block/platform/soc/${ro.boot.bootdevice}
symlink /dev/block/platform/soc/${ro.boot.bootdevice} /dev/block/bootdevice
 1. mount_all /vendor/etc/fstab.qcom
 2. mount_all /vendor/etc/fstab.qcom --early
write /proc/sys/vm/swappiness 100
chown root system /mnt/vendor/persist
@@ -56,6 +56,9 @@on fs
wait /dev/block/bootdevice/by-name/oem
mount ext4 /dev/block/bootdevice/by-name/oem /oem ro nosuid nodev barrier=1
+on late-fs
 3. mount_all /vendor/etc/fstab.qcom --late
 4. on post-fs
start vendor.qseecomd
exec - system system -- /vendor/bin/init.qti.qseecomd.sh

4. 动态分区enable标志打开,路径:device/qcom/msm8953_64/msm8953_64.mk

# Dynamic-partition disabled by default
-BOARD_DYNAMIC_PARTITION_ENABLE ?= false
+BOARD_DYNAMIC_PARTITION_ENABLE ?= true

+PRODUCT_SHIPPING_API_LEVEL := 29
ifeq ($(strip $(BOARD_DYNAMIC_PARTITION_ENABLE)),true)
PRODUCT_USE_DYNAMIC_PARTITIONS := true
@@ -461,7 +463,6 @@ifeq ($(strip $(TARGET_KERNEL_VERSION)), 4.9)
PRODUCT_PACKAGES += vndk_package
PRODUCT_COMPATIBLE_PROPERTY_OVERRIDE := true
TARGET_USES_MKE2FS := true
 1. $(call inherit-product, build/make/target/product/product_launched_with_p.mk)
endif
ifeq ($(strip $(TARGET_KERNEL_VERSION)), 3.18)
  1. 添加项目名或者平台名,路径:build/build.sh
-DIST_ENABLED_TARGET_LIST=("lahaina" "kona" "sdm710" "sdm845" "msmnile" "sm6150" "trinket" "lito" "bengal" "atoll")
-DYNAMIC_PARTITION_ENABLED_TARGET_LIST=("lahaina" "kona" "msmnile" "sdm710" "lito" "trinket" "atoll")
+DIST_ENABLED_TARGET_LIST=("lahaina" "kona" "sdm710" "sdm845" "msmnile" "msm8953_64"  "sm6150" "trinket" "lito" "bengal" "atoll")
+DYNAMIC_PARTITION_ENABLED_TARGET_LIST=("lahaina" "kona" "msmnile" "msm8953_64"  "sdm710" "lito" "trinket" "atoll")
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值