Firmware Upgrade
Overall
This guide provides information which will help you choose a firmware upgrade way on rockchip platform.
MASKROM
MASKROM is the simplest way.
Belows are the advantages and disadvantages of using maskrom.
Advantages:
- Avoid brick
- Simple, unified
Disadvantages:
- Need a maskrom key
Support update from
- USB OTG
U-boot
Rockchip mainline u-boot have support various upgrade ways, such as rockusb/fastboot/ums, each of them could be used.
It could be entered by issuing "reboot ums/fastboot/rockusb" from linux, or add the board-spefic key-detection code.
It's also possible to do network/usb-disk upgrade in u-boot, though you must be familiar with u-boot to use them.
Belows are the advantages and disadvantages of using maskrom.
Advantages:
- Common
Disadvantages:
- Must be familiar with u-boot
Support update from
- USB OTG
- USB DISK
- Network
Linux
Both yocto and debian use deb as the package manager, so firmware upgrade could be done by deb installation.
(SDK build scripts can pack kernel/u-boot in deb)
Advantages:
- standard
- users-friendly
Disadvantages:
- could be brick
SD-Card Recovery
By changing boot order in u-boot, it's possible to let u-boot load kernel and rootfs from sd-card at first.
We could use it to create a sd-card recovery image.
When the board boot into sd-card, the init scripts in SD-Card can install kernel/u-boot deb which will burn firmware to eMMC.
A sd-card recovery image could created by meta-rockchip-initramfs.
Advantages:
- Convenient
- Easy to customize, like a normal linux
Disadvantages:
- Slow
Initramfs/Recovery
Advantages:
- Easy to customize, like a normal linux
- Powerful
Disadvantages:
- Slow