Hi Simon,

On Fri, May 22, 2026 at 3:22 AM Simon Glass <[email protected]> wrote:
>
> Hi,
>
> I am trying to make Friendlyelec NanoPi M5 (RK3576) work with
> mainline. I found the note about needing a workaround so have tried
> kwiboo/rk3576 at
>
> https://github.com/Kwiboo/u-boot-rockchip.git
>
> I am building like this:
>
> $ 
> ROCKCHIP_TPL=~/dev/rkbin/bin/rk35/rk3576_ddr_lp4_2112MHz_lp5_2736MHz_v1.09.bin
> BL31=~/dev/rkbin/bin/rk35/rk3576_bl31_v1.20.elf um build
> nanopi-m5-rk3576

FWIW, upstream TF-A master branch works well as BL31 on RK3576, though
it's most probably unrelated to the issue you're seeing

> Image 'simple-bin' is missing optional external blobs but is still
> functional: tee-os
>
> /binman/simple-bin/fit/images/@tee-SEQ/tee-os (tee-os):
>    See the documentation for your board. You may need to build Open Portable
>    Trusted Execution Environment (OP-TEE) and build with TEE=/path/to/tee.bin
>
> Image 'simple-bin-spi' is missing optional external blobs but is still
> functional: tee-os
>
> /binman/simple-bin-spi/fit/images/@tee-SEQ/tee-os (tee-os):
>    See the documentation for your board. You may need to build Open Portable
>    Trusted Execution Environment (OP-TEE) and build with TEE=/path/to/tee.bin
>
> $ dd if=/tmp/b/nanopi-m5-rk3576/u-boot-rockchip.bin of=/dev/sda seek=64
> 18579+0 records in
> 18579+0 records out
> 9512448 bytes (9.5 MB, 9.1 MiB) copied, 1.99658 s, 4.8 MB/s
>
> I get no serial output at all booting from SD card. Is there a special
> trick I am missing? I have confirmed that the Alpine Linux image works
> OK.

Dumb question: did you flip the switch on the back side of the board
from FSPI1 to UFS/SD?

If yes, then having no serial output at all most likely means the
boost.bin trick from Jonas' WIP patch didn't apply, because the DDR
trainer unconditionally spits out some logs on the debug UART during
early init.

The SD card might also be finicky, so if you happen to have an SPI
flash equipped board then you can flash U-boot there instead via
Maskrom. Just remove all other storage, connect a USB A-A cable to the
top USB 3.0 port, and power it up while holding the maskrom button.

Then:
rockusb download-boot rk3576_loader_fspi1_v1.13.100.bin
# note the zero below, because u-boot-rockchip-spi.bin already has a
64-sector offset baked in, unlike u-boot-rockchip.bin:
rockusb write-file 0 u-boot-rockchip-spi.bin
rockusb reset-device

Loader binary can be assembled from rkbin blobs, or alternatively
taken from e.g. here:
https://dl-linux-images.flipp.dev/u-boot/u%3D1afdc52186635bb599642064ee7c23f539b73e3c/rk%3D495eec7a93220b1269e915e684c5667250462a3d__tfa%3Dfc3691b5022abd9feba6c37330005b7437cccf9f/nanopi-m5/rk3576_loader_fspi1_v1.13.100.bin

rockusb tool: cargo install rockusb --example rockusb --features=nusb

Best regards,
Alexey

Reply via email to