RK3399 boot sequence

From PINE64
Jump to navigation Jump to search

Rockchip RK3399 boot sequence

This is for the Pine64 ROCKPro64 single board computer, and the Pinebook Pro laptop boot sequence details. While some of this may also apply to other RK3399 computers, that is up to the reader to make any appropriate changes.

Description

There are 3 sections for the boot loader. They are in order, without gap, though their is no need to use all the space.
Here are the details:

Start in
sectors
Size in
sectors
Name Description
64 16320 IDBLoader SoC initialization code
16384 8192 OS loader Generally U-Boot
24576 8192 TrustedFirmware-A  

General maintenance

If a new U-Boot is supplied, it is generally installed similar to this;

# dd if=/boot/idbloader.img conv=notrunc seek=64    of=/dev/mmcblkX
# dd if=/boot/u-boot.itb    conv=notrunc seek=16384 of=/dev/mmcblkX

Different devices

The RK3399 boots to multiple devices. Boot device selection is done in the following order, it can not be changed.
If a device is blank / un-used, the SoC code moves on to the next device in the list.

  • SPI
  • eMMC
  • SD card

However, whence the user boot code runs, it can then give priority to other devices, if available.

Boot loader development