U-boot 2020.07 for rockpro64 broken ?

Søren Schmidt soren.schmidt at gmail.com
Thu Jul 30 22:08:00 UTC 2020


> On 30 Jul 2020, at 21.07, William Carson <freebsd at dsllsn.net> wrote:
> 
>> On Jul 30, 2020, at 7:48 AM, Søren Schmidt <soren.schmidt at gmail.com> wrote:
>> 
>> Hi
>> 
>> I just tried upgrading to the latest u-boot 2020.07 and that makes my rockpro64 stop in its tracks:
>> 
>> U-Boot TPL 2020.07 (Jul 30 2020 - 15:42:36)
>> Channel 0: LPDDR4, 50MHz
>> BW=32 Col=10 Bk=8 CS0 Row=16/15 CS=1 Die BW=16 Size=2048MB
>> Channel 1: LPDDR4, 50MHz
>> BW=32 Col=10 Bk=8 CS0 Row=16/15 CS=1 Die BW=16 Size=2048MB
>> 256B stride
>> 256B stride
>> lpddr4_set_rate: change freq to 400000000 mhz 0, 1
>> lpddr4_set_rate: change freq to 800000000 mhz 1, 0
>> Trying to boot from BOOTROM
>> Returning to boot ROM...
>> 
>> U-Boot SPL 2020.07 (Jul 30 2020 - 15:42:36 +0200)
>> Trying to boot from MMC1
>> 
>> Then nothing happens. The 2020.04 version work flawlessly, any ideas ?
> 
> Is it possible your RX line is connected? I run into this on my RockPro64
> all the time if I leave the serial connected.

Hi

Hmm, that’s not a problem for me, however recompiling u-boot locally seems to have solved that problem…

But that just make it fail later during boot unfortunately:

Booting [/boot/kernel/kernel]...               
Using DTB provided by EFI at 0x80ea000.
EFI framebuffer information:
addr, size     0xf6000000, 0x7e9000
dimensions     1920 x 1080
stride         1920
masks          0x00ff0000, 0x0000ff00, 0x000000ff, 0xff000000
---<<BOOT>>---
KDB: debugger backends: ddb
KDB: current backend: ddb
Copyright (c) 1992-2020 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
	The Regents of the University of California. All rights reserved.
FreeBSD is a registered trademark of The FreeBSD Foundation.
FreeBSD 13.0-CURRENT #0 r279M: Thu Jul 30 20:03:01 CEST 2020
    sos at current.deepcore.dk:/home/sos/FreeBSD/embedded/aarch64-obj/home/sos/FreeBSD/current/arm64.aarch64/sys/GENERIC arm64
FreeBSD clang version 10.0.1 (git at github.com:llvm/llvm-project.git llvmorg-10.0.1-rc2-0-g77d76b71d7d)
WARNING: WITNESS option enabled, expect reduced performance.
VT(efifb): resolution 1920x1080
module firmware already present!
real memory  = 4158357504 (3965 MB)
avail memory = 4023341056 (3836 MB)
Starting CPU 1 (1)
Starting CPU 2 (2)
Starting CPU 3 (3)
FreeBSD/SMP: Multiprocessor System Detected: 4 CPUs
arc4random: WARNING: initial seeding bypassed the cryptographic random device because it was not yet seeded and the knob 'bypass_before_seeding' was enabled.
random: entropy device external interface
MAP f0f0e000 mode 2 pages 1
MAP f0f14000 mode 2 pages 2
MAP f3f30000 mode 2 pages 16
WARNING: Device "kbd" is Giant locked and may be deleted before FreeBSD 13.0.
kbd0 at kbdmux0
WARNING: Device "openfirm" is Giant locked and may be deleted before FreeBSD 13.0.
ofwbus0: <Open Firmware Device Tree>
clk_fixed0: <Fixed clock> on ofwbus0
simplebus0: <Flattened device tree simple bus> on ofwbus0
rk_grf0: <RockChip General Register Files> mem 0xff320000-0xff320fff on ofwbus0
rk3399_pmucru0: <Rockchip RK3399 PMU Clock and Reset Unit> mem 0xff750000-0xff750fff on ofwbus0
rk3399_cru0: <Rockchip RK3399 Clock and Reset Unit> mem 0xff760000-0xff760fff on ofwbus0
rk_grf1: <RockChip General Register Files> mem 0xff770000-0xff77ffff on ofwbus0
Fatal data abort:
  x0:             2001
  x1: ffff00004038a000
  x2:         ff780000
  x3:                0
  x4:                0
  x5:                1
  x6:         ff7f8ffc
  x7: ffff000000010618
  x8: fffffd0000b73900
  x9:    ffff00004039a
 x10: ffff000000e45000
 x11: ffff000000e47000
 x12: ffff000000e47000
 x13: fffffd0000000000
 x14:   60000000000703
 x15:                0
 x16: ffff000000ac5000
 x17:   600000ff77f703
 x18: ffff0000000106b0
 x19: fffffd0000a25c00
 x20:                3
 x21: ffff00000001074c
 x22: fffffd0000a25c00
 x23:             2001
 x24: fffffd0000b73900
 x25:            10000
 x26: fffffd0000d1ac40
 x27:                2
 x28:         ff770000
 x29: ffff0000000106b0
  sp: ffff0000000106b0
  lr: ffff00000021007c
 elr: ffff00000046f188
spsr:         600001c5
 far:             2001
 esr:         96000005
panic: vm_fault failed: ffff00000046f188
cpuid = 0
time = 1
KDB: stack backtrace:
db_trace_self() at db_trace_self_wrapper+0x28
	 pc = 0xffff0000006f9628  lr = 0xffff00000010a4a0
	 sp = 0xffff0000000100e0  fp = 0xffff0000000102e0

db_trace_self_wrapper() at vpanic+0x194
	 pc = 0xffff00000010a4a0  lr = 0xffff00000041cd60
	 sp = 0xffff0000000102f0  fp = 0xffff000000010340

vpanic() at panic+0x44
	 pc = 0xffff00000041cd60  lr = 0xffff00000041cb08
	 sp = 0xffff000000010350  fp = 0xffff000000010400

panic() at data_abort+0x200
	 pc = 0xffff00000041cb08  lr = 0xffff000000719cb0
	 sp = 0xffff000000010410  fp = 0xffff000000010480

data_abort() at do_el1h_sync+0x144
	 pc = 0xffff000000719cb0  lr = 0xffff000000718ffc
	 sp = 0xffff000000010490  fp = 0xffff0000000104d0

do_el1h_sync() at handle_el1h_sync+0x78
	 pc = 0xffff000000718ffc  lr = 0xffff0000006fc078
	 sp = 0xffff0000000104e0  fp = 0xffff000000010620

handle_el1h_sync() at 

And there it just stops… Stock GENERIC kernel, current as of a week ago or so…

-Søren



More information about the freebsd-arm mailing list