• 正文
  • 相关推荐
申请入驻 产业图谱

ElfBoard技术贴|如何调整eMMC存储分区

05/08 14:40
1119
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

ELF 2开发板基于瑞芯微RK3588高性能处理器设计,拥有四核ARM Cortex-A76与四核ARM Cortex-A55的CPU架构,主频高达2.4GHz,内置6TOPS算力的NPU,这一设计让它能够轻松驾驭多种深度学习框架,高效处理各类复杂的AI任务。

针对ELF 2开发板的实际应用需求,本文将重点演示如何调整eMMC存储的分区,实现系统资源的高效配置。

?

一、默认分区情况

查看parameter.txt文件

内容如下:

FIRMWARE_VER: 1.0

MACHINE_MODEL: RK3588

MACHINE_ID: 007

MANUFACTURER: RK3588

MAGIC: 0x5041524B

ATAG: 0x00200800

MACHINE: 0xffffffff

CHECK_MASK: 0x80

PWR_HLD: 0,0,A,0,1

TYPE: GPT

GROW_ALIGN: 0

CMDLINE: mtdparts=:0x00002000@0x00004000(uboot),0x00002000@0x00006000(misc),0x00020000@0x00008000(boot),0x00040000@0x00028000(recovery),0x00010000@0x00068000(backup),0x01c00000@0x00078000(rootfs),0x00040000@0x01c78000(oem),-@0x01cb8000(userdata:grow)

其中CMDLINE描述的为磁盘的具体分区情况,eMMC默认分区情况如下:

其中rootfs为根文件系统分区,userdata为用户数据分区,给最终用户使用,用于存放用户APP或数据,镜像烧写后会挂载到/userdata目录,默认该目录放置的一些多媒体资源。

?

二、修改分区方法

修改分区对应的规则和注意事项如下:

1)格式为:分区大小@起始地址,其中分区大小和起始地址的单位都是sector,1sector=512Bytes;

2)修改分区大小后要对应修改下一个分区的起始地址,即需要修改索引后的所有分区的起始地址;

3)后一个分区的起始地址为前一个分区的起始地址+分区大小。

例如userdate分区的起始地址为oem的起始地址+分区大小;

4)为了安全和效率考虑,分区大小最好保证为4M字节的整数倍,即:8192(0x00002000)扇区=4MB;

5)最后一个分区需要增加关键字“grow”,以下分别以调整rootfs分区大小为28GB为例;

?

2.1. 修改parameter.txt文件

1)在SDK源码中修改文件

如果SDK源码是首次使用,需要参考:ELF 2开发板资料1-教程文档1-2 系统开发教程《ELF 2开发板编译手册》进行一次全编译

在开发环境中修改SDK源码,文件路径为 ELF2-linux-source/rockdev/parameter.txt

?

2)计算分区和起始地址

28GB=28x1024x1024x1024 Bytes=30,064,771,072 Bytes=58,720,256 x 512 Bytes

即58,720,256 sectors,换算为十六进制为0x3800000 sectors,需要调整rootfs的分区大小,oem和userdata分区的起始地址:

rootfs: 0x03800000@0x00078000

oem: 0x00040000@0x03878000

userdata: -@0x038B8000

FIRMWARE_VER: 1.0

MACHINE_MODEL: RK3588
MACHINE_ID: 007
MANUFACTURER: RK3588
MAGIC: 0x5041524B
ATAG: 0x00200800
MACHINE: 0xffffffff
CHECK_MASK: 0x80
PWR_HLD: 0,0,A,0,1
TYPE: GPT
GROW_ALIGN: 0
CMDLINE: mtdparts=:0x00002000@0x00004000(uboot),0x00002000@0x00006000(misc),0x00020000@0x00008000(boot),0x00040000@0x00028000(recovery),0x00010000@0x00068000(backup),0x03800000@0x00078000(rootfs),0x00040000@0x03878000(oem),-@0x038B8000(userdata:grow)
uuid:rootfs=614e0000-0000-4b53-8000-1d28000054a9
uuid:boot=7A3F0000-0000-446A-8000-702F00006273

?

2.2. 打包update.img

parameter.txt打包到update.img

将ELF2-linux-source/rockdev/update.img烧录到开发板上,烧录方法可以参考《快速启动手册》

?

2.3. 查看修改后的分区情况

使用fdisk -l命令可以查看分区情况

如图rootfs分区调整为例28G(图片是buildroot系统,desktop系统相同)

以上就是ELF 2开发板eMMC分区调整的完整操作指南,希望这些内容能切实帮助大家优化设备存储配置。如果在实践中遇到问题,欢迎随时交流探讨!

飞凌嵌入式

飞凌嵌入式

保定飞凌嵌入式技术有限公司,创建于2006年,是一家专注嵌入式核心控制系统研发、设计和生产的高新技术企业,是国内较早专业从事嵌入式技术的企业之一。 经过十几年的发展与积累,公司拥有业内优秀的软硬件研发团队,在北京及保定建立两大研发基地,在苏州、深圳设有华东、华南技术服务中心,并在北美、欧洲以及亚太等其他国家和地区拥有国际业务网络。公司研发的智能设备核心平台广泛应用于物联网、工控、轨道交通、医疗、电力、商业电子、智能家居、安防、机器人、环境监测等诸多领域。

保定飞凌嵌入式技术有限公司,创建于2006年,是一家专注嵌入式核心控制系统研发、设计和生产的高新技术企业,是国内较早专业从事嵌入式技术的企业之一。 经过十几年的发展与积累,公司拥有业内优秀的软硬件研发团队,在北京及保定建立两大研发基地,在苏州、深圳设有华东、华南技术服务中心,并在北美、欧洲以及亚太等其他国家和地区拥有国际业务网络。公司研发的智能设备核心平台广泛应用于物联网、工控、轨道交通、医疗、电力、商业电子、智能家居、安防、机器人、环境监测等诸多领域。收起

查看更多

相关推荐