19.09.2019 11:56, Simon South пишет: > 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?
Hi, I have no idea what is going on. But are you sure that you tested the same u-boot binaries with or without binary TPL? u-boot-tpl.bin and rk3328_ddr_333MHz_v1.16.bin should be fully interchangeable while deploying the bootloader. > > ---------- > > 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@ff500000: 1, rksdmmc@ff520000: 0 > Loading Environment from MMC... *** Warning - bad CRC, using default > environment > > In: serial@ff130000 > Out: serial@ff130000 > Err: serial@ff130000 > Model: Pine64 Rock64 > Net: > Warning: ethernet@ff540000 (eth0) using random MAC address - > da:e0:78:b1:50:d2 > eth0: ethernet@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 > Scanning disk [email protected]... > Card did not respond to voltage select! > Scanning disk [email protected]... > Disk [email protected] not ready > Found 3 disks > BootOrder not defined > EFI boot manager: Cannot load any image > 205136 bytes read in 16 ms (12.2 MiB/s) > libfdt fdt_check_header(): FDT_ERR_BADMAGIC > - > >>> NetBSD/evbarm EFI Boot (aarch64), Revision 1.11 (Wed Sep 18 15:50:45 > UTC 2019) (from NetBSD 9.99.12) > Press return to boot now, any other key for boot prompt > booting netbsd - starting in 0 seconds. > 6100056+2730512+1985652+1823764+490622=0xec5b00 > [ 1.0000000] NetBSD/evbarm (fdt) booting ... > [ 1.0000000] Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, > 2003, 2004, 2005, > [ 1.0000000] 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, > 2015, 2016, 2017, > [ 1.0000000] 2018, 2019 The NetBSD Foundation, Inc. All rights > reserved. > [ 1.0000000] Copyright (c) 1982, 1986, 1989, 1991, 1993 > [ 1.0000000] The Regents of the University of California. All > rights reserved. > > [ 1.0000000] NetBSD 9.99.12 (GENERIC64) #16: Wed Sep 18 12:30:03 EDT 2019 > [ 1.0000000] > ssouth@laptop:/usr/src/sys/arch/evbarm/compile/obj/GENERIC64 > [ 1.0000000] total memory = 4064 MB > [ 1.0000000] avail memory = 3918 MB > [ 1.0000000] panic: kernel diagnostic assertion "ucpu == > VM_FREE_PAGE_TO_CPU(pg)" failed: file "/usr/src/sys/uvm/uvm_page.c", line > 852 > [ 1.0000000] cpu0: Begin traceback... > [ 1.0000000] trace fp ffffffc000bec8d0 > [ 1.0000000] fp ffffffc000bec8f0 vpanic() at ffffffc0004924c0 > netbsd:vpanic+0x198 > [ 1.0000000] fp ffffffc000bec950 kern_assert() at ffffffc0005cdf24 > netbsd:kern_assert+0x5c > [ 1.0000000] fp ffffffc000bec9e0 uvm_pagealloc_pgfl() at > ffffffc00040f388 netbsd:uvm_pagealloc_pgfl+0x5c8 > [ 1.0000000] fp ffffffc000beca40 uvm_pagealloc_strat() at > ffffffc000410034 netbsd:uvm_pagealloc_strat+0x18c > [ 1.0000000] fp ffffffc000becad0 uvm_km_kmem_alloc() at > ffffffc000403b30 netbsd:uvm_km_kmem_alloc+0x60 > [ 1.0000000] fp ffffffc000becb40 pool_page_alloc() at ffffffc00048b0c0 > netbsd:pool_page_alloc+0x28 > [ 1.0000000] fp ffffffc000becb60 pool_grow() at ffffffc00048d294 > netbsd:pool_grow+0x35c > [ 1.0000000] fp ffffffc000becbd0 pool_get() at ffffffc00048c5e8 > netbsd:pool_get+0xa0 > [ 1.0000000] fp ffffffc000becc30 pool_cache_get_slow() at > ffffffc00048e8a4 netbsd:pool_cache_get_slow+0x1dc > [ 1.0000000] fp ffffffc000becc80 pool_cache_get_paddr() at > ffffffc0004901e8 netbsd:pool_cache_get_paddr+0x258 > [ 1.0000000] fp ffffffc000becce0 kmem_intr_alloc() at ffffffc0004859f0 > netbsd:kmem_intr_alloc+0x60 > [ 1.0000000] fp ffffffc000becd10 kmem_intr_zalloc() at > ffffffc000485b20 netbsd:kmem_intr_zalloc+0x10 > [ 1.0000000] fp ffffffc000becd30 kmem_zalloc() at ffffffc000485dc4 > netbsd:kmem_zalloc+0x84 > [ 1.0000000] fp ffffffc000becd50 module_builtin_add() at > ffffffc0004432a0 netbsd:module_builtin_add+0x98 > [ 1.0000000] fp ffffffc000becdf0 module_init() at ffffffc0004437f8 > netbsd:module_init+0xf0 > [ 1.0000000] fp ffffffc000bece50 main() at ffffffc0005d0b08 > netbsd:main+0x108 > [ 1.0000000] fp 0000000000000000 aarch64_start() at ffffffc00000183c > netbsd:aarch64_start+0x103c > [ 1.0000000] cpu0: End traceback... > Stopped in pid 0.1 (system) at netbsd:cpu_Debugger+0x4: ret > db{0}> > _______________________________________________ U-Boot mailing list [email protected] https://lists.denx.de/listinfo/u-boot

