[U-Boot] ROCK64 fails to boot using U-Boot TPL

Jagan Teki jagan at amarulasolutions.com
Thu Sep 19 16:29:11 UTC 2019


On Thu, Sep 19, 2019 at 4:02 PM Simon South <simon at simonsouth.net> wrote:
>
> I've been unable so far to boot NetBSD on my PINE64 ROCK64 (v2.0,
> Rockchip RK3328) using U-Boot built with its own TPL, the default since
> commit ff3dd0a474.
>
> The same NetBSD image boots fine using the binary TPL supplied by Rockchip.
>
> The exact failure varies but it always seems memory-related. Typically
> the NetBSD kernel fails right after starting with a panic in its
> virtual-memory system, uvm.
>
> Also significant may be these messages sometimes output by U-Boot at
> startup, which I haven't seen when the Rockchip TPL is used:
>
>      libfdt fdt_check_header(): FDT_ERR_BADMAGIC
>
> I've pasted the output from a typical failed boot below and have
> submitted a problem report (with a bit more detail) to the NetBSD project:
>
> https://gnats.netbsd.org/54557
>
> Does anyone know why this might be happening? Is there perhaps some
> additional setup the U-Boot TPL expects from the OS to finish
> configuring the RK3328's memory controller that's currently missing from
> NetBSD?
>
> How I can diagnose this further?
>
> ----------
>
> U-Boot TPL 2019.10-rc3-00361-ga9fa70b7b7 (Sep 19 2019 - 03:11:29)
> LPDDR3
> Trying to boot from BOOTROM
> Returning to boot ROM...
>
> U-Boot SPL 2019.10-rc3-00361-ga9fa70b7b7 (Sep 19 2019 - 03:11:29 -0400)
> Trying to boot from MMC2
> Card did not respond to voltage select!
> spl: mmc init failed with error: -95
> Trying to boot from MMC1
> NOTICE:  BL31: v2.1(release):v2.1-678-g2fc6ffc4-dirty
> NOTICE:  BL31: Built : 12:10:07, Sep 12 2019
> ERROR:   over or zero region, nr=4187432, max=10
> NOTICE:  BL31:Rockchip release version: v1.2
>
>
> U-Boot 2019.10-rc3-00361-ga9fa70b7b7 (Sep 19 2019 - 03:12:31 -0400)
>
> Model: Pine64 Rock64
> DRAM:  4 GiB
> MMC:   rksdmmc at ff500000: 1, rksdmmc at ff520000: 0
> Loading Environment from MMC... *** Warning - bad CRC, using default
> environment
>
> In:    serial at ff130000
> Out:   serial at ff130000
> Err:   serial at ff130000
> Model: Pine64 Rock64
> Net:
> Warning: ethernet at ff540000 (eth0) using random MAC address -
> da:e0:78:b1:50:d2
> eth0: ethernet at ff540000
> Hit any key to stop autoboot:  0
> Card did not respond to voltage select!
> switch to partitions #0, OK
> mmc1 is current device
> Scanning mmc 1:1...
> 53513 bytes read in 9 ms (5.7 MiB/s)
> Found EFI removable media binary efi/boot/bootaa64.efi
> libfdt fdt_check_header(): FDT_ERR_BADMAGIC

It seems to be a memory overlap or similar. replace TPL with rkbin
would be worth checking since the DRAM is managed by rkbin instead of
TPL here.

rkbin => SPL => U-Boot proper


More information about the U-Boot mailing list