Rockchip Android平台编译生成userdata.img

Rockchip Android平台编译生成userdata.img

适用版本

本修改方法适用于Android12及以上版本

代码修改

device/rockchip/rk3576:
--- a/rk3576_u/BoardConfig.mk
+++ b/rk3576_u/BoardConfig.mk
@@ -28,4 +28,7 @@ PRODUCT_KERNEL_CONFIG += pcie_wifi.config
 BOARD_GSENSOR_MXC6655XA_SUPPORT := true
 BOARD_CAMERA_SUPPORT_EXT := true
 BOARD_HS_ETHERNET := true
+BOARD_USERDATAIMAGE_PARTITION_SIZE := 8589934592
diff --git a/rk3576_u/rk3576_u.mk b/rk3576_u/rk3576_u.mk
index 5149f0c..102e0e6 100755
--- a/rk3576_u/rk3576_u.mk
+++ b/rk3576_u/rk3576_u.mk
@@ -35,6 +35,7 @@ PRODUCT_BRAND := rockchip
 PRODUCT_MODEL := rk3576_u
 PRODUCT_MANUFACTURER := rockchip
 PRODUCT_AAPT_PREF_CONFIG := mdpi
+PRODUCT_BUILD_USERDATA_IMAGE := true

说明

  • BOARD_USERDATAIMAGE_PARTITION_SIZE := 8589934592
    这个表示userdata分区大小,这里8589934592是8GB,这个大小 需要根据flash容量来设置,大小不能超过flash的剩余容量(扣除其他分区占用的空间)。
    这个配置需要加在产品的Boardconfig.mk中。

  • PRODUCT_BUILD_USERDATA_IMAGE := true
    这个是开启编译userdata.img的配置,需要打开才会编译,默认没有编译,这个需要加载产品的mk文件中,否则编译会报错。

固件和烧写

编译完成后会在rockdev/Image-xxx/下面生成data.img(由out下面的userdata.img拷贝过去重名了而成)。
烧写时可以单独烧写data.img到userdata分区即可,或者打包到update.img中完整烧写即可,默认会自动打包到update.img中。

### RK3568 Debian 移植 分区表 设置教程 #### 一、准备工作 为了在RK3568平台上正确配置Debian系统的分区表,需准备以下工具和环境: - 已经下载并解压好的RK3568 Linux SDK软件包[^3]。 - 宿主机上已安装必要的编译工具链和支持库。 #### 二、创建分区方案 对于RK3568平台上的Debian系统而言,合理的分区设计至关重要。通常情况下,建议采用如下分区布局来满足不同功能需求: | 分区名称 | 文件系统类型 | 大小 (MB) | 描述 | | --- | --- | --- | --- | | `uboot` | raw data | 16 | 存储u-boot引导程序 | | `misc` | ext4 | 16 | 杂项信息存储区域 | | `boot` | ext4 | 128 | 放置内核映像及相关启动文件 | | `rootfs` | ext4 | 根据实际需要调整大小 | 主要的操作系统文件所在位置 | | `oem` | ext4 | 可选 | 厂商自定义应用程序或数据存放处 | | `userdata` | ext4 | 动态分配剩余空间 | 用户个人资料及其他动态生成的数据 | #### 三、修改mkimage脚本中的参数 编辑位于SDK源码根目录下的`tools/mkimage.sh`脚本文件,按照上述规划设定各分区的具体尺寸和其他属性。特别注意的是,在处理`rootfs`分区时应确保其容量足以容纳整个Debian发行版的内容,并留有一定余量用于日后扩展。 ```bash # 修改 mkimage.sh 中的相关变量值 BOOT_SIZE=128M # boot分区大小设为128MB ROOTFS_SIZE=... # 自行计算合适的rootfs分区大小 ``` #### 四、构建完整的固件镜像 完成以上步骤之后,即可利用提供的`build.sh`自动化构建流程来进行最终的固件打包操作。具体来说就是运行下面这条指令: ```bash ./build.sh debian ``` 这一步骤将会依次执行内核编译、模块集成以及根文件系统的组装等一系列任务,直至产出可供刷写的`.img`格式的整体固件文件[^2]。 #### 五、验证与烧录 最后,借助专门的烧写工具(如Rockchip官方提供的PhoenixSuit),将刚刚制作完毕的固件安全地写入目标设备对应的eMMC芯片当中去。在此过程中务必小心谨慎,以免因误操作而导致不可逆性的损坏。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

loitawu

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值