Firmware Upgrade
Overall
This guide provides information which will help you choose a firmware upgrade way.
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
(Common key detect support is added after 20171218, now the board can enter rockusb mode by pressing recovery key).
It's also possible to do network/usb-disk upgrade in u-boot.
Belows are the advantages and disadvantages of using u-boot.
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
- user-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 first.
We could use it to create a sd-card recovery image. When the board boot into sd-card, the init script run and install kernel/u-boot debian packages, which burn firmware to eMMC.
Advantages:
- Convenient
Disadvantages:
- Slow
Initramfs/Recovery
Advantages:
- Powerful
Disadvantages:
- Slow