跳到主要内容

SDK 自动分区表优化

从 SDK 1.2 开始,新增了内置命令 auto_update_partition 用于分区表优化操作。可以解决以下问题:

  • 默认分区表配置不合理,占用过大,本来13M左右的镜像使用默认配置的分区表实际烧写需要24M

image-20250613192127884

  • 修改内核、ROOTFS、小核等配置与文件导致分区增大,无法打包成功

image-20250613185446641

  • 分区表没对齐,导致烧写启动失败
使用前提
  1. SDK 必须编译完成,执行 pack 命令可以正常生成固件

使用方法

在 SDK 任意位置执行 auto_update_partition 命令,开始执行优化操作。

  1. 首先选择分区对齐,对于 eMMC,SD NAND,TF Card,SD Card,RAW NAND,SPI NAND,UFS 仅可选择 64K 对齐,对于 SPI NOR 默认请选择 64K 对齐,若 SDK 专门配置了 4K 对齐模式,再选择 4K 对齐。
备注

可以直接回车,默认值是 64K 对齐

image-20250613192358995

  1. 然后选择需要处理的分区,默认选择 1 代表全部分区都处理,也可以选择只处理每某一个分区,输入分区前的序号或者分区名都可以
提示

单独分区名常用于扩大分区解决由于打包文件扩大导致的打包失败问题,例如如下报错,则单独处理 amp_rv0.fex 对应的 riscv0 分区

image-20250613192813612

image-20250613192608509

  1. 等待脚本处理

image-20250613193009853

  1. 处理完成后会自动打包一次,并输出调整优化的大小

image-20250613193041738

使用演示

Loading asciinema cast...