7. 固件烧录

本章节主要介绍如何将构建完整的镜像⽂件(image)烧写并运⾏在硬件设备上的流程。Rockchip 平台提供的⼏种镜像烧写⼯具介绍如下所⽰,可以选择合适的烧写⽅式进⾏烧写。烧写前,需安装最新的 USB 驱动!

工具

运行系统

描述

RKDevTool

Windows

瑞芯微开发工具,分立升级固件及整个 update 升级固件工具

FactoryTool

Windows

量产升级工具,支持 USB 一拖多烧录

Linux_Upgrade_Tool

Linux

Linux 下开发的工具,支持固件的升级

7.1 烧写模式介绍

Rockchip 平台硬件运⾏的⼏种模式如表所⽰,只有当设备处于 Maskrom,及 Loader 模式下,才能够烧写固件,或对板上固件进⾏更新操作。

模式

工具烧录

描述

Maskrom

支持

Flash 在未烧录固件时,芯片会引导进入 Maskrom 模式,可以进行初次固件的烧写;
开发调试过程中若遇到 Loader 无法正常启动的情况,也可进入 Maskrom 模式烧写固件。

Loader

支持

Loader 模式下,可以进行固件的烧写、升级。
可以通过工具单独烧写某一个分区镜像文件,方便调试。

Recovery

不支持

系统引导 recovery 启动,主要作用是升级、恢复出厂设置类操作。

Normal Boot

不支持

系统引导 rootfs 启动,加载 rootfs,大多数的开发都是在这个模式下调试的。

进入烧写模式方式以下几种方法:

  • 未烧录过固件,上电,进入 Maskrom 模式。

  • 烧录过固件,按住 recovery 按键上电或复位,系统将进入 Loader 固件烧写模式。

  • 烧录过固件,按住 Maskrom 按键上电或复位,系统将进入 MaskRom 固件烧写模式。

  • 烧录过固件,上电或复位后开发板正常进入系统后,瑞芯微开发工具上显示“发现一个 ADB 设备”或“发现一个 MSC 设备”,然后点击工具上的按钮“切换”,进入 Loader 模式。

  • 烧录过固件,可在串口或 ADB 命令行模式下,输入 reboot loader 命令,进入 Loader 模式。

7.2 Windows 刷机说明

SDK 提供 Windows 烧写工具(工具版本需要 V3.15 或以上),工具位于工程根目录:

tools/
└── windows/RKDevTool

编译生成相应的固件后,设备烧写需要进入 MASKROM 或 BootROM 烧写模式,连接好 USB 下载线后,按住按键“MASKROM”不放并按下复位键“RST”后松手,就能进入 MASKROM 模式,加载编译生成固件的相应路径后,点击“执行”进行烧写,也可以按“recovery" 按键不放并按下复位键 “RST” 后松手进入 loader 模式进行烧写。(注意:Windows PC 需要在管理员权限运行工具才可执行)

注:烧写前,需安装最新 USB 驱动,驱动详见:

<SDK>/tools/windows/DriverAssistant_v5.12.zip

7.3 Linux 刷机说明

Linux 下的烧写工具位于 tools/linux 目录下(Linux_Upgrade_Tool 工具版本需要 V2.17 或以上),请确认你的板子连接到 MASKROM/loader rockusb。比如编译生成的固件在 rockdev 目录下,升级命令如下:

sudo./upgrade_tool ul rockdev/MiniLoaderAll.bin -norereset
sudo./upgrade_tool di -p rockdev/parameter.txt
sudo./upgrade_tool di -u rockdev/uboot.img
sudo./upgrade_tool di -trust rockdev/trust.img ###新芯片已把trust,合并到uboot分区
sudo./upgrade_tool di -misc rockdev/misc.img
sudo./upgrade_tool di -b rockdev/boot.img
sudo./upgrade_tool di -recovery rockdev/recovery.img
sudo./upgrade_tool di -oem rockdev/oem.img
sudo./upgrade_tool di -rootfs rocdev/rootfs.img
sudo./upgrade_tool di -userdata rockdev/userdata.img
sudo./upgrade_tool rd

或升级打包后的完整固件:

sudo./upgrade_tool uf rockdev/update.img

或在根目录,机器在 MASKROM 状态运行如下升级:

./rkflash.sh

7.4 更多刷机指南

更多固件升级请参考:【快速入门】->固件烧录