* [U-Boot] ROCK64 fails to boot using U-Boot TPL @ 2019-09-19 8:56 Simon South 2019-09-19 15:48 ` Matwey V. Kornilov ` (5 more replies) 0 siblings, 6 replies; 28+ messages in thread From: Simon South @ 2019-09-19 8:56 UTC (permalink / raw) To: u-boot 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 Scanning disk rksdmmc at ff500000.blk... Card did not respond to voltage select! Scanning disk rksdmmc at ff520000.blk... Disk rksdmmc at ff520000.blk 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 at 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}> -- Simon South simon at simonsouth.net ^ permalink raw reply [flat|nested] 28+ messages in thread
* [U-Boot] ROCK64 fails to boot using U-Boot TPL 2019-09-19 8:56 [U-Boot] ROCK64 fails to boot using U-Boot TPL Simon South @ 2019-09-19 15:48 ` Matwey V. Kornilov 2019-09-20 0:06 ` Simon South 2019-09-19 16:29 ` Jagan Teki ` (4 subsequent siblings) 5 siblings, 1 reply; 28+ messages in thread From: Matwey V. Kornilov @ 2019-09-19 15:48 UTC (permalink / raw) To: u-boot 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 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 > Scanning disk rksdmmc at ff500000.blk... > Card did not respond to voltage select! > Scanning disk rksdmmc at ff520000.blk... > Disk rksdmmc at ff520000.blk 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 at 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}> > ^ permalink raw reply [flat|nested] 28+ messages in thread
* [U-Boot] ROCK64 fails to boot using U-Boot TPL 2019-09-19 15:48 ` Matwey V. Kornilov @ 2019-09-20 0:06 ` Simon South 2019-09-20 7:39 ` Matwey V. Kornilov 0 siblings, 1 reply; 28+ messages in thread From: Simon South @ 2019-09-20 0:06 UTC (permalink / raw) To: u-boot On 2019-09-19 11:48 a.m., Matwey V. Kornilov wrote: > 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? I believe so. Here's how I build U-Boot with its own TPL: make -j2 distclean; rm idbloader.img make -j2 rock64-rk3328_defconfig all u-boot.itb With the Rockchip TPL instead, it's: make -j2 distclean; rm idbloader.img make -j2 rock64-rk3328_defconfig all u-boot.itb tools/mkimage -n rk3328 -T rksd -d ~/src/rockchip-linux/rkbin/bin/rk33/rk3328_ddr_333MHz_v1.16.bin idbloader.img cat spl/u-boot-spl.bin >> idbloader.img In either case I install on the microSD card with sudo dd if=idbloader.img of=/dev/sdb seek=64 sudo dd if=u-boot.itb of=/dev/sdb seek=16384 Does this look right? -- Simon South simon at simonsouth.net ^ permalink raw reply [flat|nested] 28+ messages in thread
* [U-Boot] ROCK64 fails to boot using U-Boot TPL 2019-09-20 0:06 ` Simon South @ 2019-09-20 7:39 ` Matwey V. Kornilov 2019-09-20 9:28 ` Simon South 0 siblings, 1 reply; 28+ messages in thread From: Matwey V. Kornilov @ 2019-09-20 7:39 UTC (permalink / raw) To: u-boot 20.09.2019 3:06, Simon South пишет: > On 2019-09-19 11:48 a.m., Matwey V. Kornilov wrote: >> 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? > I believe so. Here's how I build U-Boot with its own TPL: > > make -j2 distclean; rm idbloader.img > make -j2 rock64-rk3328_defconfig all u-boot.itb > > With the Rockchip TPL instead, it's: > > make -j2 distclean; rm idbloader.img > make -j2 rock64-rk3328_defconfig all u-boot.itb > tools/mkimage -n rk3328 -T rksd -d > ~/src/rockchip-linux/rkbin/bin/rk33/rk3328_ddr_333MHz_v1.16.bin > idbloader.img > cat spl/u-boot-spl.bin >> idbloader.img > > In either case I install on the microSD card with > > sudo dd if=idbloader.img of=/dev/sdb seek=64 > sudo dd if=u-boot.itb of=/dev/sdb seek=16384 > > Does this look right? > Yes. I think so. Could you please provide us console logs for both successful and unsuccessful cases? Maybe one could see some meaning difference. ^ permalink raw reply [flat|nested] 28+ messages in thread
* [U-Boot] ROCK64 fails to boot using U-Boot TPL 2019-09-20 7:39 ` Matwey V. Kornilov @ 2019-09-20 9:28 ` Simon South 2019-09-20 10:07 ` Matwey V. Kornilov 0 siblings, 1 reply; 28+ messages in thread From: Simon South @ 2019-09-20 9:28 UTC (permalink / raw) To: u-boot On 2019-09-20 3:39 a.m., Matwey V. Kornilov wrote: > Could you please provide us console logs for both successful and > unsuccessful cases? Attached. The only differences I see are - The random Ethernet address assigned in each case, and - The "FDT_ERR_BADMAGIC" error messages that are output only when the U-Boot TPL is used. -- Simon South simon at simonsouth.net -------------- next part -------------- DDR version 1.16 20190528 ID:0x805 Y In LPDDR3 333MHz Bus Width=32 Col=11 Bank=8 Row=15/15 CS=2 Die Bus-Width=32 Size=4096MB ddrconfig:7 OUT U-Boot SPL 2019.10-rc3-00361-ga9fa70b7b7 (Sep 20 2019 - 04:55:01 -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 20 2019 - 04:56:02 -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 - 36:69:6f:cb:26:ed eth0: ethernet at ff540000 Hit any key to stop autoboot: 2 \b\b\b 1 \b\b\b 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 10 ms (5.1 MiB/s) Found EFI removable media binary efi/boot/bootaa64.efi Scanning disk rksdmmc at ff500000.blk... Card did not respond to voltage select! Scanning disk rksdmmc at ff520000.blk... Disk rksdmmc at ff520000.blk not ready Found 3 disks BootOrder not defined EFI boot manager: Cannot load any image 205136 bytes read in 17 ms (11.5 MiB/s) |\b/\b-\b\\b|\b/\b-\b >> 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 5 seconds. \b\b\b\b\b\b\b\b\b\b\b4 seconds. \b\b\b\b\b\b\b\b\b\b\b3 seconds. \b\b\b\b\b\b\b\b\b\b\b2 seconds. \b\b\b\b\b\b\b\b\b\b\b1 seconds. \b\b\b\b\b\b\b\b\b\b\b0 seconds. \\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b6100056|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b+2730512|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b+1985652-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b+1823764-\b\\b [701640|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b+490622\\b|\b/\b-\b\\b|\b/\b]=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 at laptop:/usr/src/sys/arch/evbarm/compile/obj/GENERIC64 [ 1.0000000] total memory = 4064 MB [ 1.0000000] avail memory = 3918 MB [ 1.0000000] armfdt0 (root) [ 1.0000000] simplebus0 at armfdt0: Pine64 Rock64 [ 1.0000000] cpus0 at simplebus0 [ 1.0000000] simplebus1 at simplebus0 [ 1.0000000] simplebus2 at simplebus0 [ 1.0000000] cpu0 at cpus0: Cortex-A53 r0p4 (Cortex V8-A core) [ 1.0000000] cpu0: package 0, core 0, smt 0 [ 1.0000000] cpu0: IC enabled, DC enabled, EL0/EL1 stack Alignment check enabled [ 1.0000000] cpu0: Cache Writeback Granule 16B, Exclusives Reservation Granule 16B [ 1.0000000] cpu0: Dcache line 64, Icache line 64 ... -------------- next part -------------- U-Boot TPL 2019.10-rc3-00361-ga9fa70b7b7 (Sep 20 2019 - 04:55:01) LPDDR3 Trying to boot from BOOTROM Returning to boot ROM... U-Boot SPL 2019.10-rc3-00361-ga9fa70b7b7 (Sep 20 2019 - 04:55:01 -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 20 2019 - 04:56:02 -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 - 02:f5:da:18:50:8d eth0: ethernet at ff540000 Hit any key to stop autoboot: 2 \b\b\b 1 \b\b\b 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 10 ms (5.1 MiB/s) Found EFI removable media binary efi/boot/bootaa64.efi libfdt fdt_check_header(): FDT_ERR_BADMAGIC Scanning disk rksdmmc at ff500000.blk... Card did not respond to voltage select! Scanning disk rksdmmc at ff520000.blk... Disk rksdmmc at ff520000.blk not ready Found 3 disks BootOrder not defined EFI boot manager: Cannot load any image 205136 bytes read in 17 ms (11.5 MiB/s) libfdt fdt_check_header(): FDT_ERR_BADMAGIC |\b/\b-\b\\b|\b/\b-\b >> 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 5 seconds. \b\b\b\b\b\b\b\b\b\b\b4 seconds. \b\b\b\b\b\b\b\b\b\b\b3 seconds. \b\b\b\b\b\b\b\b\b\b\b2 seconds. \b\b\b\b\b\b\b\b\b\b\b1 seconds. \b\b\b\b\b\b\b\b\b\b\b0 seconds. \\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b6100056|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b+2730512|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b+1985652-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b+1823764-\b\\b [701640|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b+490622\\b|\b/\b-\b\\b|\b/\b]=0xec5b00 [ 1.0000000] NetBSD/evbarm (fdt) booting ... [ 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 ffffffc000bec850 [ 1.0000000] fp ffffffc000bec870 ?() at ffffffc0004924c0 [ 1.0000000] fp ffffffc000bec8d0 ?() at ffffffc0005cdf24 [ 1.0000000] fp ffffffc000bec960 ?() at ffffffc00040f388 [ 1.0000000] fp ffffffc000bec9c0 ?() at ffffffc000410034 [ 1.0000000] fp ffffffc000beca50 ?() at ffffffc000403b30 [ 1.0000000] fp ffffffc000becad0 ?() at ffffffc000499928 [ 1.0000000] fp ffffffc000becbb0 ?() at ffffffc000499e1c [ 1.0000000] fp ffffffc000becc10 ?() at ffffffc00048ad88 [ 1.0000000] fp ffffffc000becc30 ?() at ffffffc00048d294 [ 1.0000000] fp ffffffc000becca0 ?() at ffffffc00048c5e8 [ 1.0000000] fp ffffffc000becd20 ?() at ffffffc00048f530 [ 1.0000000] fp ffffffc000becd90 ?() at ffffffc000485924 [ 1.0000000] fp ffffffc000bece00 ?() at ffffffc000485ef0 [ 1.0000000] fp ffffffc000bece30 ?() at ffffffc0004029c4 [ 1.0000000] fp ffffffc000bece50 ?() at ffffffc0005d0ac0 [ 1.0000000] fp 0000000000000000 ?() at ffffffc00000183c [ 1.0000000] cpu0: End traceback... Stopped in pid 0.1 (system) at ffffffc0000751c0: ret db{0}> ^ permalink raw reply [flat|nested] 28+ messages in thread
* [U-Boot] ROCK64 fails to boot using U-Boot TPL 2019-09-20 9:28 ` Simon South @ 2019-09-20 10:07 ` Matwey V. Kornilov 2019-09-20 10:14 ` Martin Husemann 0 siblings, 1 reply; 28+ messages in thread From: Matwey V. Kornilov @ 2019-09-20 10:07 UTC (permalink / raw) To: u-boot пт, 20 сент. 2019 г. в 12:30, Simon South <simon@simonsouth.net>: > > On 2019-09-20 3:39 a.m., Matwey V. Kornilov wrote: > > Could you please provide us console logs for both successful and > > unsuccessful cases? > > Attached. > > The only differences I see are > > - The random Ethernet address assigned in each case, and > - The "FDT_ERR_BADMAGIC" error messages that are output only when the > U-Boot TPL is used. Missed correct FDT file may cause booting errors like your. At least in Linux kernel world. I am not an NetBSD expert. The question is that FDT is not directly related to TPL in any way. Do you have an idea where is correct FDT supposed to came from in NetBSD case? For Linux, the file is placed on the boot partition and retrieved by u-boot while looking for EFI application, etc. Another backup FDT is bundled with the u-boot image itself, however it never worked for me for booting Linux. > > -- > Simon South > simon at simonsouth.net -- With best regards, Matwey V. Kornilov ^ permalink raw reply [flat|nested] 28+ messages in thread
* [U-Boot] ROCK64 fails to boot using U-Boot TPL 2019-09-20 10:07 ` Matwey V. Kornilov @ 2019-09-20 10:14 ` Martin Husemann 2019-09-20 16:43 ` Matwey V. Kornilov 0 siblings, 1 reply; 28+ messages in thread From: Martin Husemann @ 2019-09-20 10:14 UTC (permalink / raw) To: u-boot On Fri, Sep 20, 2019 at 01:07:12PM +0300, Matwey V. Kornilov wrote: > Do you have an idea where is correct FDT supposed to came from in > NetBSD case? For Linux, the file is placed on the boot partition and > retrieved by u-boot while looking for EFI application, etc. Same for NetBSD. Assuming that other parts have not been changed, Simon's experiments should have used the same .dtb for all tests. Martin ^ permalink raw reply [flat|nested] 28+ messages in thread
* [U-Boot] ROCK64 fails to boot using U-Boot TPL 2019-09-20 10:14 ` Martin Husemann @ 2019-09-20 16:43 ` Matwey V. Kornilov 2019-09-20 17:27 ` Simon South 0 siblings, 1 reply; 28+ messages in thread From: Matwey V. Kornilov @ 2019-09-20 16:43 UTC (permalink / raw) To: u-boot пт, 20 сент. 2019 г. в 13:14, Martin Husemann <martin@duskware.de>: > > On Fri, Sep 20, 2019 at 01:07:12PM +0300, Matwey V. Kornilov wrote: > > Do you have an idea where is correct FDT supposed to came from in > > NetBSD case? For Linux, the file is placed on the boot partition and > > retrieved by u-boot while looking for EFI application, etc. > > Same for NetBSD. Assuming that other parts have not been changed, Simon's > experiments should have used the same .dtb for all tests. > Now I remember that somebody complained about large files reading from eMMC. Simon, Could you please use u-boot console and try to locate and load dtb file manually using `ls` and `load` commands in both scenarios? -- With best regards, Matwey V. Kornilov ^ permalink raw reply [flat|nested] 28+ messages in thread
* [U-Boot] ROCK64 fails to boot using U-Boot TPL 2019-09-20 16:43 ` Matwey V. Kornilov @ 2019-09-20 17:27 ` Simon South 2019-09-20 17:37 ` Matwey V. Kornilov 2019-09-20 18:09 ` Simon South 0 siblings, 2 replies; 28+ messages in thread From: Simon South @ 2019-09-20 17:27 UTC (permalink / raw) To: u-boot On 2019-09-20 12:43 p.m., Matwey V. Kornilov wrote: > Could you please use u-boot console and try to locate and load dtb > file manually using `ls` and `load` commands in both scenarios? Results attached. I'm using a regular microSD card, not eMMC, but you're right: Using the U-Boot TPL the DTB file isn't loaded correctly; it's placed in memory but the data is corrupt: => md ${fdt_addr_r} 01f00000: adaaaa8a ea22282a baa0aeae aa7aa3aa ....*(".......z. 01f00010: a8a200ab abaa000a a8a2aa08 aa88aafa ................ 01f00020: e92a00a3 aabcf8a8 eaaaa8fa aaaaab88 ..*............. 01f00030: aaa8a0aa 2aa8088a 22a5e3ba 8bea4abe .......*...".J.. 01f00040: 23b188aa a20aa84a 82aaaaaa 8eee8cae ...#J........... 01f00050: 92aaaa4a aaa4feaa aa8a2eae eaa38b8a J............... 01f00060: aae4b2a8 aaacaaba aaea8ab8 2aeeb82a ............*..* (...) => load mmc 1 ${fdt_addr_r} /dtb/rockchip/rk3328-rock64.dtb 53513 bytes read in 10 ms (5.1 MiB/s) => md ${fdt_addr_r} 01f00000: edfe0d50 09d10000 38000000 70ba0000 P..........8...p 01f00010: 28000000 11000000 10000000 00000000 ...(............ 01f00020: 99120000 38ba0000 00000000 00000000 .......8........ 01f00030: 00000000 00000000 01000000 00000000 ................ 01f00040: 03000000 1e000000 00000000 656e6970 ............pine 01f00050: 722c3436 366b636f 6f720034 68636b63 64,rock64.rockch 01f00060: 722c7069 3233336b 00000038 03000000 ip,rk3328....... (...) => fdt addr ${fdt_addr_r} libfdt fdt_check_header(): FDT_ERR_BADMAGIC => Note the magic number at the start, which should be "edfe0dd0". When the Rockchip TPL is used the same DTB file loads without issue, and the magic number is correct. My current theory (following Mark Kettenis' email) is that all this is due to U-Boot's not configuring the RK805 PMIC on the ROCK64. The device tree suggests it's used to regulate power to the DRAM and is expected to be set up at pre-boot: vcc_ddr: DCDC_REG3 { regulator-name = "vcc_ddr"; regulator-always-on; regulator-boot-on; regulator-state-mem { regulator-on-in-suspend; }; }; However I see only yesterday Elaine Zhang posted patches that enable support in U-Boot for the RK805, which makes me think this isn't taking place currently. And while NetBSD includes its own RK805 driver it is likely assuming this setup has already happened ("regulator-boot-on") by the time the kernel starts and does not need to be done again. Does this sound reasonable? I'm going to apply Elaine's patches and see if that changes things. -- Simon South simon at simonsouth.net -------------- next part -------------- U-Boot TPL 2019.10-rc3-00361-ga9fa70b7b7 (Sep 20 2019 - 04:55:01) LPDDR3 Trying to boot from BOOTROM Returning to boot ROM... U-Boot SPL 2019.10-rc3-00361-ga9fa70b7b7 (Sep 20 2019 - 04:55:01 -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 20 2019 - 04:56:02 -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 - 9a:fd:d8:85:88:9f eth0: ethernet at ff540000 Hit any key to stop autoboot: 2 \b\b\b 0 => md ${fdt_addr_r} 01f00000: adaaaa8a ea22282a baa0aeae aa7aa3aa ....*(".......z. 01f00010: a8a200ab abaa000a a8a2aa08 aa88aafa ................ 01f00020: e92a00a3 aabcf8a8 eaaaa8fa aaaaab88 ..*............. 01f00030: aaa8a0aa 2aa8088a 22a5e3ba 8bea4abe .......*...".J.. 01f00040: 23b188aa a20aa84a 82aaaaaa 8eee8cae ...#J........... 01f00050: 92aaaa4a aaa4feaa aa8a2eae eaa38b8a J............... 01f00060: aae4b2a8 aaacaaba aaea8ab8 2aeeb82a ............*..* 01f00070: aaa0aaac aaeeab9a aeae84c8 ac2e8aaa ................ 01f00080: aaaa88a2 8a8a98a8 aee8aacc 686aa880 ..............jh 01f00090: acaa8a8a ac8eaec4 eaaaec80 aaaaca8c ................ 01f000a0: 28acaacd aae88a8a aba88e89 aaa8aaa8 ...(............ 01f000b0: 122caca4 a24eacc8 abea8cca 8aa0aa6e ..,...N.....n... 01f000c0: ea08988a aaacc8ca ee8eac8c 2488e89a ...............$ 01f000d0: c22ca84e 82a98a8c 88e888ae 8ac0aa92 N.,............. 01f000e0: a8a8a289 aeaaa8c8 8ccceacb aaeaee84 ................ 01f000f0: 2feaa947 aae2a628 a3c688a8 ceaee8a9 G../(........... => ls mmc 1 /dtb/rockchip ./ ../ 77017 rk3399-sapphire.dtb 81304 rk3399-sapphire-excavator.dtb 78646 rk3399-rockpro64.dtb 77846 rk3399-rock960.dtb 76155 rk3399-rock-pi-4.dtb 77701 rk3399-roc-pc.dtb 78035 rk3399-puma-haikou.dtb 78483 rk3399-nanopi-m4.dtb 78791 rk3399-nanopc-t4.dtb 86532 rk3399-gru-scarlet-kd.dtb 86507 rk3399-gru-scarlet-inx.dtb 89522 rk3399-gru-kevin.dtb 85495 rk3399-gru-bob.dtb 80312 rk3399-firefly.dtb 78519 rk3399-ficus.dtb 68842 rk3399-evb.dtb 53513 rk3328-rock64.dtb 52150 rk3328-roc-cc.dtb 51134 rk3328-evb.dtb 19 file(s), 2 dir(s) => load mmc 1 ${fdt_addr_r} /dtb/rockchip/rk3328-rock64.dtb 53513 bytes read in 10 ms (5.1 MiB/s) => md ${fdt_addr_r} 01f00000: edfe0d50 09d10000 38000000 70ba0000 P..........8...p 01f00010: 28000000 11000000 10000000 00000000 ...(............ 01f00020: 99120000 38ba0000 00000000 00000000 .......8........ 01f00030: 00000000 00000000 01000000 00000000 ................ 01f00040: 03000000 1e000000 00000000 656e6970 ............pine 01f00050: 722c3436 366b636f 6f720034 68636b63 64,rock64.rockch 01f00060: 722c7069 3233336b 00000038 03000000 ip,rk3328....... 01f00070: 04000000 0b000000 01000000 03000000 ................ 01f00080: 04000000 1c000000 02000000 03000000 ................ 01f00090: 04000000 2b000000 02000000 03000000 .......+........ 01f000a0: 0e000000 37000000 656e6950 52203436 .......7Pine64 R 01f000b0: 366b636f 00000034 01000000 61696c61 ock64.......alia 01f000c0: 00736573 03000000 11000000 3d000000 ses............= 01f000d0: 7265732f 406c6169 31316666 30303030 /serial at ff110000 01f000e0: 00000000 03000000 11000000 45000000 ...............E 01f000f0: 7265732f 406c6169 32316666 30303030 /serial at ff120000 => fdt addr ${fdt_addr_r} libfdt fdt_check_header(): FDT_ERR_BADMAGIC => load mmc 1 ${fdt_addr_r} /dtb/rockchip/rk3328-rock64.dtb 53513 bytes read in 10 ms (5.1 MiB/s) => md ${fdt_addr_r} 01f00000: edfe0d50 09d10000 38000000 70ba0000 P..........8...p 01f00010: 28000000 11000000 10000000 00000000 ...(............ 01f00020: 99120000 38ba0000 00000000 00000000 .......8........ 01f00030: 00000000 00000000 01000000 00000000 ................ 01f00040: 03000000 1e000000 00000000 656e6970 ............pine 01f00050: 722c3436 366b636f 6f720034 68636b63 64,rock64.rockch 01f00060: 722c7069 3233336b 00000038 03000000 ip,rk3328....... 01f00070: 04000000 0b000000 01000000 03000000 ................ 01f00080: 04000000 1c000000 02000000 03000000 ................ 01f00090: 04000000 2b000000 02000000 03000000 .......+........ 01f000a0: 0e000000 37000000 656e6950 52203436 .......7Pine64 R 01f000b0: 366b636f 00000034 01000000 61696c61 ock64.......alia 01f000c0: 00736573 03000000 11000000 3d000000 ses............= 01f000d0: 7265732f 406c6169 31316666 30303030 /serial at ff110000 01f000e0: 00000000 03000000 11000000 45000000 ...............E 01f000f0: 7265732f 406c6169 32316666 30303030 /serial at ff120000 => fdt addr ${fdt_addr_r} libfdt fdt_check_header(): FDT_ERR_BADMAGIC => -------------- next part -------------- DDR version 1.16 20190528 ID:0x805 Y In LPDDR3 333MHz Bus Width=32 Col=11 Bank=8 Row=15/15 CS=2 Die Bus-Width=32 Size=4096MB ddrconfig:7 OUT U-Boot SPL 2019.10-rc3-00361-ga9fa70b7b7 (Sep 20 2019 - 04:55:01 -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 20 2019 - 04:56:02 -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 - 9e:e6:27:9f:84:80 eth0: ethernet at ff540000 Hit any key to stop autoboot: 2 \b\b\b 0 => md ${fdt_addr_r} 01f00000: adaaaa9a ea23282a baa8aeae aa7aa3aa ....*(#.......z. 01f00010: bef200ab abaa020a a8b6aa88 aa88aafa ................ 01f00020: e92a4ca3 aafcf9aa eaaaa8fa aaaaaf89 .L*............. 01f00030: aaa8a0aa aaea888b 62a5ebfa abea6abe ...........b.j.. 01f00040: a3b188aa a29aac4a 8aaaaaaa 8eee8cae ....J........... 01f00050: daaaaa4e aaacfeea ea8a6ebe eaa38b8a N........n...... 01f00060: aee4f2a9 aaacaaba aaea8ab8 2aeeb8aa ...............* 01f00070: aab1aeac aaeeeb9e aeae84e8 ac2e8aea ................ 01f00080: aaae88e6 8aced8ba aeecaacc 686ae884 ..............jh 01f00090: acaaeaaa ac8faec0 eaeeec84 aaaaca8c ................ 01f000a0: 68aeaacd aae89a8a abe8ce89 aaaaaaa8 ...h............ 01f000b0: 326caca4 e2ceaccc abea8ece 8ae0eaee ..l2............ 01f000c0: ea08d88a aaacc8ea ee9eacac 248ae99a ...............$ 01f000d0: c2aea8ce 82a98ecc aae888ae 8ac1aa9a ................ 01f000e0: acbaa289 aeaeb8cc 8ccceecb aaeaeeac ................ 01f000f0: 2feaad43 aae6ee69 a7c688ac eeaee8a9 C../i........... => ls mmc 1 /dtb/rockchip ./ ../ 77017 rk3399-sapphire.dtb 81304 rk3399-sapphire-excavator.dtb 78646 rk3399-rockpro64.dtb 77846 rk3399-rock960.dtb 76155 rk3399-rock-pi-4.dtb 77701 rk3399-roc-pc.dtb 78035 rk3399-puma-haikou.dtb 78483 rk3399-nanopi-m4.dtb 78791 rk3399-nanopc-t4.dtb 86532 rk3399-gru-scarlet-kd.dtb 86507 rk3399-gru-scarlet-inx.dtb 89522 rk3399-gru-kevin.dtb 85495 rk3399-gru-bob.dtb 80312 rk3399-firefly.dtb 78519 rk3399-ficus.dtb 68842 rk3399-evb.dtb 53513 rk3328-rock64.dtb 52150 rk3328-roc-cc.dtb 51134 rk3328-evb.dtb 19 file(s), 2 dir(s) => load mmc 1 ${fdt_addr_r} /dtb/rockchip/rk3328-rock64.dtb 53513 bytes read in 9 ms (5.7 MiB/s) => md ${fdt_addr_r} 01f00000: edfe0dd0 09d10000 38000000 70ba0000 ...........8...p 01f00010: 28000000 11000000 10000000 00000000 ...(............ 01f00020: 99120000 38ba0000 00000000 00000000 .......8........ 01f00030: 00000000 00000000 01000000 00000000 ................ 01f00040: 03000000 1e000000 00000000 656e6970 ............pine 01f00050: 722c3436 366b636f 6f720034 68636b63 64,rock64.rockch 01f00060: 722c7069 3233336b 00000038 03000000 ip,rk3328....... 01f00070: 04000000 0b000000 01000000 03000000 ................ 01f00080: 04000000 1c000000 02000000 03000000 ................ 01f00090: 04000000 2b000000 02000000 03000000 .......+........ 01f000a0: 0e000000 37000000 656e6950 52203436 .......7Pine64 R 01f000b0: 366b636f 00000034 01000000 61696c61 ock64.......alia 01f000c0: 00736573 03000000 11000000 3d000000 ses............= 01f000d0: 7265732f 406c6169 31316666 30303030 /serial at ff110000 01f000e0: 00000000 03000000 11000000 45000000 ...............E 01f000f0: 7265732f 406c6169 32316666 30303030 /serial at ff120000 => fdt addr ${fdt_addr_r} => boot Card did not respond to voltage select! switch to partitions #0, OK mmc1 is current device Scanning mmc 1:1... 53513 bytes read in 10 ms (5.1 MiB/s) Found EFI removable media binary efi/boot/bootaa64.efi Scanning disk rksdmmc at ff500000.blk... Card did not respond to voltage select! Scanning disk rksdmmc at ff520000.blk... Disk rksdmmc at ff520000.blk not ready Found 3 disks BootOrder not defined EFI boot manager: Cannot load any image 205136 bytes read in 17 ms (11.5 MiB/s) |\b/\b-\b\\b|\b/\b-\b >> 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 5 seconds. \b\b\b\b\b\b\b\b\b\b\b4 seconds. \b\b\b\b\b\b\b\b\b\b\b3 seconds. \b\b\b\b\b\b\b\b\b\b\b2 seconds. \b\b\b\b\b\b\b\b\b\b\b1 seconds. \b\b\b\b\b\b\b\b\b\b\b0 seconds. \\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b6100056|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b+2730512|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b+1985652-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b+1823764-\b\\b [701640|\b/\b-\b\\b|\b/\b-\b\\b|\b/\b-\b+490622\\b|\b/\b-\b\\b|\b/\b]=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 at laptop:/usr/src/sys/arch/evbarm/compile/obj/GENERIC64 [ 1.0000000] total memory = 4064 MB [ 1.0000000] avail memory = 3918 MB [ 1.0000000] armfdt0 (root) [ 1.0000000] simplebus0 at armfdt0: Pine64 Rock64 [ 1.0000000] cpus0 at simplebus0 [ 1.0000000] simplebus1 at simplebus0 [ 1.0000000] simplebus2 at simplebus0 [ 1.0000000] cpu0 at cpus0: Cortex-A53 r0p4 (Cortex V8-A core) ... ^ permalink raw reply [flat|nested] 28+ messages in thread
* [U-Boot] ROCK64 fails to boot using U-Boot TPL 2019-09-20 17:27 ` Simon South @ 2019-09-20 17:37 ` Matwey V. Kornilov 2019-09-20 17:43 ` Simon South 2019-09-20 18:09 ` Simon South 1 sibling, 1 reply; 28+ messages in thread From: Matwey V. Kornilov @ 2019-09-20 17:37 UTC (permalink / raw) To: u-boot пт, 20 сент. 2019 г. в 20:28, Simon South <simon@simonsouth.net>: > > On 2019-09-20 12:43 p.m., Matwey V. Kornilov wrote: > > Could you please use u-boot console and try to locate and load dtb > > file manually using `ls` and `load` commands in both scenarios? > > Results attached. > > I'm using a regular microSD card, not eMMC, but you're right: Using the > U-Boot TPL the DTB file isn't loaded correctly; it's placed in memory > but the data is corrupt: > > => md ${fdt_addr_r} > 01f00000: adaaaa8a ea22282a baa0aeae aa7aa3aa ....*(".......z. > 01f00010: a8a200ab abaa000a a8a2aa08 aa88aafa ................ > 01f00020: e92a00a3 aabcf8a8 eaaaa8fa aaaaab88 ..*............. > 01f00030: aaa8a0aa 2aa8088a 22a5e3ba 8bea4abe .......*...".J.. > 01f00040: 23b188aa a20aa84a 82aaaaaa 8eee8cae ...#J........... > 01f00050: 92aaaa4a aaa4feaa aa8a2eae eaa38b8a J............... > 01f00060: aae4b2a8 aaacaaba aaea8ab8 2aeeb82a ............*..* > (...) > => load mmc 1 ${fdt_addr_r} /dtb/rockchip/rk3328-rock64.dtb > 53513 bytes read in 10 ms (5.1 MiB/s) > => md ${fdt_addr_r} > 01f00000: edfe0d50 09d10000 38000000 70ba0000 P..........8...p > 01f00010: 28000000 11000000 10000000 00000000 ...(............ > 01f00020: 99120000 38ba0000 00000000 00000000 .......8........ > 01f00030: 00000000 00000000 01000000 00000000 ................ > 01f00040: 03000000 1e000000 00000000 656e6970 ............pine > 01f00050: 722c3436 366b636f 6f720034 68636b63 64,rock64.rockch > 01f00060: 722c7069 3233336b 00000038 03000000 ip,rk3328....... > (...) > => fdt addr ${fdt_addr_r} > libfdt fdt_check_header(): FDT_ERR_BADMAGIC > => > > Note the magic number at the start, which should be "edfe0dd0". Note, that EFI application is loaded successfully at the same time. What is the difference? In filesize? > > When the Rockchip TPL is used the same DTB file loads without issue, and > the magic number is correct. > > My current theory (following Mark Kettenis' email) is that all this is > due to U-Boot's not configuring the RK805 PMIC on the ROCK64. The device > tree suggests it's used to regulate power to the DRAM and is expected to > be set up at pre-boot: > > vcc_ddr: DCDC_REG3 { > regulator-name = "vcc_ddr"; > regulator-always-on; > regulator-boot-on; > regulator-state-mem { > regulator-on-in-suspend; > }; > }; > > However I see only yesterday Elaine Zhang posted patches that enable > support in U-Boot for the RK805, which makes me think this isn't taking > place currently. And while NetBSD includes its own RK805 driver it is > likely assuming this setup has already happened ("regulator-boot-on") by > the time the kernel starts and does not need to be done again. > > Does this sound reasonable? > > I'm going to apply Elaine's patches and see if that changes things. > > -- > Simon South > simon at simonsouth.net -- With best regards, Matwey V. Kornilov ^ permalink raw reply [flat|nested] 28+ messages in thread
* [U-Boot] ROCK64 fails to boot using U-Boot TPL 2019-09-20 17:37 ` Matwey V. Kornilov @ 2019-09-20 17:43 ` Simon South 2019-09-21 7:47 ` Matwey V. Kornilov 2019-09-21 12:29 ` Matwey V. Kornilov 0 siblings, 2 replies; 28+ messages in thread From: Simon South @ 2019-09-20 17:43 UTC (permalink / raw) To: u-boot On 2019-09-20 1:37 p.m., Matwey V. Kornilov wrote: > What is the difference? In filesize? The EFI bootloader: 205136 bootaa64.efi The DTB file: 53513 rk3328-rock64.dtb It's about one quarter the size. It is strange the EFI bootloader and the kernel both seem always to load reliably when the DTB file doesn't. ---------- => ls mmc 1 /EFI/BOOT/ ./ ../ 205136 bootaa64.efi 1 file(s), 2 dir(s) => ls mmc 1 /dtb/rockchip/ ./ ../ 77017 rk3399-sapphire.dtb 81304 rk3399-sapphire-excavator.dtb 78646 rk3399-rockpro64.dtb 77846 rk3399-rock960.dtb 76155 rk3399-rock-pi-4.dtb 77701 rk3399-roc-pc.dtb 78035 rk3399-puma-haikou.dtb 78483 rk3399-nanopi-m4.dtb 78791 rk3399-nanopc-t4.dtb 86532 rk3399-gru-scarlet-kd.dtb 86507 rk3399-gru-scarlet-inx.dtb 89522 rk3399-gru-kevin.dtb 85495 rk3399-gru-bob.dtb 80312 rk3399-firefly.dtb 78519 rk3399-ficus.dtb 68842 rk3399-evb.dtb 53513 rk3328-rock64.dtb 52150 rk3328-roc-cc.dtb 51134 rk3328-evb.dtb 19 file(s), 2 dir(s) => -- Simon South simon at simonsouth.net ^ permalink raw reply [flat|nested] 28+ messages in thread
* [U-Boot] ROCK64 fails to boot using U-Boot TPL 2019-09-20 17:43 ` Simon South @ 2019-09-21 7:47 ` Matwey V. Kornilov 2019-09-21 11:59 ` Simon South 2019-09-21 12:29 ` Matwey V. Kornilov 1 sibling, 1 reply; 28+ messages in thread From: Matwey V. Kornilov @ 2019-09-21 7:47 UTC (permalink / raw) To: u-boot Could you please try to revert this commit and see what's happening then? https://github.com/u-boot/u-boot/commit/16593ccd07afdbb24a937eac4ea7e16269ff51e0 пт, 20 сент. 2019, 20:44 Simon South <simon@simonsouth.net>: > On 2019-09-20 1:37 p.m., Matwey V. Kornilov wrote: > > What is the difference? In filesize? > > The EFI bootloader: > > 205136 bootaa64.efi > > The DTB file: > > 53513 rk3328-rock64.dtb > > It's about one quarter the size. > > It is strange the EFI bootloader and the kernel both seem always to load > reliably when the DTB file doesn't. > > ---------- > > => ls mmc 1 /EFI/BOOT/ > ./ > ../ > 205136 bootaa64.efi > > 1 file(s), 2 dir(s) > > => ls mmc 1 /dtb/rockchip/ > ./ > ../ > 77017 rk3399-sapphire.dtb > 81304 rk3399-sapphire-excavator.dtb > 78646 rk3399-rockpro64.dtb > 77846 rk3399-rock960.dtb > 76155 rk3399-rock-pi-4.dtb > 77701 rk3399-roc-pc.dtb > 78035 rk3399-puma-haikou.dtb > 78483 rk3399-nanopi-m4.dtb > 78791 rk3399-nanopc-t4.dtb > 86532 rk3399-gru-scarlet-kd.dtb > 86507 rk3399-gru-scarlet-inx.dtb > 89522 rk3399-gru-kevin.dtb > 85495 rk3399-gru-bob.dtb > 80312 rk3399-firefly.dtb > 78519 rk3399-ficus.dtb > 68842 rk3399-evb.dtb > 53513 rk3328-rock64.dtb > 52150 rk3328-roc-cc.dtb > 51134 rk3328-evb.dtb > > 19 file(s), 2 dir(s) > > => > > -- > Simon South > simon at simonsouth.net > ^ permalink raw reply [flat|nested] 28+ messages in thread
* [U-Boot] ROCK64 fails to boot using U-Boot TPL 2019-09-21 7:47 ` Matwey V. Kornilov @ 2019-09-21 11:59 ` Simon South 0 siblings, 0 replies; 28+ messages in thread From: Simon South @ 2019-09-21 11:59 UTC (permalink / raw) To: u-boot On 2019-09-21 3:47 a.m., Matwey V. Kornilov wrote: > Could you please try to revert this commit and see what's happening then? Unfortunately undoing that change makes things worse: Either the NetBSD EFI bootloader hangs immediately on start (without any output) or it crashes with output like "Synchronous Abort" handler, esr 0x96000044 elr: fffffffffd1ad760 lr : fffffffffd1ac030 (reloc) elr: 00000000fbeeb760 lr : 00000000fbeea030 x0 : 00000000fcf679a0 x1 : 00000000fef3e628 x2 : 0000000000000000 x3 : 00000000fbf17408 (...) In either case I still see the "FDT_ERR_BADMAGIC" messages from U-Boot. Applying Elaine's patches for RK805 support makes no difference. Complete log attached. -- Simon South simon at simonsouth.net -------------- next part -------------- U-Boot TPL 2019.10-rc3-00361-ga9fa70b7b7-dirty (Sep 21 2019 - 07:45:04) LPDDR3 Trying to boot from BOOTROM Returning to boot ROM... U-Boot SPL 2019.10-rc3-00361-ga9fa70b7b7-dirty (Sep 21 2019 - 07:45:04 -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-dirty (Sep 21 2019 - 07:46:10 -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 - 92:21:88:52:60:47 eth0: ethernet at ff540000 Hit any key to stop autoboot: 2 \b\b\b 1 \b\b\b 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 16 ms (3.2 MiB/s) Found EFI removable media binary efi/boot/bootaa64.efi libfdt fdt_check_header(): FDT_ERR_BADMAGIC Scanning disk rksdmmc at ff500000.blk... Card did not respond to voltage select! Scanning disk rksdmmc at ff520000.blk... Disk rksdmmc at ff520000.blk not ready Found 3 disks BootOrder not defined EFI boot manager: Cannot load any image 205136 bytes read in 35 ms (5.6 MiB/s) libfdt fdt_check_header(): FDT_ERR_BADMAGIC U-Boot TPL 2019.10-rc3-00361-ga9fa70b7b7-dirty (Sep 21 2019 - 07:45:04) LPDDR3 Trying to boot from BOOTROM Returning to boot ROM... U-Boot SPL 2019.10-rc3-00361-ga9fa70b7b7-dirty (Sep 21 2019 - 07:45:04 -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-dirty (Sep 21 2019 - 07:46:10 -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 - fe:f0:6b:1f:55:ce eth0: ethernet at ff540000 Hit any key to stop autoboot: 2 \b\b\b 1 \b\b\b 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 16 ms (3.2 MiB/s) Found EFI removable media binary efi/boot/bootaa64.efi Scanning disk rksdmmc at ff500000.blk... Card did not respond to voltage select! Scanning disk rksdmmc at ff520000.blk... Disk rksdmmc at ff520000.blk not ready Found 3 disks BootOrder not defined EFI boot manager: Cannot load any image 205136 bytes read in 35 ms (5.6 MiB/s) "Synchronous Abort" handler, esr 0x96000044 elr: fffffffffd1ad760 lr : fffffffffd1ac030 (reloc) elr: 00000000fbeeb760 lr : 00000000fbeea030 x0 : 00000000fcf679a0 x1 : 00000000fef3e628 x2 : 0000000000000000 x3 : 00000000fbf17408 x4 : 0000000000000000 x5 : 0000000000000018 x6 : 00000000fcf679a0 x7 : 00000000fefa8a00 x8 : 000000000000fbee x9 : 0000000000000008 x10: 0000000000000001 x11: 00000000fcf29acc x12: 00000000000000c0 x13: 00000000fcf29a8c x14: 00000000080ef000 x15: 0000000000000002 x16: 00000000fef41c54 x17: 0000000000000000 x18: 0000000000000000 x19: 00000000fef3e628 x20: 00000000fcf29e30 x21: 0000000000000000 x22: 00000000fefa8a00 x23: 00000000fef3e628 x24: 00000000fefec000 x25: 00000000fefec000 x26: 0000000000000000 x27: 0000000000000000 x28: 00000000fcf5d250 x29: 00000000fcf29d80 UEFI image [0x00000000fbee9000:0x00000000fbf17fff] pc=0x2760 '/efi\boot\bootaa64.efi' Resetting CPU ... resetting ... U-Boot TPL 2019.10-rc3-00361-ga9fa70b7b7-dirty (Sep 21 2019 - 07:45:04) LPDDR3 Trying to boot from BOOTROM Returning to boot ROM... U-Boot SPL 2019.10-rc3-00361-ga9fa70b7b7-dirty (Sep 21 2019 - 07:45:04 -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-dirty (Sep 21 2019 - 07:46:10 -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 - fe:83:b7:02:40:87 eth0: ethernet at ff540000 Hit any key to stop autoboot: 2 \b\b\b 1 \b\b\b 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 19 ms (2.7 MiB/s) Found EFI removable media binary efi/boot/bootaa64.efi Scanning disk rksdmmc at ff500000.blk... Card did not respond to voltage select! Scanning disk rksdmmc at ff520000.blk... Disk rksdmmc at ff520000.blk not ready Found 3 disks BootOrder not defined EFI boot manager: Cannot load any image 205136 bytes read in 40 ms (4.9 MiB/s) ## Application terminated, r = 1 EFI LOAD FAILED: continuing... starting USB... Bus usb at ff5c0000: USB EHCI 1.00 Bus usb at ff5d0000: USB OHCI 1.0 Bus usb at ff580000: Bus usb at ff600000: Register 2000140 NbrPorts 2 Starting the controller USB XHCI 1.10 scanning bus usb at ff5c0000 for devices... 1 USB Device(s) found scanning bus usb at ff5d0000 for devices... 1 USB Device(s) found scanning bus usb at ff580000 for devices... 1 USB Device(s) found scanning bus usb at ff600000 for devices... 1 USB Device(s) found scanning usb for storage devices... 0 Storage Device(s) found Device 0: unknown device ethernet at ff540000 Waiting for PHY auto negotiation to complete......... TIMEOUT ! Could not initialize PHY ethernet at ff540000 missing environment variable: pxeuuid missing environment variable: bootfile Retrieving file: pxelinux.cfg/00000000 ethernet at ff540000 Waiting for PHY auto negotiation to complete......... TIMEOUT ! Could not initialize PHY ethernet at ff540000 missing environment variable: bootfile Retrieving file: pxelinux.cfg/0000000 ethernet at ff540000 Waiting for PHY auto negotiation to complete......... TIMEOUT ! Could not initialize PHY ethernet at ff540000 missing environment variable: bootfile Retrieving file: pxelinux.cfg/000000 ethernet at ff540000 Waiting for PHY auto negotiation to complete......... TIMEOUT ! Could not initialize PHY ethernet at ff540000 missing environment variable: bootfile Retrieving file: pxelinux.cfg/00000 ethernet at ff540000 Waiting for PHY auto negotiation to complete......... TIMEOUT ! Could not initialize PHY ethernet at ff540000 missing environment variable: bootfile Retrieving file: pxelinux.cfg/0000 ethernet at ff540000 Waiting for PHY auto negotiation to complete......... TIMEOUT ! Could not initialize PHY ethernet at ff540000 missing environment variable: bootfile Retrieving file: pxelinux.cfg/000 ethernet at ff540000 Waiting for PHY auto negotiation to complete.. ^ permalink raw reply [flat|nested] 28+ messages in thread
* [U-Boot] ROCK64 fails to boot using U-Boot TPL 2019-09-20 17:43 ` Simon South 2019-09-21 7:47 ` Matwey V. Kornilov @ 2019-09-21 12:29 ` Matwey V. Kornilov 2019-09-21 13:37 ` Simon South 1 sibling, 1 reply; 28+ messages in thread From: Matwey V. Kornilov @ 2019-09-21 12:29 UTC (permalink / raw) To: u-boot Could you try to load dtb (and check that dtb is valid) into the other memory location? For instance into ${kernel_addr_r} which is a place for loading EFI application binary? пт, 20 сент. 2019 г. в 20:44, Simon South <simon@simonsouth.net>: > > On 2019-09-20 1:37 p.m., Matwey V. Kornilov wrote: > > What is the difference? In filesize? > > The EFI bootloader: > > 205136 bootaa64.efi > > The DTB file: > > 53513 rk3328-rock64.dtb > > It's about one quarter the size. > > It is strange the EFI bootloader and the kernel both seem always to load > reliably when the DTB file doesn't. > > ---------- > > => ls mmc 1 /EFI/BOOT/ > ./ > ../ > 205136 bootaa64.efi > > 1 file(s), 2 dir(s) > > => ls mmc 1 /dtb/rockchip/ > ./ > ../ > 77017 rk3399-sapphire.dtb > 81304 rk3399-sapphire-excavator.dtb > 78646 rk3399-rockpro64.dtb > 77846 rk3399-rock960.dtb > 76155 rk3399-rock-pi-4.dtb > 77701 rk3399-roc-pc.dtb > 78035 rk3399-puma-haikou.dtb > 78483 rk3399-nanopi-m4.dtb > 78791 rk3399-nanopc-t4.dtb > 86532 rk3399-gru-scarlet-kd.dtb > 86507 rk3399-gru-scarlet-inx.dtb > 89522 rk3399-gru-kevin.dtb > 85495 rk3399-gru-bob.dtb > 80312 rk3399-firefly.dtb > 78519 rk3399-ficus.dtb > 68842 rk3399-evb.dtb > 53513 rk3328-rock64.dtb > 52150 rk3328-roc-cc.dtb > 51134 rk3328-evb.dtb > > 19 file(s), 2 dir(s) > > => > > -- > Simon South > simon at simonsouth.net -- With best regards, Matwey V. Kornilov ^ permalink raw reply [flat|nested] 28+ messages in thread
* [U-Boot] ROCK64 fails to boot using U-Boot TPL 2019-09-21 12:29 ` Matwey V. Kornilov @ 2019-09-21 13:37 ` Simon South 2019-09-21 17:15 ` Matwey V. Kornilov 0 siblings, 1 reply; 28+ messages in thread From: Simon South @ 2019-09-21 13:37 UTC (permalink / raw) To: u-boot On 2019-09-21 8:29 a.m., Matwey V. Kornilov wrote: > Could you try to load dtb (and check that dtb is valid) into the other > memory location? Same result: With the U-Boot TPL this fails (the FDT header is corrupt); with the Rockchip TPL this works fine. See below. I notice though it always seems to be only that one single bit (bit 7 of the first 32-bit word loaded) that differs between the two runs. Everything else in memory looks fine. And with the U-Boot TPL in use I can manually set a new value for that word, and it seems to stick: => md ${kernel_addr_r} 2 02080000: edfe0d50 09d10000 P....... => fdt addr ${kernel_addr_r} libfdt fdt_check_header(): FDT_ERR_BADMAGIC => nm ${kernel_addr_r} 02080000: edfe0d50 ? edfe0dd0 02080000: edfe0dd0 ? q => md ${kernel_addr_r} 2 02080000: edfe0dd0 09d10000 ........ => fdt addr ${kernel_addr_r} => I wonder if this is a clue as to what's going on. ---------- U-Boot TPL: Hit any key to stop autoboot: 0 => print kernel_addr_r kernel_addr_r=0x02080000 => md ${kernel_addr_r} 20 02080000: adaaaa8a ea22286a baa0aeae aa7aa1aa ....j(".......z. 02080010: a8b200ab abaa000a a8a2aa08 aa88aaea ................ 02080020: e92a00a3 2aacf8aa eaaaa8fa aaaaab88 ..*....*........ 02080030: aaa8a0aa 2aa8888a 22a5e2ba 8aea4a3c .......*..."<J.. 02080040: 23b188aa a28a884a 82aaaaaa 8eee8cae ...#J........... 02080050: 92aaaa4a aaa4feaa ea8a2eae eaa38b8a J............... 02080060: aee4b2a8 aaacaaba aaea8ab8 2aee982a ............*..* 02080070: aaa0aaac aaeeab9a aeae84c8 ac2e8aaa ................ => load mmc 1 ${kernel_addr_r} /dtb/rockchip/rk3328-rock64.dtb 53513 bytes read in 10 ms (5.1 MiB/s) => md ${kernel_addr_r} 20 02080000: edfe0d50 09d10000 38000000 70ba0000 P..........8...p 02080010: 28000000 11000000 10000000 00000000 ...(............ 02080020: 99120000 38ba0000 00000000 00000000 .......8........ 02080030: 00000000 00000000 01000000 00000000 ................ 02080040: 03000000 1e000000 00000000 656e6970 ............pine 02080050: 722c3436 366b636f 6f720034 68636b63 64,rock64.rockch 02080060: 722c7069 3233336b 00000038 03000000 ip,rk3328....... 02080070: 04000000 0b000000 01000000 03000000 ................ => fdt addr ${kernel_addr_r} libfdt fdt_check_header(): FDT_ERR_BADMAGIC => Rockchip TPL: Hit any key to stop autoboot: 0 => print kernel_addr_r kernel_addr_r=0x02080000 => md ${kernel_addr_r} 20 02080000: adaaaa9a ea23286a baa8aeae aa7aa3aa ....j(#.......z. 02080010: aaf200ab abaa080a a8b2aa88 aa88aafa ................ 02080020: e92a4ca3 aafcf8aa eaaaa8fa aaaaab88 .L*............. 02080030: aaa8a0aa 2aea888b e2a5ebfa abea6abe .......*.....j.. 02080040: abb188aa a29aac4a 8aaaaaaa 8eee8cae ....J........... 02080050: d2aaaace aaa4feea ea8a6ebe eaa38b8a .........n...... 02080060: aee4b2a9 aaacaaba aaea8ab8 3aeeb8aa ...............: 02080070: aaa1aaae aaeeab9e aeae8ce8 ae2e8aaa ................ => load mmc 1 ${kernel_addr_r} /dtb/rockchip/rk3328-rock64.dtb 53513 bytes read in 10 ms (5.1 MiB/s) => md ${kernel_addr_r} 20 02080000: edfe0dd0 09d10000 38000000 70ba0000 ...........8...p 02080010: 28000000 11000000 10000000 00000000 ...(............ 02080020: 99120000 38ba0000 00000000 00000000 .......8........ 02080030: 00000000 00000000 01000000 00000000 ................ 02080040: 03000000 1e000000 00000000 656e6970 ............pine 02080050: 722c3436 366b636f 6f720034 68636b63 64,rock64.rockch 02080060: 722c7069 3233336b 00000038 03000000 ip,rk3328....... 02080070: 04000000 0b000000 01000000 03000000 ................ => fdt addr ${kernel_addr_r} => -- Simon South simon at simonsouth.net ^ permalink raw reply [flat|nested] 28+ messages in thread
* [U-Boot] ROCK64 fails to boot using U-Boot TPL 2019-09-21 13:37 ` Simon South @ 2019-09-21 17:15 ` Matwey V. Kornilov 2019-09-24 16:54 ` Matwey V. Kornilov 0 siblings, 1 reply; 28+ messages in thread From: Matwey V. Kornilov @ 2019-09-21 17:15 UTC (permalink / raw) To: u-boot сб, 21 сент. 2019 г. в 16:38, Simon South <simon@simonsouth.net>: > > On 2019-09-21 8:29 a.m., Matwey V. Kornilov wrote: > > Could you try to load dtb (and check that dtb is valid) into the other > > memory location? > > Same result: With the U-Boot TPL this fails (the FDT header is corrupt); > with the Rockchip TPL this works fine. See below. > > I notice though it always seems to be only that one single bit (bit 7 of > the first 32-bit word loaded) that differs between the two runs. > Everything else in memory looks fine. And with the U-Boot TPL in use I > can manually set a new value for that word, and it seems to stick: I have no idea. Only suggestion is that something thinks that this memory position is MMIO and then it writes 7 bit for the some purpose. > > => md ${kernel_addr_r} 2 > 02080000: edfe0d50 09d10000 P....... > => fdt addr ${kernel_addr_r} > libfdt fdt_check_header(): FDT_ERR_BADMAGIC > => nm ${kernel_addr_r} > 02080000: edfe0d50 ? edfe0dd0 > 02080000: edfe0dd0 ? q > => md ${kernel_addr_r} 2 > 02080000: edfe0dd0 09d10000 ........ > => fdt addr ${kernel_addr_r} > => > > I wonder if this is a clue as to what's going on. > > ---------- > > U-Boot TPL: > > Hit any key to stop autoboot: 0 > => print kernel_addr_r > kernel_addr_r=0x02080000 > => md ${kernel_addr_r} 20 > 02080000: adaaaa8a ea22286a baa0aeae aa7aa1aa ....j(".......z. > 02080010: a8b200ab abaa000a a8a2aa08 aa88aaea ................ > 02080020: e92a00a3 2aacf8aa eaaaa8fa aaaaab88 ..*....*........ > 02080030: aaa8a0aa 2aa8888a 22a5e2ba 8aea4a3c .......*..."<J.. > 02080040: 23b188aa a28a884a 82aaaaaa 8eee8cae ...#J........... > 02080050: 92aaaa4a aaa4feaa ea8a2eae eaa38b8a J............... > 02080060: aee4b2a8 aaacaaba aaea8ab8 2aee982a ............*..* > 02080070: aaa0aaac aaeeab9a aeae84c8 ac2e8aaa ................ > => load mmc 1 ${kernel_addr_r} /dtb/rockchip/rk3328-rock64.dtb > 53513 bytes read in 10 ms (5.1 MiB/s) > => md ${kernel_addr_r} 20 > 02080000: edfe0d50 09d10000 38000000 70ba0000 P..........8...p > 02080010: 28000000 11000000 10000000 00000000 ...(............ > 02080020: 99120000 38ba0000 00000000 00000000 .......8........ > 02080030: 00000000 00000000 01000000 00000000 ................ > 02080040: 03000000 1e000000 00000000 656e6970 ............pine > 02080050: 722c3436 366b636f 6f720034 68636b63 64,rock64.rockch > 02080060: 722c7069 3233336b 00000038 03000000 ip,rk3328....... > 02080070: 04000000 0b000000 01000000 03000000 ................ > => fdt addr ${kernel_addr_r} > libfdt fdt_check_header(): FDT_ERR_BADMAGIC > => > > Rockchip TPL: > > Hit any key to stop autoboot: 0 > => print kernel_addr_r > kernel_addr_r=0x02080000 > => md ${kernel_addr_r} 20 > 02080000: adaaaa9a ea23286a baa8aeae aa7aa3aa ....j(#.......z. > 02080010: aaf200ab abaa080a a8b2aa88 aa88aafa ................ > 02080020: e92a4ca3 aafcf8aa eaaaa8fa aaaaab88 .L*............. > 02080030: aaa8a0aa 2aea888b e2a5ebfa abea6abe .......*.....j.. > 02080040: abb188aa a29aac4a 8aaaaaaa 8eee8cae ....J........... > 02080050: d2aaaace aaa4feea ea8a6ebe eaa38b8a .........n...... > 02080060: aee4b2a9 aaacaaba aaea8ab8 3aeeb8aa ...............: > 02080070: aaa1aaae aaeeab9e aeae8ce8 ae2e8aaa ................ > => load mmc 1 ${kernel_addr_r} /dtb/rockchip/rk3328-rock64.dtb > 53513 bytes read in 10 ms (5.1 MiB/s) > => md ${kernel_addr_r} 20 > 02080000: edfe0dd0 09d10000 38000000 70ba0000 ...........8...p > 02080010: 28000000 11000000 10000000 00000000 ...(............ > 02080020: 99120000 38ba0000 00000000 00000000 .......8........ > 02080030: 00000000 00000000 01000000 00000000 ................ > 02080040: 03000000 1e000000 00000000 656e6970 ............pine > 02080050: 722c3436 366b636f 6f720034 68636b63 64,rock64.rockch > 02080060: 722c7069 3233336b 00000038 03000000 ip,rk3328....... > 02080070: 04000000 0b000000 01000000 03000000 ................ > => fdt addr ${kernel_addr_r} > => > > -- > Simon South > simon at simonsouth.net -- With best regards, Matwey V. Kornilov ^ permalink raw reply [flat|nested] 28+ messages in thread
* [U-Boot] ROCK64 fails to boot using U-Boot TPL 2019-09-21 17:15 ` Matwey V. Kornilov @ 2019-09-24 16:54 ` Matwey V. Kornilov 2019-09-24 17:54 ` Simon South 0 siblings, 1 reply; 28+ messages in thread From: Matwey V. Kornilov @ 2019-09-24 16:54 UTC (permalink / raw) To: u-boot Simon, maybe you'll describe a way to obtain SD card image which you use? For the case if anybody wants to reproduce the issue in situ? сб, 21 сент. 2019 г. в 20:15, Matwey V. Kornilov <matwey.kornilov@gmail.com>: > > сб, 21 сент. 2019 г. в 16:38, Simon South <simon@simonsouth.net>: > > > > On 2019-09-21 8:29 a.m., Matwey V. Kornilov wrote: > > > Could you try to load dtb (and check that dtb is valid) into the other > > > memory location? > > > > Same result: With the U-Boot TPL this fails (the FDT header is corrupt); > > with the Rockchip TPL this works fine. See below. > > > > I notice though it always seems to be only that one single bit (bit 7 of > > the first 32-bit word loaded) that differs between the two runs. > > Everything else in memory looks fine. And with the U-Boot TPL in use I > > can manually set a new value for that word, and it seems to stick: > > I have no idea. Only suggestion is that something thinks that this > memory position is MMIO and then it writes 7 bit for the some purpose. > > > > > => md ${kernel_addr_r} 2 > > 02080000: edfe0d50 09d10000 P....... > > => fdt addr ${kernel_addr_r} > > libfdt fdt_check_header(): FDT_ERR_BADMAGIC > > => nm ${kernel_addr_r} > > 02080000: edfe0d50 ? edfe0dd0 > > 02080000: edfe0dd0 ? q > > => md ${kernel_addr_r} 2 > > 02080000: edfe0dd0 09d10000 ........ > > => fdt addr ${kernel_addr_r} > > => > > > > I wonder if this is a clue as to what's going on. > > > > ---------- > > > > U-Boot TPL: > > > > Hit any key to stop autoboot: 0 > > => print kernel_addr_r > > kernel_addr_r=0x02080000 > > => md ${kernel_addr_r} 20 > > 02080000: adaaaa8a ea22286a baa0aeae aa7aa1aa ....j(".......z. > > 02080010: a8b200ab abaa000a a8a2aa08 aa88aaea ................ > > 02080020: e92a00a3 2aacf8aa eaaaa8fa aaaaab88 ..*....*........ > > 02080030: aaa8a0aa 2aa8888a 22a5e2ba 8aea4a3c .......*..."<J.. > > 02080040: 23b188aa a28a884a 82aaaaaa 8eee8cae ...#J........... > > 02080050: 92aaaa4a aaa4feaa ea8a2eae eaa38b8a J............... > > 02080060: aee4b2a8 aaacaaba aaea8ab8 2aee982a ............*..* > > 02080070: aaa0aaac aaeeab9a aeae84c8 ac2e8aaa ................ > > => load mmc 1 ${kernel_addr_r} /dtb/rockchip/rk3328-rock64.dtb > > 53513 bytes read in 10 ms (5.1 MiB/s) > > => md ${kernel_addr_r} 20 > > 02080000: edfe0d50 09d10000 38000000 70ba0000 P..........8...p > > 02080010: 28000000 11000000 10000000 00000000 ...(............ > > 02080020: 99120000 38ba0000 00000000 00000000 .......8........ > > 02080030: 00000000 00000000 01000000 00000000 ................ > > 02080040: 03000000 1e000000 00000000 656e6970 ............pine > > 02080050: 722c3436 366b636f 6f720034 68636b63 64,rock64.rockch > > 02080060: 722c7069 3233336b 00000038 03000000 ip,rk3328....... > > 02080070: 04000000 0b000000 01000000 03000000 ................ > > => fdt addr ${kernel_addr_r} > > libfdt fdt_check_header(): FDT_ERR_BADMAGIC > > => > > > > Rockchip TPL: > > > > Hit any key to stop autoboot: 0 > > => print kernel_addr_r > > kernel_addr_r=0x02080000 > > => md ${kernel_addr_r} 20 > > 02080000: adaaaa9a ea23286a baa8aeae aa7aa3aa ....j(#.......z. > > 02080010: aaf200ab abaa080a a8b2aa88 aa88aafa ................ > > 02080020: e92a4ca3 aafcf8aa eaaaa8fa aaaaab88 .L*............. > > 02080030: aaa8a0aa 2aea888b e2a5ebfa abea6abe .......*.....j.. > > 02080040: abb188aa a29aac4a 8aaaaaaa 8eee8cae ....J........... > > 02080050: d2aaaace aaa4feea ea8a6ebe eaa38b8a .........n...... > > 02080060: aee4b2a9 aaacaaba aaea8ab8 3aeeb8aa ...............: > > 02080070: aaa1aaae aaeeab9e aeae8ce8 ae2e8aaa ................ > > => load mmc 1 ${kernel_addr_r} /dtb/rockchip/rk3328-rock64.dtb > > 53513 bytes read in 10 ms (5.1 MiB/s) > > => md ${kernel_addr_r} 20 > > 02080000: edfe0dd0 09d10000 38000000 70ba0000 ...........8...p > > 02080010: 28000000 11000000 10000000 00000000 ...(............ > > 02080020: 99120000 38ba0000 00000000 00000000 .......8........ > > 02080030: 00000000 00000000 01000000 00000000 ................ > > 02080040: 03000000 1e000000 00000000 656e6970 ............pine > > 02080050: 722c3436 366b636f 6f720034 68636b63 64,rock64.rockch > > 02080060: 722c7069 3233336b 00000038 03000000 ip,rk3328....... > > 02080070: 04000000 0b000000 01000000 03000000 ................ > > => fdt addr ${kernel_addr_r} > > => > > > > -- > > Simon South > > simon at simonsouth.net > > > > -- > With best regards, > Matwey V. Kornilov -- With best regards, Matwey V. Kornilov ^ permalink raw reply [flat|nested] 28+ messages in thread
* [U-Boot] ROCK64 fails to boot using U-Boot TPL 2019-09-24 16:54 ` Matwey V. Kornilov @ 2019-09-24 17:54 ` Simon South 2019-09-24 18:35 ` Matwey V. Kornilov 0 siblings, 1 reply; 28+ messages in thread From: Simon South @ 2019-09-24 17:54 UTC (permalink / raw) To: u-boot On 2019-09-24 12:54 p.m., Matwey V. Kornilov wrote: > Simon, maybe you'll describe a way to obtain SD card image which you > use? For the case if anybody wants to reproduce the issue in situ? Sure---I'd love for other people to test this, and it's pretty easy since it doesn't require anything other than U-Boot itself. Assuming the CROSS_COMPILE and BL31 environment variables are set up appropriately (I'm using ATF 2.1 from the mainline repository): 1. Switch to U-Boot's master branch and/or configure the source tree identically to my own with git checkout a9fa70b7b7167487affc5d919e541872c99e814b 2. Apply the attached patch, which enables the "mtest" command, with patch -p1 < rock64-enable-mtest.patch 3. Build U-Boot as usual: make distclean; rm -f ./idbloader.img make rock64-rk3328_defconfig all u-boot.itb 4. Write U-Boot to a microSD card as usual: sudo dd if=idbloader.img of=/dev/mmcblk0 seek=64 sudo dd if=u-boot.itb of=/dev/mmcblk0 seek=16384 5. Place the microSD card in the ROCK64 and start it. Once the SPL loads, hit the spacebar to enter the shell and start the memory test with mtest On my ROCK64, this immediately begins throwing off errors like FAILURE (read/write) @ 0x020014c0: expected 0x00000299, actual 0x00000219) and if I continue the boot process with "boot", the NetBSD kernel will load but panic almost immediately. Note mine is a ROCK64 v2.0 with a 32Gb SpecTek LPDDR3 memory module---there is also a ROCK64 v3.0 and some variance in the memory chips used, so it could be this is limited to a specific model or production run. Now here's what I've discovered lately: Everything works normally if I have U-Boot TPL's set a slightly lower clock rate for the memory, by editing arch/arm/dts/rk3328-sdram-lpddr3-1600.dtsi and changing the "800" on line 27 to "766". That suggests a hardware issue with my ROCK64, and in fact others have reported similar problems with the 2.0 version [1]. I'd be willing to leave it at that, except that if I also patch the (333MHz) Rockchip TPL to set a _higher_ clock rate for the memory, it continues to work just fine---all the way up to 933MHz! So this is not just a hardware problem; there is some incompatibility between the RK3328 SDRAM driver as it exists in U-Boot and at least one group of ROCK64s in the world. At the moment I'm still trying to identify what's different in the closed-source loader that causes it not to have this issue. Anyone have any thoughts? [1] https://forum.pine64.org/showthread.php?tid=7387 -- Simon South simon@simonsouth.net -------------- next part -------------- A non-text attachment was scrubbed... Name: rock64-enable-mtest.patch Type: text/x-patch Size: 837 bytes Desc: not available URL: <http://lists.denx.de/pipermail/u-boot/attachments/20190924/cf8ba68b/attachment.bin> ^ permalink raw reply [flat|nested] 28+ messages in thread
* [U-Boot] ROCK64 fails to boot using U-Boot TPL 2019-09-24 17:54 ` Simon South @ 2019-09-24 18:35 ` Matwey V. Kornilov 2019-09-24 18:50 ` Simon South 0 siblings, 1 reply; 28+ messages in thread From: Matwey V. Kornilov @ 2019-09-24 18:35 UTC (permalink / raw) To: u-boot 24.09.2019 20:54, Simon South пишет: > On 2019-09-24 12:54 p.m., Matwey V. Kornilov wrote: >> Simon, maybe you'll describe a way to obtain SD card image which you >> use? For the case if anybody wants to reproduce the issue in situ? > > Sure---I'd love for other people to test this, and it's pretty easy > since it doesn't require anything other than U-Boot itself. > > Assuming the CROSS_COMPILE and BL31 environment variables are set up > appropriately (I'm using ATF 2.1 from the mainline repository): > > 1. Switch to U-Boot's master branch and/or configure the source tree > identically to my own with > > git checkout a9fa70b7b7167487affc5d919e541872c99e814b > > 2. Apply the attached patch, which enables the "mtest" command, with > > patch -p1 < rock64-enable-mtest.patch > > 3. Build U-Boot as usual: > > make distclean; rm -f ./idbloader.img > make rock64-rk3328_defconfig all u-boot.itb > > 4. Write U-Boot to a microSD card as usual: > > sudo dd if=idbloader.img of=/dev/mmcblk0 seek=64 > sudo dd if=u-boot.itb of=/dev/mmcblk0 seek=16384 > > 5. Place the microSD card in the ROCK64 and start it. Once the SPL > loads, hit the spacebar to enter the shell and start the memory test with > > mtest > > On my ROCK64, this immediately begins throwing off errors like > > FAILURE (read/write) @ 0x020014c0: expected 0x00000299, actual > 0x00000219) > > and if I continue the boot process with "boot", the NetBSD kernel will > load but panic almost immediately. How do you take NetBSD image? > > Note mine is a ROCK64 v2.0 with a 32Gb SpecTek LPDDR3 memory > module---there is also a ROCK64 v3.0 and some variance in the memory > chips used, so it could be this is limited to a specific model or > production run. > > Now here's what I've discovered lately: > > Everything works normally if I have U-Boot TPL's set a slightly lower > clock rate for the memory, by editing > arch/arm/dts/rk3328-sdram-lpddr3-1600.dtsi and changing the "800" on > line 27 to "766". > > That suggests a hardware issue with my ROCK64, and in fact others have > reported similar problems with the 2.0 version [1]. I'd be willing to > leave it at that, except that if I also patch the (333MHz) Rockchip TPL > to set a _higher_ clock rate for the memory, it continues to work just > fine---all the way up to 933MHz! > > So this is not just a hardware problem; there is some incompatibility > between the RK3328 SDRAM driver as it exists in U-Boot and at least one > group of ROCK64s in the world. > > At the moment I'm still trying to identify what's different in the > closed-source loader that causes it not to have this issue. Anyone have > any thoughts? > > [1] https://forum.pine64.org/showthread.php?tid=7387 > > > _______________________________________________ > U-Boot mailing list > U-Boot at lists.denx.de > https://lists.denx.de/listinfo/u-boot > ^ permalink raw reply [flat|nested] 28+ messages in thread
* [U-Boot] ROCK64 fails to boot using U-Boot TPL 2019-09-24 18:35 ` Matwey V. Kornilov @ 2019-09-24 18:50 ` Simon South 0 siblings, 0 replies; 28+ messages in thread From: Simon South @ 2019-09-24 18:50 UTC (permalink / raw) To: u-boot On 2019-09-24 2:35 p.m., Matwey V. Kornilov wrote> How do you take NetBSD image? I've been building my own images from NetBSD-CURRENT, following the guides [1][2]. There was until recently a buffer-alignment issue in NetBSD's EFI bootloader that prevented it from working with the current version of U-Boot, but a fix has been committed so something like the following should now work, without patching: cd /usr/src # or $HOME/netbsd/usr/src, etc. cvs update -A -dP -C -D '20190922 1140Z' ./build.sh -U -u -m evbarm64 release Then write the resulting image to a microSD card with zcat obj/releasedir/evbarm/binary/gzimg/arm64.img.gz | sudo dd bs=32768 of=/dev/mmcblk0 skip=512 seek=512 and build and install U-Boot as in my previous email. [1] https://netbsd.org/docs/current/index.html [2] https://netbsd.org/docs/guide/en/chap-build.html -- Simon South simon at simonsouth.net ^ permalink raw reply [flat|nested] 28+ messages in thread
* [U-Boot] ROCK64 fails to boot using U-Boot TPL 2019-09-20 17:27 ` Simon South 2019-09-20 17:37 ` Matwey V. Kornilov @ 2019-09-20 18:09 ` Simon South 1 sibling, 0 replies; 28+ messages in thread From: Simon South @ 2019-09-20 18:09 UTC (permalink / raw) To: u-boot On 2019-09-20 1:27 p.m., Simon South wrote: > I'm going to apply Elaine's patches and see if that changes things. Unfortunately no; other than this line now appearing in the output: PMIC: RK8050 (on=0x10, off=0x04) nothing seems to have changed. Either the machine hangs or NetBSD's kernel panics. -- Simon South simon at simonsouth.net ^ permalink raw reply [flat|nested] 28+ messages in thread
* [U-Boot] ROCK64 fails to boot using U-Boot TPL 2019-09-19 8:56 [U-Boot] ROCK64 fails to boot using U-Boot TPL Simon South 2019-09-19 15:48 ` Matwey V. Kornilov @ 2019-09-19 16:29 ` Jagan Teki 2019-09-20 0:10 ` Simon South 2019-09-19 16:49 ` Matwey V. Kornilov ` (3 subsequent siblings) 5 siblings, 1 reply; 28+ messages in thread From: Jagan Teki @ 2019-09-19 16:29 UTC (permalink / raw) To: u-boot On Thu, Sep 19, 2019 at 4:02 PM Simon South <simon@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 ^ permalink raw reply [flat|nested] 28+ messages in thread
* [U-Boot] ROCK64 fails to boot using U-Boot TPL 2019-09-19 16:29 ` Jagan Teki @ 2019-09-20 0:10 ` Simon South 0 siblings, 0 replies; 28+ messages in thread From: Simon South @ 2019-09-20 0:10 UTC (permalink / raw) To: u-boot On 2019-09-19 12:29 p.m., Jagan Teki wrote: > 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 That configuration works and allows NetBSD to boot just fine. It's only when using U-Boot's own TPL that the kernel panics shortly after starting. Can you think of what the difference might be between the two TPLs? -- Simon South simon at simonsouth.net ^ permalink raw reply [flat|nested] 28+ messages in thread
* [U-Boot] ROCK64 fails to boot using U-Boot TPL 2019-09-19 8:56 [U-Boot] ROCK64 fails to boot using U-Boot TPL Simon South 2019-09-19 15:48 ` Matwey V. Kornilov 2019-09-19 16:29 ` Jagan Teki @ 2019-09-19 16:49 ` Matwey V. Kornilov 2019-09-20 10:03 ` Mark Kettenis ` (2 subsequent siblings) 5 siblings, 0 replies; 28+ messages in thread From: Matwey V. Kornilov @ 2019-09-19 16:49 UTC (permalink / raw) To: u-boot 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? > > ---------- > > U-Boot TPL 2019.10-rc3-00361-ga9fa70b7b7 (Sep 19 2019 - 03:11:29) I've just checked this commit: EFI Grub + Linux 5.2 is still booting for me. > 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 > Scanning disk rksdmmc at ff500000.blk... > Card did not respond to voltage select! > Scanning disk rksdmmc at ff520000.blk... > Disk rksdmmc at ff520000.blk 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 at 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}> > ^ permalink raw reply [flat|nested] 28+ messages in thread
* [U-Boot] ROCK64 fails to boot using U-Boot TPL 2019-09-19 8:56 [U-Boot] ROCK64 fails to boot using U-Boot TPL Simon South ` (2 preceding siblings ...) 2019-09-19 16:49 ` Matwey V. Kornilov @ 2019-09-20 10:03 ` Mark Kettenis 2019-09-20 10:22 ` Simon South 2019-09-21 14:26 ` [U-Boot] u-boot 2017 doesn't recognized pATA microdrive Carlo Pisani 2019-09-23 12:37 ` [U-Boot] ROCK64 fails to boot using U-Boot TPL Simon South 5 siblings, 1 reply; 28+ messages in thread From: Mark Kettenis @ 2019-09-20 10:03 UTC (permalink / raw) To: u-boot > From: Simon South <simon@simonsouth.net> > Date: Thu, 19 Sep 2019 04:56:57 -0400 > > 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? Hi Simon, One thing to look at is whether (voltage) regulators and/or clocks are set up right. I've seen the OpenBSD kernel crash because one of the voltages supplied to the SoC was too low. I beieve that was on the rockpro64. The regulator in question was a "boot-on" regulator so the OpenBSD kernel assumed the regulator was already properly configured. But I believe the Linux kernel doesn't trust the bootloader and will configure such a regulator anyway. In my rockpro64 case the regulator was skipped because of some DM-conversion fall-out. Using the U=boot "dm" commands you can check whether drivers for various regulators are enabled. If a "boot-on" regulator doesn't have a "*" next to it, that is a clear indication of a problem. Worth looking at "always-on" regulators as well. Cheers, Mark ^ permalink raw reply [flat|nested] 28+ messages in thread
* [U-Boot] ROCK64 fails to boot using U-Boot TPL 2019-09-20 10:03 ` Mark Kettenis @ 2019-09-20 10:22 ` Simon South 0 siblings, 0 replies; 28+ messages in thread From: Simon South @ 2019-09-20 10:22 UTC (permalink / raw) To: u-boot On 2019-09-20 6:03 a.m., Mark Kettenis wrote: > One thing to look at is whether (voltage) regulators and/or clocks are > set up right... Thanks, Mark. This is helpful. > But I believe the Linux kernel doesn't trust the bootloader and will > configure such a regulator anyway. This is my assumption right now as well, that Linux is itself configuring the RK3328 "correctly" and either the U-Boot TPL or the NetBSD kernel needs to be updated to do the same thing. I'm going to grab the Linux source and see if I can spot anything it does at startup that's missing from the TPL. > Using the U=boot "dm" commands you can check > whether drivers for various regulators are enabled. I tried capturing the output of these commands when each TPL is used and comparing them. Unfortunately nothing jumps out: After booting with U-Boot's TPL "dm tree" shows additional entries for the S/PDIF and MMC controllers, and when booting with Rockchip's TPL a (possibly spurious) "Initializing UCLASS_EFI" message is output, but otherwise they're the same. I've attached the two capture logs in case anyone is curious. -- Simon South simon at simonsouth.net -------------- next part -------------- dm tree Class Index Probed Driver Name ----------------------------------------------------------- root 0 [ + ] root_driver root_driver firmware 0 [ ] psci |-- psci clk 0 [ + ] fixed_rate_clock |-- xin24m syscon 0 [ + ] rk3328_syscon |-- syscon at ff100000 serial 0 [ + ] ns16550_serial |-- serial at ff130000 syscon 1 [ ] syscon |-- power-management at ff140000 i2c 0 [ ] i2c_rockchip |-- i2c at ff160000 simple_bus 0 [ ] generic_simple_bus |-- amba clk 1 [ + ] rockchip_rk3328_cru |-- clock-controller at ff440000 sysreset 0 [ ] rockchip_sysreset | `-- sysreset mmc 0 [ + ] rockchip_rk3288_dw_m |-- rksdmmc at ff500000 blk 0 [ + ] mmc_blk | `-- rksdmmc at ff500000.blk mmc 1 [ + ] rockchip_rk3288_dw_m |-- rksdmmc at ff520000 blk 1 [ ] mmc_blk | `-- rksdmmc at ff520000.blk eth 0 [ + ] gmac_rockchip |-- ethernet at ff540000 usb 0 [ ] ehci_generic |-- usb at ff5c0000 usb 1 [ ] ohci_generic |-- usb at ff5d0000 usb 2 [ ] dwc2_usb |-- usb at ff580000 pinctrl 0 [ + ] rockchip_rk3328_pinc |-- pinctrl gpio 0 [ + ] gpio_rockchip | |-- gpio0 at ff210000 gpio 1 [ + ] gpio_rockchip | |-- gpio1 at ff220000 gpio 2 [ ] gpio_rockchip | |-- gpio2 at ff230000 gpio 3 [ ] gpio_rockchip | |-- gpio3 at ff240000 pinconfig 0 [ ] pinconfig | |-- pcfg-pull-up pinconfig 1 [ ] pinconfig | |-- pcfg-pull-down pinconfig 2 [ ] pinconfig | |-- pcfg-pull-none pinconfig 3 [ ] pinconfig | |-- pcfg-pull-none-2ma pinconfig 4 [ ] pinconfig | |-- pcfg-pull-up-2ma pinconfig 5 [ ] pinconfig | |-- pcfg-pull-up-4ma pinconfig 6 [ ] pinconfig | |-- pcfg-pull-none-4ma pinconfig 7 [ ] pinconfig | |-- pcfg-pull-down-4ma pinconfig 8 [ ] pinconfig | |-- pcfg-pull-none-8ma pinconfig 9 [ ] pinconfig | |-- pcfg-pull-up-8ma pinconfig 10 [ ] pinconfig | |-- pcfg-pull-none-12ma pinconfig 11 [ ] pinconfig | |-- pcfg-pull-up-12ma pinconfig 12 [ ] pinconfig | |-- pcfg-output-high pinconfig 13 [ ] pinconfig | |-- pcfg-output-low pinconfig 14 [ ] pinconfig | |-- pcfg-input-high pinconfig 15 [ ] pinconfig | |-- pcfg-input pinconfig 16 [ ] pinconfig | |-- i2c0 pinconfig 17 [ ] pinconfig | | `-- i2c0-xfer pinconfig 18 [ ] pinconfig | |-- i2c1 pinconfig 19 [ ] pinconfig | | `-- i2c1-xfer pinconfig 20 [ ] pinconfig | |-- i2c2 pinconfig 21 [ ] pinconfig | | `-- i2c2-xfer pinconfig 22 [ ] pinconfig | |-- i2c3 pinconfig 23 [ ] pinconfig | | |-- i2c3-xfer pinconfig 24 [ ] pinconfig | | `-- i2c3-gpio pinconfig 25 [ ] pinconfig | |-- hdmi_i2c pinconfig 26 [ ] pinconfig | | `-- hdmii2c-xfer pinconfig 27 [ ] pinconfig | |-- uart0 pinconfig 28 [ ] pinconfig | | |-- uart0-xfer pinconfig 29 [ ] pinconfig | | |-- uart0-cts pinconfig 30 [ ] pinconfig | | |-- uart0-rts pinconfig 31 [ ] pinconfig | | `-- uart0-rts-gpio pinconfig 32 [ ] pinconfig | |-- uart1 pinconfig 33 [ ] pinconfig | | |-- uart1-xfer pinconfig 34 [ ] pinconfig | | |-- uart1-cts pinconfig 35 [ ] pinconfig | | |-- uart1-rts pinconfig 36 [ ] pinconfig | | `-- uart1-rts-gpio pinconfig 37 [ ] pinconfig | |-- uart2-0 pinconfig 38 [ ] pinconfig | | `-- uart2m0-xfer pinconfig 39 [ + ] pinconfig | |-- uart2-1 pinconfig 40 [ + ] pinconfig | | `-- uart2m1-xfer pinconfig 41 [ ] pinconfig | |-- spi0-0 pinconfig 42 [ ] pinconfig | | |-- spi0m0-clk pinconfig 43 [ ] pinconfig | | |-- spi0m0-cs0 pinconfig 44 [ ] pinconfig | | |-- spi0m0-tx pinconfig 45 [ ] pinconfig | | |-- spi0m0-rx pinconfig 46 [ ] pinconfig | | `-- spi0m0-cs1 pinconfig 47 [ ] pinconfig | |-- spi0-1 pinconfig 48 [ ] pinconfig | | |-- spi0m1-clk pinconfig 49 [ ] pinconfig | | |-- spi0m1-cs0 pinconfig 50 [ ] pinconfig | | |-- spi0m1-tx pinconfig 51 [ ] pinconfig | | |-- spi0m1-rx pinconfig 52 [ ] pinconfig | | `-- spi0m1-cs1 pinconfig 53 [ ] pinconfig | |-- spi0-2 pinconfig 54 [ ] pinconfig | | |-- spi0m2-clk pinconfig 55 [ ] pinconfig | | |-- spi0m2-cs0 pinconfig 56 [ ] pinconfig | | |-- spi0m2-tx pinconfig 57 [ ] pinconfig | | `-- spi0m2-rx pinconfig 58 [ ] pinconfig | |-- i2s1 pinconfig 59 [ ] pinconfig | | |-- i2s1-mclk pinconfig 60 [ ] pinconfig | | |-- i2s1-sclk pinconfig 61 [ ] pinconfig | | |-- i2s1-lrckrx pinconfig 62 [ ] pinconfig | | |-- i2s1-lrcktx pinconfig 63 [ ] pinconfig | | |-- i2s1-sdi pinconfig 64 [ ] pinconfig | | |-- i2s1-sdo pinconfig 65 [ ] pinconfig | | |-- i2s1-sdio1 pinconfig 66 [ ] pinconfig | | |-- i2s1-sdio2 pinconfig 67 [ ] pinconfig | | |-- i2s1-sdio3 pinconfig 68 [ ] pinconfig | | `-- i2s1-sleep pinconfig 69 [ ] pinconfig | |-- i2s2-0 pinconfig 70 [ ] pinconfig | | |-- i2s2m0-mclk pinconfig 71 [ ] pinconfig | | |-- i2s2m0-sclk pinconfig 72 [ ] pinconfig | | |-- i2s2m0-lrckrx pinconfig 73 [ ] pinconfig | | |-- i2s2m0-lrcktx pinconfig 74 [ ] pinconfig | | |-- i2s2m0-sdi pinconfig 75 [ ] pinconfig | | |-- i2s2m0-sdo pinconfig 76 [ ] pinconfig | | `-- i2s2m0-sleep pinconfig 77 [ ] pinconfig | |-- i2s2-1 pinconfig 78 [ ] pinconfig | | |-- i2s2m1-mclk pinconfig 129 [ + ] pinconfig | | `-- emmc-bus8 pinconfig 130 [ ] pinconfig | |-- pwm0 pinconfig 131 [ ] pinconfig | | `-- pwm0-pin pinconfig 132 [ ] pinconfig | |-- pwm1 pinconfig 133 [ ] pinconfig | | `-- pwm1-pin pinconfig 134 [ ] pinconfig | |-- pwm2 pinconfig 135 [ ] pinconfig | | `-- pwm2-pin pinconfig 136 [ ] pinconfig | |-- pwmir pinconfig 137 [ ] pinconfig | | `-- pwmir-pin pinconfig 138 [ ] pinconfig | |-- gmac-0 pinconfig 139 [ ] pinconfig | | |-- rgmiim0-pins pinconfig 140 [ ] pinconfig | | `-- rmiim0-pins pinconfig 141 [ + ] pinconfig | |-- gmac-1 pinconfig 142 [ + ] pinconfig | | |-- rgmiim1-pins pinconfig 143 [ ] pinconfig | | `-- rmiim1-pins pinconfig 144 [ ] pinconfig | |-- gmac2phy pinconfig 145 [ ] pinconfig | | |-- fephyled-speed100 pinconfig 146 [ ] pinconfig | | |-- fephyled-speed10 pinconfig 147 [ ] pinconfig | | |-- fephyled-duplex pinconfig 148 [ ] pinconfig | | |-- fephyled-rxm0 pinconfig 149 [ ] pinconfig | | |-- fephyled-txm0 pinconfig 150 [ ] pinconfig | | |-- fephyled-linkm0 pinconfig 151 [ ] pinconfig | | |-- fephyled-rxm1 pinconfig 152 [ ] pinconfig | | |-- fephyled-txm1 pinconfig 153 [ ] pinconfig | | `-- fephyled-linkm1 pinconfig 154 [ ] pinconfig | |-- tsadc_pin pinconfig 155 [ ] pinconfig | | |-- tsadc-int pinconfig 156 [ ] pinconfig | | `-- tsadc-gpio pinconfig 157 [ ] pinconfig | |-- hdmi_pin pinconfig 158 [ ] pinconfig | | |-- hdmi-cec pinconfig 159 [ ] pinconfig | | `-- hdmi-hpd pinconfig 160 [ ] pinconfig | |-- cif-0 pinconfig 161 [ ] pinconfig | | `-- dvp-d2d9-m0 pinconfig 162 [ ] pinconfig | |-- cif-1 pinconfig 163 [ ] pinconfig | | `-- dvp-d2d9-m1 pinconfig 164 [ ] pinconfig | |-- pmic pinconfig 165 [ ] pinconfig | | `-- pmic-int-l pinconfig 166 [ + ] pinconfig | `-- usb2 pinconfig 167 [ + ] pinconfig | `-- usb20-host-drv clk 2 [ + ] fixed_rate_clock |-- external-gmac-clock regulator 0 [ + ] fixed regulator |-- sdmmc-regulator regulator 1 [ + ] fixed regulator |-- vcc-host-5v-regulator regulator 2 [ + ] fixed regulator |-- vcc-sys ram 0 [ ] rockchip_rk3328_dmc |-- dmc usb 3 [ ] xhci_rockchip `-- usb at ff600000 => dm c\b \buclass uclass 0: root 0 * root_driver @ fcf36050, seq 0, (req -1) uclass 13: adc uclass 17: blk 0 * rksdmmc at ff500000.blk @ fcf36c60, seq 0, (req -1) 1 rksdmmc at ff520000.blk @ fcf36fc0 uclass 21: clk 0 * xin24m @ fcf36230, seq 1, (req -1) 1 * clock-controller at ff440000 @ fcf36800, seq 0, (req -1) 2 * external-gmac-clock @ fcf3ec80, seq 2, (req -1) EFI: Initializing UCLASS_EFI uclass 26: efi uclass 27: eth 0 * ethernet at ff540000 @ fcf37160, seq 0, (req -1) uclass 28: firmware 0 psci @ fcf36140 uclass 30: gpio 0 * gpio0 at ff210000 @ fcf37600, seq 0, (req -1) 1 * gpio1 at ff220000 @ fcf376b0, seq 1, (req -1) 2 gpio2 at ff230000 @ fcf37760 3 gpio3 at ff240000 @ fcf37810 uclass 32: i2c 0 i2c at ff160000 @ fcf36640, seq -1, (req 1) uclass 34: i2c_generic uclass 43: usb_mass_storage uclass 47: mmc 0 * rksdmmc at ff500000 @ fcf36a00, seq 1, (req 1) 1 * rksdmmc at ff520000 @ fcf36da0, seq 0, (req 0) uclass 50: nop uclass 59: phy uclass 60: pinconfig 0 pcfg-pull-up @ fcf37900 1 pcfg-pull-down @ fcf379b0 2 pcfg-pull-none @ fcf37a60 3 pcfg-pull-none-2ma @ fcf37b10 4 pcfg-pull-up-2ma @ fcf37bc0 5 pcfg-pull-up-4ma @ fcf37c70 6 pcfg-pull-none-4ma @ fcf37d20 7 pcfg-pull-down-4ma @ fcf37dd0 8 pcfg-pull-none-8ma @ fcf37e80 9 pcfg-pull-up-8ma @ fcf37f30 10 pcfg-pull-none-12ma @ fcf37fe0 11 pcfg-pull-up-12ma @ fcf38090 12 pcfg-output-high @ fcf38140 13 pcfg-output-low @ fcf381f0 14 pcfg-input-high @ fcf382a0 15 pcfg-input @ fcf38350 16 i2c0 @ fcf38400 17 i2c0-xfer @ fcf384b0 18 i2c1 @ fcf38560 19 i2c1-xfer @ fcf38610 20 i2c2 @ fcf386c0 21 i2c2-xfer @ fcf38770 22 i2c3 @ fcf38820 23 i2c3-xfer @ fcf388d0 24 i2c3-gpio @ fcf38980 25 hdmi_i2c @ fcf38a30 26 hdmii2c-xfer @ fcf38ae0 27 uart0 @ fcf38b90 28 uart0-xfer @ fcf38c40 29 uart0-cts @ fcf38cf0 30 uart0-rts @ fcf38da0 31 uart0-rts-gpio @ fcf38e50 32 uart1 @ fcf38f00 33 uart1-xfer @ fcf38fb0 34 uart1-cts @ fcf39060 35 uart1-rts @ fcf39110 36 uart1-rts-gpio @ fcf391c0 37 uart2-0 @ fcf39270 38 uart2m0-xfer @ fcf39320 39 * uart2-1 @ fcf393d0, seq 4, (req -1) 40 * uart2m1-xfer @ fcf39480, seq 5, (req -1) 41 spi0-0 @ fcf39530 42 spi0m0-clk @ fcf395e0 43 spi0m0-cs0 @ fcf39690 44 spi0m0-tx @ fcf39740 45 spi0m0-rx @ fcf397f0 46 spi0m0-cs1 @ fcf398a0 47 spi0-1 @ fcf39950 48 spi0m1-clk @ fcf39a00 49 spi0m1-cs0 @ fcf39ab0 50 spi0m1-tx @ fcf39b60 51 spi0m1-rx @ fcf39c10 52 spi0m1-cs1 @ fcf39cc0 53 spi0-2 @ fcf39d70 54 spi0m2-clk @ fcf39e20 55 spi0m2-cs0 @ fcf39ed0 56 spi0m2-tx @ fcf39f80 57 spi0m2-rx @ fcf3a030 58 i2s1 @ fcf3a0e0 59 i2s1-mclk @ fcf3a190 60 i2s1-sclk @ fcf3a240 61 i2s1-lrckrx @ fcf3a2f0 62 i2s1-lrcktx @ fcf3a3a0 63 i2s1-sdi @ fcf3a450 64 i2s1-sdo @ fcf3a500 65 i2s1-sdio1 @ fcf3a5b0 66 i2s1-sdio2 @ fcf3a660 67 i2s1-sdio3 @ fcf3a710 68 i2s1-sleep @ fcf3a7c0 69 i2s2-0 @ fcf3a870 70 i2s2m0-mclk @ fcf3a920 71 i2s2m0-sclk @ fcf3a9d0 72 i2s2m0-lrckrx @ fcf3aa80 73 i2s2m0-lrcktx @ fcf3ab30 74 i2s2m0-sdi @ fcf3abe0 75 i2s2m0-sdo @ fcf3ac90 76 i2s2m0-sleep @ fcf3ad40 77 i2s2-1 @ fcf3adf0 78 i2s2m1-mclk @ fcf3aea0 79 i2s2m1-sclk @ fcf3af50 80 i2sm1-lrckrx @ fcf3b000 81 i2s2m1-lrcktx @ fcf3b0b0 82 i2s2m1-sdi @ fcf3b160 83 i2s2m1-sdo @ fcf3b210 84 i2s2m1-sleep @ fcf3b2c0 85 spdif-0 @ fcf3b370 86 spdifm0-tx @ fcf3b420 87 spdif-1 @ fcf3b4d0 88 spdifm1-tx @ fcf3b580 89 spdif-2 @ fcf3b630 90 spdifm2-tx @ fcf3b6e0 91 sdmmc0-0 @ fcf3b790 92 sdmmc0m0-pwren @ fcf3b840 93 sdmmc0m0-gpio @ fcf3b8f0 94 * sdmmc0-1 @ fcf3b9a0, seq 0, (req -1) 95 sdmmc0m1-pwren @ fcf3ba50 96 * sdmmc0m1-gpio @ fcf3bb00, seq 1, (req -1) 97 * sdmmc0 @ fcf3bbb0, seq 10, (req -1) 98 * sdmmc0-clk @ fcf3bc60, seq 11, (req -1) 99 * sdmmc0-cmd @ fcf3bd10, seq 12, (req -1) 100 * sdmmc0-dectn @ fcf3bdc0, seq 13, (req -1) 101 sdmmc0-wrprt @ fcf3be70 102 sdmmc0-bus1 @ fcf3bf20 103 * sdmmc0-bus4 @ fcf3bfd0, seq 14, (req -1) 104 sdmmc0-gpio @ fcf3c080 105 sdmmc0ext @ fcf3c130 106 sdmmc0ext-clk @ fcf3c1e0 107 sdmmc0ext-cmd @ fcf3c290 108 sdmmc0ext-wrprt @ fcf3c340 109 sdmmc0ext-dectn @ fcf3c3f0 110 sdmmc0ext-bus1 @ fcf3c4a0 111 sdmmc0ext-bus4 @ fcf3c550 112 sdmmc0ext-gpio @ fcf3c600 113 sdmmc1 @ fcf3c6b0 114 sdmmc1-clk @ fcf3c760 115 sdmmc1-cmd @ fcf3c810 116 sdmmc1-pwren @ fcf3c8c0 117 sdmmc1-wrprt @ fcf3c970 118 sdmmc1-dectn @ fcf3ca20 119 sdmmc1-bus1 @ fcf3cad0 120 sdmmc1-bus4 @ fcf3cb80 121 sdmmc1-gpio @ fcf3cc30 122 * emmc @ fcf3cce0, seq 6, (req -1) 123 * emmc-clk @ fcf3cd90, seq 7, (req -1) 124 * emmc-cmd @ fcf3ce40, seq 8, (req -1) 125 emmc-pwren @ fcf3cef0 126 emmc-rstnout @ fcf3cfa0 127 emmc-bus1 @ fcf3d050 128 emmc-bus4 @ fcf3d100 129 * emmc-bus8 @ fcf3d1b0, seq 9, (req -1) 130 pwm0 @ fcf3d260 131 pwm0-pin @ fcf3d310 132 pwm1 @ fcf3d3c0 133 pwm1-pin @ fcf3d470 134 pwm2 @ fcf3d520 135 pwm2-pin @ fcf3d5d0 136 pwmir @ fcf3d680 137 pwmir-pin @ fcf3d730 138 gmac-0 @ fcf3d7e0 139 rgmiim0-pins @ fcf3d890 140 rmiim0-pins @ fcf3d940 141 * gmac-1 @ fcf3d9f0, seq 15, (req -1) 142 * rgmiim1-pins @ fcf3daa0, seq 16, (req -1) 143 rmiim1-pins @ fcf3db50 144 gmac2phy @ fcf3dc00 145 fephyled-speed100 @ fcf3dcb0 146 fephyled-speed10 @ fcf3dd60 147 fephyled-duplex @ fcf3de10 148 fephyled-rxm0 @ fcf3dec0 149 fephyled-txm0 @ fcf3df70 150 fephyled-linkm0 @ fcf3e020 151 fephyled-rxm1 @ fcf3e0d0 152 fephyled-txm1 @ fcf3e180 153 fephyled-linkm1 @ fcf3e230 154 tsadc_pin @ fcf3e2e0 155 tsadc-int @ fcf3e390 156 tsadc-gpio @ fcf3e440 157 hdmi_pin @ fcf3e4f0 158 hdmi-cec @ fcf3e5a0 159 hdmi-hpd @ fcf3e650 160 cif-0 @ fcf3e700 161 dvp-d2d9-m0 @ fcf3e7b0 162 cif-1 @ fcf3e860 163 dvp-d2d9-m1 @ fcf3e910 164 pmic @ fcf3e9c0 165 pmic-int-l @ fcf3ea70 166 * usb2 @ fcf3eb20, seq 2, (req -1) 167 * usb20-host-drv @ fcf3ebd0, seq 3, (req -1) uclass 61: pinctrl 0 * pinctrl @ fcf37510, seq 0, (req -1) uclass 62: pmic uclass 64: pwm uclass 66: ram 0 dmc @ fcf3f180 uclass 67: regulator 0 * sdmmc-regulator @ fcf3edb0, seq 0, (req -1) 1 * vcc-host-5v-regulator @ fcf3eee0, seq 1, (req -1) 2 * vcc-sys @ fcf3f010, seq 2, (req -1) uclass 69: reset uclass 72: serial 0 * serial at ff130000 @ fcf36450, seq 2, (req 2) uclass 73: simple_bus 0 amba @ fcf36730 uclass 76: spi uclass 77: spi_flash uclass 78: spi_generic uclass 80: syscon 0 * syscon at ff100000 @ fcf36360, seq 0, (req -1) 1 power-management at ff140000 @ fcf36530 uclass 81: sysreset 0 sysreset @ fcf368f0 uclass 86: usb 0 usb at ff5c0000 @ fcf372c0 1 usb at ff5d0000 @ fcf37370 2 usb at ff580000 @ fcf37420 3 usb at ff600000 @ fcf3f230 uclass 87: usb_dev_generic uclass 88: usb_hub uclass 89: usb => dm devres => -------------- next part -------------- m tre\b \b\b \b\b \b\b \b\b \b\b \b\b \bdm tree Class Index Probed Driver Name ----------------------------------------------------------- root 0 [ + ] root_driver root_driver firmware 0 [ ] psci |-- psci clk 0 [ + ] fixed_rate_clock |-- xin24m syscon 0 [ + ] rk3328_syscon |-- syscon at ff100000 serial 0 [ + ] ns16550_serial |-- serial at ff130000 syscon 1 [ ] syscon |-- power-management at ff140000 i2c 0 [ ] i2c_rockchip |-- i2c at ff160000 simple_bus 0 [ ] generic_simple_bus |-- amba clk 1 [ + ] rockchip_rk3328_cru |-- clock-controller at ff440000 sysreset 0 [ ] rockchip_sysreset | `-- sysreset mmc 0 [ + ] rockchip_rk3288_dw_m |-- rksdmmc at ff500000 blk 0 [ + ] mmc_blk | `-- rksdmmc at ff500000.blk mmc 1 [ + ] rockchip_rk3288_dw_m |-- rksdmmc at ff520000 blk 1 [ ] mmc_blk | `-- rksdmmc at ff520000.blk eth 0 [ + ] gmac_rockchip |-- ethernet at ff540000 usb 0 [ ] ehci_generic |-- usb at ff5c0000 usb 1 [ ] ohci_generic |-- usb at ff5d0000 usb 2 [ ] dwc2_usb |-- usb at ff580000 pinctrl 0 [ + ] rockchip_rk3328_pinc |-- pinctrl gpio 0 [ + ] gpio_rockchip | |-- gpio0 at ff210000 gpio 1 [ + ] gpio_rockchip | |-- gpio1 at ff220000 gpio 2 [ ] gpio_rockchip | |-- gpio2 at ff230000 gpio 3 [ ] gpio_rockchip | |-- gpio3 at ff240000 pinconfig 0 [ ] pinconfig | |-- pcfg-pull-up pinconfig 1 [ ] pinconfig | |-- pcfg-pull-down pinconfig 2 [ ] pinconfig | |-- pcfg-pull-none pinconfig 3 [ ] pinconfig | |-- pcfg-pull-none-2ma pinconfig 4 [ ] pinconfig | |-- pcfg-pull-up-2ma pinconfig 5 [ ] pinconfig | |-- pcfg-pull-up-4ma pinconfig 6 [ ] pinconfig | |-- pcfg-pull-none-4ma pinconfig 7 [ ] pinconfig | |-- pcfg-pull-down-4ma pinconfig 8 [ ] pinconfig | |-- pcfg-pull-none-8ma pinconfig 9 [ ] pinconfig | |-- pcfg-pull-up-8ma pinconfig 10 [ ] pinconfig | |-- pcfg-pull-none-12ma pinconfig 11 [ ] pinconfig | |-- pcfg-pull-up-12ma pinconfig 12 [ ] pinconfig | |-- pcfg-output-high pinconfig 13 [ ] pinconfig | |-- pcfg-output-low pinconfig 14 [ ] pinconfig | |-- pcfg-input-high pinconfig 15 [ ] pinconfig | |-- pcfg-input pinconfig 16 [ ] pinconfig | |-- i2c0 pinconfig 17 [ ] pinconfig | | `-- i2c0-xfer pinconfig 18 [ ] pinconfig | |-- i2c1 pinconfig 19 [ ] pinconfig | | `-- i2c1-xfer pinconfig 20 [ ] pinconfig | |-- i2c2 pinconfig 21 [ ] pinconfig | | `-- i2c2-xfer pinconfig 22 [ ] pinconfig | |-- i2c3 pinconfig 23 [ ] pinconfig | | |-- i2c3-xfer pinconfig 24 [ ] pinconfig | | `-- i2c3-gpio pinconfig 25 [ ] pinconfig | |-- hdmi_i2c pinconfig 26 [ ] pinconfig | | `-- hdmii2c-xfer pinconfig 27 [ ] pinconfig | |-- uart0 pinconfig 28 [ ] pinconfig | | |-- uart0-xfer pinconfig 29 [ ] pinconfig | | |-- uart0-cts pinconfig 30 [ ] pinconfig | | |-- uart0-rts pinconfig 31 [ ] pinconfig | | `-- uart0-rts-gpio pinconfig 32 [ ] pinconfig | |-- uart1 pinconfig 33 [ ] pinconfig | | |-- uart1-xfer pinconfig 34 [ ] pinconfig | | |-- uart1-cts pinconfig 35 [ ] pinconfig | | |-- uart1-rts pinconfig 36 [ ] pinconfig | | `-- uart1-rts-gpio pinconfig 37 [ ] pinconfig | |-- uart2-0 pinconfig 38 [ ] pinconfig | | `-- uart2m0-xfer pinconfig 39 [ + ] pinconfig | |-- uart2-1 pinconfig 40 [ + ] pinconfig | | `-- uart2m1-xfer pinconfig 41 [ ] pinconfig | |-- spi0-0 pinconfig 42 [ ] pinconfig | | |-- spi0m0-clk pinconfig 43 [ ] pinconfig | | |-- spi0m0-cs0 pinconfig 44 [ ] pinconfig | | |-- spi0m0-tx pinconfig 45 [ ] pinconfig | | |-- spi0m0-rx pinconfig 46 [ ] pinconfig | | `-- spi0m0-cs1 pinconfig 47 [ ] pinconfig | |-- spi0-1 pinconfig 48 [ ] pinconfig | | |-- spi0m1-clk pinconfig 49 [ ] pinconfig | | |-- spi0m1-cs0 pinconfig 50 [ ] pinconfig | | |-- spi0m1-tx pinconfig 51 [ ] pinconfig | | |-- spi0m1-rx pinconfig 52 [ ] pinconfig | | `-- spi0m1-cs1 pinconfig 53 [ ] pinconfig | |-- spi0-2 pinconfig 54 [ ] pinconfig | | |-- spi0m2-clk pinconfig 55 [ ] pinconfig | | |-- spi0m2-cs0 pinconfig 56 [ ] pinconfig | | |-- spi0m2-tx pinconfig 57 [ ] pinconfig | | `-- spi0m2-rx pinconfig 58 [ ] pinconfig | |-- i2s1 pinconfig 59 [ ] pinconfig | | |-- i2s1-mclk pinconfig 60 [ ] pinconfig | | |-- i2s1-sclk pinconfig 61 [ ] pinconfig | | |-- i2s1-lrckrx pinconfig 62 [ ] pinconfig | | |-- i2s1-lrcktx pinconfig 63 [ ] pinconfig | | |-- i2s1-sdi pinconfig 64 [ ] pinconfig | | |-- i2s1-sdo pinconfig 65 [ ] pinconfig | | |-- i2s1-sdio1 pinconfig 66 [ ] pinconfig | | |-- i2s1-sdio2 pinconfig 67 [ ] pinconfig | | |-- i2s1-sdio3 pinconfig 68 [ ] pinconfig | | `-- i2s1-sleep pinconfig 69 [ ] pinconfig | |-- i2s2-0 pinconfig 70 [ ] pinconfig | | |-- i2s2m0-mclk pinconfig 71 [ ] pinconfig | | |-- i2s2m0-sclk pinconfig 72 [ ] pinconfig | | |-- i2s2m0-lrckrx pinconfig 73 [ ] pinconfig | | |-- i2s2m0-lrcktx pinconfig 74 [ ] pinconfig | | |-- i2s2m0-sdi pinconfig 75 [ ] pinconfig | | |-- i2s2m0-sdo pinconfig 76 [ ] pinconfig | | `-- i2s2m0-sleep pinconfig 77 [ ] pinconfig | |-- i2s2-1 pinconfig 78 [ ] pinconfig | | |-- i2s2m1-mclk pinconfig 79 [ ] pinconfig | | |-- i2s2m1-sclk pinconfig 80 [ ] pinconfig | | |-- i2sm1-lrckrx pinconfig 81 [ ] pinconfig | | |-- i2s2m1-lrcktx pinconfig 82 [ ] pinconfig | | |-- i2s2m1-sdi pinconfig 83 [ ] pinconfig | | |-- i2s2m1-sdo pinconfig 84 [ ] pinconfig | | `-- i2s2m1-sleep pinconfig 85 [ ] pinconfig | |-- spdif-0 pinconfig 86 [ ] pinconfig | | `-- spdifm0-tx pinconfig 87 [ ] pinconfig | |-- spdif-1 pinconfig 88 [ ] pinconfig | | `-- spdifm1-tx pinconfig 89 [ ] pinconfig | |-- spdif-2 pinconfig 90 [ ] pinconfig | | `-- spdifm2-tx pinconfig 91 [ ] pinconfig | |-- sdmmc0-0 pinconfig 92 [ ] pinconfig | | |-- sdmmc0m0-pwren pinconfig 93 [ ] pinconfig | | `-- sdmmc0m0-gpio pinconfig 94 [ + ] pinconfig | |-- sdmmc0-1 pinconfig 95 [ ] pinconfig | | |-- sdmmc0m1-pwren pinconfig 96 [ + ] pinconfig | | `-- sdmmc0m1-gpio pinconfig 97 [ + ] pinconfig | |-- sdmmc0 pinconfig 98 [ + ] pinconfig | | |-- sdmmc0-clk pinconfig 99 [ + ] pinconfig | | |-- sdmmc0-cmd pinconfig 100 [ + ] pinconfig | | |-- sdmmc0-dectn pinconfig 101 [ ] pinconfig | | |-- sdmmc0-wrprt pinconfig 102 [ ] pinconfig | | |-- sdmmc0-bus1 pinconfig 103 [ + ] pinconfig | | |-- sdmmc0-bus4 pinconfig 104 [ ] pinconfig | | `-- sdmmc0-gpio pinconfig 105 [ ] pinconfig | |-- sdmmc0ext pinconfig 106 [ ] pinconfig | | |-- sdmmc0ext-clk pinconfig 107 [ ] pinconfig | | |-- sdmmc0ext-cmd pinconfig 108 [ ] pinconfig | | |-- sdmmc0ext-wrprt pinconfig 109 [ ] pinconfig | | |-- sdmmc0ext-dectn pinconfig 110 [ ] pinconfig | | |-- sdmmc0ext-bus1 pinconfig 111 [ ] pinconfig | | |-- sdmmc0ext-bus4 pinconfig 112 [ ] pinconfig | | `-- sdmmc0ext-gpio pinconfig 113 [ ] pinconfig | |-- sdmmc1 pinconfig 114 [ ] pinconfig | | |-- sdmmc1-clk pinconfig 115 [ ] pinconfig | | |-- sdmmc1-cmd pinconfig 116 [ ] pinconfig | | |-- sdmmc1-pwren pinconfig 117 [ ] pinconfig | | |-- sdmmc1-wrprt pinconfig 118 [ ] pinconfig | | |-- sdmmc1-dectn pinconfig 119 [ ] pinconfig | | |-- sdmmc1-bus1 pinconfig 120 [ ] pinconfig | | |-- sdmmc1-bus4 pinconfig 121 [ ] pinconfig | | `-- sdmmc1-gpio pinconfig 122 [ + ] pinconfig | |-- emmc pinconfig 123 [ + ] pinconfig | | |-- emmc-clk pinconfig 124 [ + ] pinconfig | | |-- emmc-cmd pinconfig 125 [ ] pinconfig | | |-- emmc-pwren pinconfig 126 [ ] pinconfig | | |-- emmc-rstnout pinconfig 127 [ ] pinconfig | | |-- emmc-bus1 pinconfig 128 [ ] pinconfig | | |-- emmc-bus4 pinconfig 129 [ + ] pinconfig | | `-- emmc-bus8 pinconfig 130 [ ] pinconfig | |-- pwm0 pinconfig 131 [ ] pinconfig | | `-- pwm0-pin pinconfig 132 [ ] pinconfig | |-- pwm1 pinconfig 133 [ ] pinconfig | | `-- pwm1-pin pinconfig 134 [ ] pinconfig | |-- pwm2 pinconfig 135 [ ] pinconfig | | `-- pwm2-pin pinconfig 136 [ ] pinconfig | |-- pwmir pinconfig 137 [ ] pinconfig | | `-- pwmir-pin pinconfig 138 [ ] pinconfig | |-- gmac-0 pinconfig 139 [ ] pinconfig | | |-- rgmiim0-pins pinconfig 140 [ ] pinconfig | | `-- rmiim0-pins pinconfig 141 [ + ] pinconfig | |-- gmac-1 pinconfig 142 [ + ] pinconfig | | |-- rgmiim1-pins pinconfig 143 [ ] pinconfig | | `-- rmiim1-pins pinconfig 144 [ ] pinconfig | |-- gmac2phy pinconfig 145 [ ] pinconfig | | |-- fephyled-speed100 pinconfig 146 [ ] pinconfig | | |-- fephyled-speed10 pinconfig 147 [ ] pinconfig | | |-- fephyled-duplex pinconfig 148 [ ] pinconfig | | |-- fephyled-rxm0 pinconfig 149 [ ] pinconfig | | |-- fephyled-txm0 pinconfig 150 [ ] pinconfig | | |-- fephyled-linkm0 pinconfig 151 [ ] pinconfig | | |-- fephyled-rxm1 pinconfig 152 [ ] pinconfig | | |-- fephyled-txm1 pinconfig 153 [ ] pinconfig | | `-- fephyled-linkm1 pinconfig 154 [ ] pinconfig | |-- tsadc_pin pinconfig 155 [ ] pinconfig | | |-- tsadc-int pinconfig 156 [ ] pinconfig | | `-- tsadc-gpio pinconfig 157 [ ] pinconfig | |-- hdmi_pin pinconfig 158 [ ] pinconfig | | |-- hdmi-cec pinconfig 159 [ ] pinconfig | | `-- hdmi-hpd pinconfig 160 [ ] pinconfig | |-- cif-0 pinconfig 161 [ ] pinconfig | | `-- dvp-d2d9-m0 pinconfig 162 [ ] pinconfig | |-- cif-1 pinconfig 163 [ ] pinconfig | | `-- dvp-d2d9-m1 pinconfig 164 [ ] pinconfig | |-- pmic pinconfig 165 [ ] pinconfig | | `-- pmic-int-l pinconfig 166 [ + ] pinconfig | `-- usb2 pinconfig 167 [ + ] pinconfig | `-- usb20-host-drv clk 2 [ + ] fixed_rate_clock |-- external-gmac-clock regulator 0 [ + ] fixed regulator |-- sdmmc-regulator regulator 1 [ + ] fixed regulator |-- vcc-host-5v-regulator regulator 2 [ + ] fixed regulator |-- vcc-sys ram 0 [ ] rockchip_rk3328_dmc |-- dmc usb 3 [ ] xhci_rockchip `-- usb at ff600000 => dm uclass uclass 0: root 0 * root_driver @ fcf36050, seq 0, (req -1) uclass 13: adc uclass 17: blk 0 * rksdmmc at ff500000.blk @ fcf36c60, seq 0, (req -1) 1 rksdmmc at ff520000.blk @ fcf36fc0 uclass 21: clk 0 * xin24m @ fcf36230, seq 1, (req -1) 1 * clock-controller at ff440000 @ fcf36800, seq 0, (req -1) 2 * external-gmac-clock @ fcf3ec80, seq 2, (req -1) uclass 26: efi uclass 27: eth 0 * ethernet at ff540000 @ fcf37160, seq 0, (req -1) uclass 28: firmware 0 psci @ fcf36140 uclass 30: gpio 0 * gpio0 at ff210000 @ fcf37600, seq 0, (req -1) 1 * gpio1 at ff220000 @ fcf376b0, seq 1, (req -1) 2 gpio2 at ff230000 @ fcf37760 3 gpio3 at ff240000 @ fcf37810 uclass 32: i2c 0 i2c at ff160000 @ fcf36640, seq -1, (req 1) uclass 34: i2c_generic uclass 43: usb_mass_storage uclass 47: mmc 0 * rksdmmc at ff500000 @ fcf36a00, seq 1, (req 1) 1 * rksdmmc at ff520000 @ fcf36da0, seq 0, (req 0) uclass 50: nop uclass 59: phy uclass 60: pinconfig 0 pcfg-pull-up @ fcf37900 1 pcfg-pull-down @ fcf379b0 2 pcfg-pull-none @ fcf37a60 3 pcfg-pull-none-2ma @ fcf37b10 4 pcfg-pull-up-2ma @ fcf37bc0 5 pcfg-pull-up-4ma @ fcf37c70 6 pcfg-pull-none-4ma @ fcf37d20 7 pcfg-pull-down-4ma @ fcf37dd0 8 pcfg-pull-none-8ma @ fcf37e80 9 pcfg-pull-up-8ma @ fcf37f30 10 pcfg-pull-none-12ma @ fcf37fe0 11 pcfg-pull-up-12ma @ fcf38090 12 pcfg-output-high @ fcf38140 13 pcfg-output-low @ fcf381f0 14 pcfg-input-high @ fcf382a0 15 pcfg-input @ fcf38350 16 i2c0 @ fcf38400 17 i2c0-xfer @ fcf384b0 18 i2c1 @ fcf38560 19 i2c1-xfer @ fcf38610 20 i2c2 @ fcf386c0 21 i2c2-xfer @ fcf38770 22 i2c3 @ fcf38820 23 i2c3-xfer @ fcf388d0 24 i2c3-gpio @ fcf38980 25 hdmi_i2c @ fcf38a30 26 hdmii2c-xfer @ fcf38ae0 27 uart0 @ fcf38b90 28 uart0-xfer @ fcf38c40 29 uart0-cts @ fcf38cf0 30 uart0-rts @ fcf38da0 31 uart0-rts-gpio @ fcf38e50 32 uart1 @ fcf38f00 33 uart1-xfer @ fcf38fb0 34 uart1-cts @ fcf39060 35 uart1-rts @ fcf39110 36 uart1-rts-gpio @ fcf391c0 37 uart2-0 @ fcf39270 38 uart2m0-xfer @ fcf39320 39 * uart2-1 @ fcf393d0, seq 4, (req -1) 40 * uart2m1-xfer @ fcf39480, seq 5, (req -1) 41 spi0-0 @ fcf39530 42 spi0m0-clk @ fcf395e0 43 spi0m0-cs0 @ fcf39690 44 spi0m0-tx @ fcf39740 45 spi0m0-rx @ fcf397f0 46 spi0m0-cs1 @ fcf398a0 47 spi0-1 @ fcf39950 48 spi0m1-clk @ fcf39a00 49 spi0m1-cs0 @ fcf39ab0 50 spi0m1-tx @ fcf39b60 51 spi0m1-rx @ fcf39c10 52 spi0m1-cs1 @ fcf39cc0 53 spi0-2 @ fcf39d70 54 spi0m2-clk @ fcf39e20 55 spi0m2-cs0 @ fcf39ed0 56 spi0m2-tx @ fcf39f80 57 spi0m2-rx @ fcf3a030 58 i2s1 @ fcf3a0e0 59 i2s1-mclk @ fcf3a190 60 i2s1-sclk @ fcf3a240 61 i2s1-lrckrx @ fcf3a2f0 62 i2s1-lrcktx @ fcf3a3a0 63 i2s1-sdi @ fcf3a450 64 i2s1-sdo @ fcf3a500 65 i2s1-sdio1 @ fcf3a5b0 66 i2s1-sdio2 @ fcf3a660 67 i2s1-sdio3 @ fcf3a710 68 i2s1-sleep @ fcf3a7c0 69 i2s2-0 @ fcf3a870 70 i2s2m0-mclk @ fcf3a920 71 i2s2m0-sclk @ fcf3a9d0 72 i2s2m0-lrckrx @ fcf3aa80 73 i2s2m0-lrcktx @ fcf3ab30 74 i2s2m0-sdi @ fcf3abe0 75 i2s2m0-sdo @ fcf3ac90 76 i2s2m0-sleep @ fcf3ad40 77 i2s2-1 @ fcf3adf0 78 i2s2m1-mclk @ fcf3aea0 79 i2s2m1-sclk @ fcf3af50 80 i2sm1-lrckrx @ fcf3b000 81 i2s2m1-lrcktx @ fcf3b0b0 82 i2s2m1-sdi @ fcf3b160 83 i2s2m1-sdo @ fcf3b210 84 i2s2m1-sleep @ fcf3b2c0 85 spdif-0 @ fcf3b370 86 spdifm0-tx @ fcf3b420 87 spdif-1 @ fcf3b4d0 88 spdifm1-tx @ fcf3b580 89 spdif-2 @ fcf3b630 90 spdifm2-tx @ fcf3b6e0 91 sdmmc0-0 @ fcf3b790 92 sdmmc0m0-pwren @ fcf3b840 93 sdmmc0m0-gpio @ fcf3b8f0 94 * sdmmc0-1 @ fcf3b9a0, seq 0, (req -1) 95 sdmmc0m1-pwren @ fcf3ba50 96 * sdmmc0m1-gpio @ fcf3bb00, seq 1, (req -1) 97 * sdmmc0 @ fcf3bbb0, seq 10, (req -1) 98 * sdmmc0-clk @ fcf3bc60, seq 11, (req -1) 99 * sdmmc0-cmd @ fcf3bd10, seq 12, (req -1) 100 * sdmmc0-dectn @ fcf3bdc0, seq 13, (req -1) 101 sdmmc0-wrprt @ fcf3be70 102 sdmmc0-bus1 @ fcf3bf20 103 * sdmmc0-bus4 @ fcf3bfd0, seq 14, (req -1) 104 sdmmc0-gpio @ fcf3c080 105 sdmmc0ext @ fcf3c130 106 sdmmc0ext-clk @ fcf3c1e0 107 sdmmc0ext-cmd @ fcf3c290 108 sdmmc0ext-wrprt @ fcf3c340 109 sdmmc0ext-dectn @ fcf3c3f0 110 sdmmc0ext-bus1 @ fcf3c4a0 111 sdmmc0ext-bus4 @ fcf3c550 112 sdmmc0ext-gpio @ fcf3c600 113 sdmmc1 @ fcf3c6b0 114 sdmmc1-clk @ fcf3c760 115 sdmmc1-cmd @ fcf3c810 116 sdmmc1-pwren @ fcf3c8c0 117 sdmmc1-wrprt @ fcf3c970 118 sdmmc1-dectn @ fcf3ca20 119 sdmmc1-bus1 @ fcf3cad0 120 sdmmc1-bus4 @ fcf3cb80 121 sdmmc1-gpio @ fcf3cc30 122 * emmc @ fcf3cce0, seq 6, (req -1) 123 * emmc-clk @ fcf3cd90, seq 7, (req -1) 124 * emmc-cmd @ fcf3ce40, seq 8, (req -1) 125 emmc-pwren @ fcf3cef0 126 emmc-rstnout @ fcf3cfa0 127 emmc-bus1 @ fcf3d050 128 emmc-bus4 @ fcf3d100 129 * emmc-bus8 @ fcf3d1b0, seq 9, (req -1) 130 pwm0 @ fcf3d260 131 pwm0-pin @ fcf3d310 132 pwm1 @ fcf3d3c0 133 pwm1-pin @ fcf3d470 134 pwm2 @ fcf3d520 135 pwm2-pin @ fcf3d5d0 136 pwmir @ fcf3d680 137 pwmir-pin @ fcf3d730 138 gmac-0 @ fcf3d7e0 139 rgmiim0-pins @ fcf3d890 140 rmiim0-pins @ fcf3d940 141 * gmac-1 @ fcf3d9f0, seq 15, (req -1) 142 * rgmiim1-pins @ fcf3daa0, seq 16, (req -1) 143 rmiim1-pins @ fcf3db50 144 gmac2phy @ fcf3dc00 145 fephyled-speed100 @ fcf3dcb0 146 fephyled-speed10 @ fcf3dd60 147 fephyled-duplex @ fcf3de10 148 fephyled-rxm0 @ fcf3dec0 149 fephyled-txm0 @ fcf3df70 150 fephyled-linkm0 @ fcf3e020 151 fephyled-rxm1 @ fcf3e0d0 152 fephyled-txm1 @ fcf3e180 153 fephyled-linkm1 @ fcf3e230 154 tsadc_pin @ fcf3e2e0 155 tsadc-int @ fcf3e390 156 tsadc-gpio @ fcf3e440 157 hdmi_pin @ fcf3e4f0 158 hdmi-cec @ fcf3e5a0 159 hdmi-hpd @ fcf3e650 160 cif-0 @ fcf3e700 161 dvp-d2d9-m0 @ fcf3e7b0 162 cif-1 @ fcf3e860 163 dvp-d2d9-m1 @ fcf3e910 164 pmic @ fcf3e9c0 165 pmic-int-l @ fcf3ea70 166 * usb2 @ fcf3eb20, seq 2, (req -1) 167 * usb20-host-drv @ fcf3ebd0, seq 3, (req -1) uclass 61: pinctrl 0 * pinctrl @ fcf37510, seq 0, (req -1) uclass 62: pmic uclass 64: pwm uclass 66: ram 0 dmc @ fcf3f180 uclass 67: regulator 0 * sdmmc-regulator @ fcf3edb0, seq 0, (req -1) 1 * vcc-host-5v-regulator @ fcf3eee0, seq 1, (req -1) 2 * vcc-sys @ fcf3f010, seq 2, (req -1) uclass 69: reset uclass 72: serial 0 * serial at ff130000 @ fcf36450, seq 2, (req 2) uclass 73: simple_bus 0 amba @ fcf36730 uclass 76: spi uclass 77: spi_flash uclass 78: spi_generic uclass 80: syscon 0 * syscon at ff100000 @ fcf36360, seq 0, (req -1) 1 power-management at ff140000 @ fcf36530 uclass 81: sysreset 0 sysreset @ fcf368f0 uclass 86: usb 0 usb at ff5c0000 @ fcf372c0 1 usb at ff5d0000 @ fcf37370 2 usb at ff580000 @ fcf37420 3 usb at ff600000 @ fcf3f230 uclass 87: usb_dev_generic uclass 88: usb_hub uclass 89: usb => dm devres => ^ permalink raw reply [flat|nested] 28+ messages in thread
* [U-Boot] u-boot 2017 doesn't recognized pATA microdrive 2019-09-19 8:56 [U-Boot] ROCK64 fails to boot using U-Boot TPL Simon South ` (3 preceding siblings ...) 2019-09-20 10:03 ` Mark Kettenis @ 2019-09-21 14:26 ` Carlo Pisani 2019-09-23 12:37 ` [U-Boot] ROCK64 fails to boot using U-Boot TPL Simon South 5 siblings, 0 replies; 28+ messages in thread From: Carlo Pisani @ 2019-09-21 14:26 UTC (permalink / raw) To: u-boot hi I have added the IDE support and I am able to operate with pATA harddrives, but microdrives are not recognized ... any help to what and where I have to investigate? ^ permalink raw reply [flat|nested] 28+ messages in thread
* [U-Boot] ROCK64 fails to boot using U-Boot TPL 2019-09-19 8:56 [U-Boot] ROCK64 fails to boot using U-Boot TPL Simon South ` (4 preceding siblings ...) 2019-09-21 14:26 ` [U-Boot] u-boot 2017 doesn't recognized pATA microdrive Carlo Pisani @ 2019-09-23 12:37 ` Simon South 5 siblings, 0 replies; 28+ messages in thread From: Simon South @ 2019-09-23 12:37 UTC (permalink / raw) To: u-boot On 2019-09-19 4:56 a.m., Simon South 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... This definitely seems memory-related: After enabling the "mtest" command (patch attached) and running the memory test at the U-Boot shell I see all kinds of errors: Testing 02000000 ... 03ffffff: Iteration: 1 FAILURE (read/write) @ 0x020014c0: expected 0x00000299, actual 0x00000219) FAILURE (read/write) @ 0x02001580: expected 0x000002b1, actual 0x00000231) FAILURE (read/write) @ 0x02001680: expected 0x000002d1, actual 0x00000251) FAILURE (read/write) @ 0x02001e40: expected 0x000003c9, actual 0x00000349) ... Using the Rockchip TPL instead the memory test runs fine. Is anyone else able to reproduce this? My guess is the supplied configuration parameters (in arch/arm/dts/rk3328-sdram-lpddr3-1600.dtsi) for the RK3328's SDRAM controller aren't a match for the SpecTek LPDDR3 module on the 4GB ROCK64. (The Rockchip TPL seems to apply a different configuration, but also claims to drive the memory at only 333MHz.) Assuming I'm on the right track here, what's the likelihood I'd be able to determine from the SpecTek datasheet how the SDRAM controller's configuration should be tweaked to get this working? -- Simon South simon at simonsouth.net -------------- next part -------------- A non-text attachment was scrubbed... Name: rock64-enable-mtest.patch Type: text/x-patch Size: 837 bytes Desc: not available URL: <http://lists.denx.de/pipermail/u-boot/attachments/20190923/e19d9d5b/attachment.bin> ^ permalink raw reply [flat|nested] 28+ messages in thread
end of thread, other threads:[~2019-09-24 18:50 UTC | newest] Thread overview: 28+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2019-09-19 8:56 [U-Boot] ROCK64 fails to boot using U-Boot TPL Simon South 2019-09-19 15:48 ` Matwey V. Kornilov 2019-09-20 0:06 ` Simon South 2019-09-20 7:39 ` Matwey V. Kornilov 2019-09-20 9:28 ` Simon South 2019-09-20 10:07 ` Matwey V. Kornilov 2019-09-20 10:14 ` Martin Husemann 2019-09-20 16:43 ` Matwey V. Kornilov 2019-09-20 17:27 ` Simon South 2019-09-20 17:37 ` Matwey V. Kornilov 2019-09-20 17:43 ` Simon South 2019-09-21 7:47 ` Matwey V. Kornilov 2019-09-21 11:59 ` Simon South 2019-09-21 12:29 ` Matwey V. Kornilov 2019-09-21 13:37 ` Simon South 2019-09-21 17:15 ` Matwey V. Kornilov 2019-09-24 16:54 ` Matwey V. Kornilov 2019-09-24 17:54 ` Simon South 2019-09-24 18:35 ` Matwey V. Kornilov 2019-09-24 18:50 ` Simon South 2019-09-20 18:09 ` Simon South 2019-09-19 16:29 ` Jagan Teki 2019-09-20 0:10 ` Simon South 2019-09-19 16:49 ` Matwey V. Kornilov 2019-09-20 10:03 ` Mark Kettenis 2019-09-20 10:22 ` Simon South 2019-09-21 14:26 ` [U-Boot] u-boot 2017 doesn't recognized pATA microdrive Carlo Pisani 2019-09-23 12:37 ` [U-Boot] ROCK64 fails to boot using U-Boot TPL Simon South
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.