展锐平台修改分区内存大小

一、概述

     在展锐平台上进行嵌入式系统开发时,有时候系统默认分配的分区大小往往无法满足特定应用场景的需求。本文将介绍如何给予展锐平台修改分区内存大小,以适应不同应用的存储要求。

二、修改方法

展锐平台的内存分区大小主要是由以下两个文件决定

1、.xml文件主要是决定了分区大小的上限,比如<Partition id="super" size="5600"/>,代表super分区的上限为5600M,<Partition id="userdata" size="0xFFFFFFFF"/>,其中0xFFFFFFFF代表的是除去其他分区剩下的所有空间都属于data分区。其修改路径如下:device/sprd/sharkl3/s9863a1h10/s9863a1h10.xml

</NVBackup>
                        <Partitions>
                                <!-- size unit is MBytes -->
                                <Partition id="prodnv" size="64"/>
                                <Partition id="miscdata" size="1"/>
                                <Partition id="misc" size="1"/>
                                <Partition id="trustos_a" size="6"/>
                                <Partition id="trustos_b" size="6"/>
                                <Partition id="sml_a" size="1"/>
                                <Partition id="sml_b" size="1"/>
                                <Partition id="uboot_a" size="3"/>
                                <Partition id="uboot_b" size="3"/>
                                <Partition id="uboot_log" size="4"/>
                                <Partition id="logo" size="6"/>
                                <Partition id="fbootlogo" size="6"/>
                                <Partition id="l_fixnv1_a" size="2"/>
                                <Partition id="l_fixnv2_a" size="2"/>
                                <Partition id="l_fixnv1_b" size="2"/>
                                <Partition id="l_fixnv2_b" size="2"/>
                                <Partition id="l_runtimenv1" size="2"/>
                                <Partition id="l_runtimenv2" size="2"/>
                                <Partition id="persist"   size="2"/>
                                <Partition id="l_modem_a" size="25"/>
                                <Partition id="l_modem_b" size="25"/>
                                <Partition id="l_deltanv_a" size="1"/>
                                <Partition id="l_deltanv_b" size="1"/>
                                <Partition id="l_gdsp_a" size="10"/>
                                <Partition id="l_gdsp_b" size="10"/>
                                <Partition id="l_ldsp_a" size="20"/>
                                <Partition id="l_ldsp_b" size="20"/>
                                <Partition id="pm_sys_a" size="1"/>
                                <Partition id="pm_sys_b" size="1"/>
                                <Partition id="teecfg_a" size="1"/>
                                <Partition id="teecfg_b" size="1"/>
                                <Partition id="hypervsior_a" size="10"/>
                                <Partition id="hypervsior_b" size="10"/>
                                <Partition id="boot_a" size="64"/>
                                <Partition id="boot_b" size="64"/>
                                <Partition id="vendor_boot_a" size="100"/>
                                <Partition id="vendor_boot_b" size="100"/>
                                <Partition id="init_boot_a" size="8"/>
                                <Partition id="init_boot_b" size="8"/>
                                <Partition id="dtb_a" size="8"/>
                                <Partition id="dtb_b" size="8"/>
                                <Partition id="dtbo_a" size="8"/>
                                <Partition id="dtbo_b" size="8"/>
                                <Partition id="super" size="5600"/>
                                <Partition id="cache" size="64"/>
                                <Partition id="blackbox" size="300"/>
                                <Partition id="vbmeta_a" size="1"/>
                                <Partition id="vbmeta_b" size="1"/>
                                <Partition id="metadata" size="64"/>
                                <Partition id="sysdumpdb" size="10"/>
                                <Partition id="vbmeta_system_a" size="1"/>
                                <Partition id="vbmeta_system_b" size="1"/>
                                <Partition id="vbmeta_vendor_a" size="1"/>
                                <Partition id="vbmeta_vendor_b" size="1"/>
                                <Partition id="vbmeta_system_ext_a" size="1"/>
                                <Partition id="vbmeta_system_ext_b" size="1"/>
                                <Partition id="vbmeta_product_a" size="1"/>
                                <Partition id="vbmeta_product_b" size="1"/>
                                <Partition id="vbmeta_odm_a" size="1"/>
                                <Partition id="vbmeta_odm_b" size="1"/>
                                <Partition id="avbmeta_rs_a" size="1"/>
                                <Partition id="avbmeta_rs_b" size="1"/>
                                <Partition id="common_rs1_a" size="8"/>
                                <Partition id="common_rs1_b" size="8"/>
                                <Partition id="common_rs2_a" size="16"/>
                                <Partition id="common_rs2_b" size="16"/>
                                <Partition id="userdata" size="0xFFFFFFFF"/>
                        </Partitions>
                        <ProductComment/>
                </Product>

main.mk决定了分区当前的大小,虽然系统除去其他分区剩下的空间都分配给data分区,但是展锐平台BOARD_USERDATAIMAGE_PARTITION_SIZE的大小默认是64M,如果往这个分区内置资料,超过64M打包时候会发现,内置不进去,需要将他的大小进行适当的修改。其路径如下device/sprd/mpool/module/generic/partition/main.mk。

# default value is 64M, using resize to adapter real size
BOARD_USERDATAIMAGE_PARTITION_SIZE ?= 67108864
BOARD_SUPER_PARTITION_SIZE ?= 5872025600
# BOARD_GROUP_UNISOC_SIZE = BOARD_SUPER_PARTITION_SIZE - RESERVED_SIZE(4MB for metadata)
BOARD_GROUP_UNISOC_SIZE ?= 5867831296
# ext4 partition layout
#BOARD_VENDORIMAGE_PARTITION_SIZE ?= 419430400
BOARD_RECOVERYIMAGE_PARTITION_SIZE ?= 41943040
#BOARD_SYSTEMIMAGE_PARTITION_SIZE ?= 3145728000
BOARD_PRODNVIMAGE_PARTITION_SIZE ?= 10485760
BOARD_DTBOIMG_PARTITION_SIZE ?= 8388608
BOARD_DTBIMG_PARTITION_SIZE ?= 8388608
BOARD_FLASH_BLOCK_SIZE ?= 4096
BOARD_PERSISTIMAGE_PARTITION_SIZE ?= 2097152
#BOARD_PRODUCTIMAGE_PARTITION_SIZE ?=419430400
BOARD_SOCKOIMAGE_PARTITION_SIZE ?= 78643200 # 75M
#BOARD_ODMKOIMAGE_PARTITION_SIZE ?= 26214400 # 25M
BOARD_VENDOR_BOOTIMAGE_PARTITION_SIZE ?= 104857600 # 100M
BOARD_BLACKBOXIMAGE_PARTITION_SIZE ?= 524288000

以上就是基于展锐平台修改分区大小的方法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值