So I can confirm this works on the NanoPi-r6C
I have no experience installing u-boot, but with some dd magic and pure luck I got it to boot, albeit with an outdated/limited device tree so I have no audio atm. (although i see it loading the current dtb in the log). But it boots and it was fun to see that it works.
Code
After examination:
00000000 MBR
00008000 RKNS/idbloader/bootloader
00800000 u-boot
00C00000 trust.img
So I used the OpenWRT image and skipped the EFI/MBR part and wrote from 0x8000 to 0x00c00000 (12M)
Code
$ dd if=owrt bs=1 skip=$((0x8000)) count=$((0x00c00000-0x8000)) seek=$((0x8000)) of=/dev/sda
12550144+0 records in
12550144+0 records out
12550144 bytes (13 MB, 12 MiB) copied, 20,1171 s, 624 kB/s
$
Bootlog:
Code
DDR 9fffbe1e78 cym 24/02/04-10:09:20,fwver: v1.16
LPDDR4X, 2112MHz
channel[0] BW=16 Col=10 Bk=8 CS0 Row=16 CS1 Row=16 CS=2 Die BW=16 Size=2048MB
channel[1] BW=16 Col=10 Bk=8 CS0 Row=16 CS1 Row=16 CS=2 Die BW=16 Size=2048MB
channel[2] BW=16 Col=10 Bk=8 CS0 Row=16 CS1 Row=16 CS=2 Die BW=16 Size=2048MB
channel[3] BW=16 Col=10 Bk=8 CS0 Row=16 CS1 Row=16 CS=2 Die BW=16 Size=2048MB
Manufacturer ID:0x1
CH0 RX Vref:26.3%, TX Vref:20.8%,20.8%
CH1 RX Vref:25.8%, TX Vref:19.8%,19.8%
CH2 RX Vref:27.1%, TX Vref:18.8%,18.8%
CH3 RX Vref:27.1%, TX Vref:19.8%,19.8%
change to F1: 528MHz
change to F2: 1068MHz
change to F3: 1560MHz
change to F0: 2112MHz
out
U-Boot SPL 2024.10-OpenWrt-r28427-6df0e3d02a (Feb 03 2025 - 23:09:37 +0000)
Trying to boot from MMC1
## Checking hash(es) for config config-1 ... OK
## Checking hash(es) for Image atf-1 ... sha256+ OK
## Checking hash(es) for Image u-boot ... sha256+ OK
## Checking hash(es) for Image fdt-1 ... sha256+ OK
## Checking hash(es) for Image atf-2 ... sha256+ OK
## Checking hash(es) for Image atf-3 ... sha256+ OK
INFO: Preloader serial: 2
NOTICE: BL31: v2.3():v2.3-682-g4ca8a8422:derrick.huang, fwver: v1.45
NOTICE: BL31: Built : 10:11:21, Dec 27 2023
INFO: spec: 0x13
INFO: code: 0x88
INFO: ext 32k is not valid
INFO: ddr: stride-en 4CH
INFO: GICv3 without legacy support detected.
INFO: ARM GICv3 driver initialized in EL3
INFO: valid_cpu_msk=0xff bcore0_rst = 0x0, bcore1_rst = 0x0
INFO: l3 cache partition cfg-0
INFO: system boots from cpu-hwid-0
INFO: disable memory repair
INFO: idle_st=0x21fff, pd_st=0x11fff9, repair_st=0xfff70001
INFO: dfs DDR fsp_params[0].freq_mhz= 2112MHz
INFO: dfs DDR fsp_params[1].freq_mhz= 528MHz
INFO: dfs DDR fsp_params[2].freq_mhz= 1068MHz
INFO: dfs DDR fsp_params[3].freq_mhz= 1560MHz
INFO: BL31: Initialising Exception Handling Framework
INFO: BL31: Initializing runtime services
WARNING: No OPTEE provided by BL2 boot loader, Booting device without OPTEE initialization. SMC`s destined for OPTEE will return SMC_UNK
ERROR: Error initializing runtime service opteed_fast
INFO: BL31: Preparing for EL3 exit to normal world
INFO: Entry point address = 0xa00000
INFO: SPSR = 0x3c9
U-Boot 2024.10-OpenWrt-r28427-6df0e3d02a (Feb 03 2025 - 23:09:37 +0000)
Model: FriendlyElec NanoPi R6C
DRAM: 8 GiB
Core: 331 devices, 29 uclasses, devicetree: separate
MMC: mmc@fe2c0000: 0, mmc@fe2e0000: 1
Loading Environment from nowhere... OK
In: serial@feb50000
Out: serial@feb50000
Err: serial@feb50000
Model: FriendlyElec NanoPi R6C
Net: eth0: ethernet@fe1c0000
Hit any key to stop autoboot: 2 1 0
Scanning for bootflows in all bootdevs
Seq Method State Uclass Part Name Filename
--- ----------- ------ -------- ---- ------------------------ ----------------
Scanning global bootmeth 'efi_mgr':
7[r[999;999H[6n8No EFI system partition
No EFI system partition
Failed to persist EFI variables
No EFI system partition
Failed to persist EFI variables
No EFI system partition
Failed to persist EFI variables
No EFI system partition
Failed to persist EFI variables
No EFI system partition
Failed to persist EFI variables
0 efi_mgr ready (none) 0 <NULL>
** Booting bootflow '<NULL>' with efi_mgr
Loading Boot0000 'mmc 0' failed
Loading Boot0001 'mmc 1' failed
EFI boot manager: Cannot load any image
Boot failed (err=-14)
Scanning bootdev '[email protected]':
Scanning bootdev '[email protected]':
1 extlinux ready mmc 1 [email protected] /extlinux/extlinux.conf
** Booting bootflow '[email protected]_1' with extlinux
1: LibreELEC
Retrieving file: /KERNEL
append: boot=LABEL=LIBREELEC disk=LABEL=STORAGE quiet console=ttyS2,1500000 console=tty0 systemd.debug_shell=ttyS2 coherent_pool=2M cec.debounce_ms=5000
Retrieving file: /dtb/rockchip/rk3588s-nanopi-r6c.dtb
## Flattened Device Tree blob at 12000000
Booting using the fdt blob at 0x12000000
Working FDT set to 12000000
Loading Device Tree to 00000000ecb8b000, end 00000000ecbb3988 ... OK
Working FDT set to ecb8b000
Starting kernel ...
[ 2.257086] platform physmap-flash.0: failed to claim resource 0: [mem 0x08000000-0x07ffffff]
[ 2.263332] rk_gmac-dwmac fe1c0000.ethernet: Can not read property: rx_delay.
[ 2.263963] rk_gmac-dwmac fe1c0000.ethernet: set rx_delay to 0x10
[ 2.417783] cpufreq: Unable to obtain ARMCLK: -2
[ 2.502384] rockchip-pm-domain fd8d8000.power-management:power-controller: Failed to create device link (0x180) with supplier spi2.0 for /power-management@fd8d8000/power-controller/power-domain@12
[!p]104[?7h[6n[32766;32766H[6n[53;1H[!p]104[?7h[6n[32766;32766H[6n[53;1H[?25h[1;32mLibreELEC[1;32m:[1;34m/ [0m#
Display More