SylixOS:T3 打包量产 IMG 文件手册

1.适用范围

本文档主要介绍全志 T3 平台量产 SylixOS 系统的方法。区别于《AllWinnerT3量产使用手册.docx》,本文主要介绍如何生成可通过 Phoenixsuit 或 PhoenixCard 软件直接烧录的 img 文件。

2.准备工作

  1. T3 平台设备,已在 EMMC 上固化 SylixOS、APP、运行环境,等待打包
  2. USB 转串口设备一个
  3. Ubuntu 虚拟机
  4. T3 设备 lichee 开发环境

3.概述

整体打包流程大致由4步组成,如图 3.1所示。

3.1 整体打包流程

4.生成 EMMC 恢复镜像

在系统中使用 df 命令确认当前文件系统使用量,以确认需要保存的 EMMC 空间大小。如图 4.1所示,由此可知当前文件系统使用量不超过 100M,加上 80M 保留分区与 80M 启动分区,当前需要保存的 EMMC 空间为 260M。

4.1 查看EMMC使用情况

拷贝的 EMMC恢复镜像无法保存在 EMMC中,这里使用 nfs 方式。在 PC 段启动 NFS 服务器,在设备上使用如下命令挂载目录:

# mount -t nfs 192.168.1.12:/nfsroot  /mnt/nfs

       FTP传输t3_mking到apps目录内,执行如下命令在nfs中生成 EMMC 恢复镜像

# /apps/t3_mkimg -t mmc -s 260 -o /mnt/nfs/sylixos_emmc.bin

       其中 260 表示拷贝 260M 空间,成功后可在 nfs 目录下看到对应的文件。

5.生成SylixOS量产镜像

根据《ROMFS 使用手册.docx》创建基于 RomFs 的镜像。在 RomFs 文件系统的 /apps/目录下放入 EMMC 恢复镜像和 t3_producer,/lib/ 目录下放入 libvpmpdm.so,/usr/bin/ 下放入 dd 可执行文件(libvpmpdm.so、dd 在 base 中生成)。

系统启动 main 函数中执行如下操作:

    printf("updating emmc...\n");

    system("/apps/t3_producer -i /apps/sylixos_emmc.bin -o mmc");

    printf("update success!  rebooting\n");

    system("reboot");

最终生成 SylixOS 量产镜像 bspallwinnert3_cqr40.bin

6.生成烧录镜像

1、打开 Ubuntu 虚拟机,进入全志 SDK lichee 开发目录,先做一次编译,保证编译完成。

$ cd ttu-n_original

$ sudo ./build.sh

 

2、拷贝 SylixOS 量产镜像到全志编译 SDK 目录 ttu-n_original\tools\pack\SylixOS 下;

 

3、修改文件 ttu-n_original\tools\pack\pack

在 function do_common() 中 if [ "x${PACK_PLATFORM}" = "xdragonboard" ] ; 条件内增加拷贝系统镜像到 boot-resource/ 目录

cp ../SylixOS/bspallwinnert3_cqr40_cpu0.bin boot-resource/

如图 6.1所示。

6.1

 

4、修改文件 ttu-n_original\tools\pack\chips\sun8iw11p1\configs\default\env_dragon.cfg

添加:sylixos_run=fatload mmc 2:2 0x40100000 bspallwinnert3_cqr40_cpu0.bin;go 0x40100000;

并修改 bootcmd :

bootcmd=run sylixos_run

如图 6.2所示

6.2

 

5、修改文件 ttu-n_original\tools\pack\chips\sun8iw11p1\boot-resource\boot-resource.ini

改:

size=131072

为:

size=524288

如图 6.3所示

6.3

 

修改文件:

ttu-n_original\tools\pack\chips\sun8iw11p1\configs\magton-p1\sys_partition_dragonboard.fex

 

改:

[partition]

    name         = boot-res

    size         = 32768

    downloadfile = "bootloader.fex"

    user_type    = 0x8000

为:

[partition]

    name         = boot-res

    size         = 1048576

    downloadfile = "bootloader.fex"

    user_type    = 0x8000

 

注意:此处为创建自加载镜像临时修改,创建后需恢复

如图 6.4所示。

6.4

 

5、在根目录下打包生成新镜像

$ cd ttu-n_original

$ sudo ./build.sh pack

最终生成文件如图 6.5所示。

6.5

7.烧录过程

使用 Phoenixsuit 或 PhoenixCard 软件在新设备上直接烧录最终生成的 IMG 文件即可。这是演示 Phoenixsuit 通过 USB 烧录过程。

  1. 板卡断电,将 boot 引脚接地(根据不同板卡而定,可能是按键也可能是短接冒);
  2. 打开 Phoenixsuit 软件,选中“一键刷机”,选择需要烧录的镜像,如图 7.1所示;

7.1

  1. 板卡上电,插上 USB 线,Phoenixsuit 会自动提示是否刷机,确认即可(若没有提示可能是缺少 USB 驱动,在 Phoenixsuit 安装目录下运行 InstallUSBDrv.exe 即可);
  2. 烧录结束后,断开 USB 与 boot 脚,重新上电。
  3. 上电后 uboot 会先引导 SylixOS 量产镜像,SylixOS 量产镜像运行后会读取 EMMC 恢复镜像的内容并恢复到 EMMC 中,恢复结束后自动重启,新设备被烧录为目标状态。

8.附件

https://download.youkuaiyun.com/download/stone8761/19290512

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

stone8761

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

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

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

打赏作者

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

抵扣说明:

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

余额充值