December 21, 2025

Orange Pi 4 (Rockchip 3399) how does linux boot?

No SD card, this thing must have eMMC. I interrupt U-boot (which is easy), then type:
run distro_bootcmd
It finds a U-boot script /boot/boot.scr, reads the script (3180 bytes) then executes it at 0050_0000. The boot fails as follows. (After starting the kernel, it immediately does a reboot). If I don't interrupt the reboot, it does the default, which is to network boot my latest demo.
Scanning mmc 0:1...
Found U-Boot script /boot/boot.scr
3189 bytes read in 18 ms (172.9 KiB/s)
## Executing script at 00500000
Boot script loaded from mmc 0
142 bytes read in 15 ms (8.8 KiB/s)
5974200 bytes read in 588 ms (9.7 MiB/s)
17760264 bytes read in 1708 ms (9.9 MiB/s)
105043 bytes read in 59 ms (1.7 MiB/s)
## Loading init Ramdisk from Legacy Image at 06000000 ...
   Image Name:   uInitrd
   Image Type:   AArch64 Linux RAMDisk Image (gzip compressed)
   Data Size:    5974136 Bytes = 5.7 MiB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK
## Flattened Device Tree blob at 01f00000
   Booting using the fdt blob at 0x1f00000
   Loading Ramdisk to f594e000, end f5f00878 ... OK
ERROR: reserving fdt memory region failed (addr=0 size=0)
   Loading Device Tree to 00000000f58cc000, end 00000000f594dfff ... OK

Starting kernel ...


Have any comments? Questions? Drop me a line!

Tom's electronics pages / tom@mmto.org