Starting kernel invokes "Synchronous Abort" - rk3328

Konstantin Kletschke konstantin.kletschke at inside-m2m.de
Thu Oct 26 14:41:32 CEST 2023


Dear u-boot community,
I have a rockchip rk3328 Board here I am trying to boot linux kernel
upon. It is a Dusun DSGW-210 which seems to resemble the setup

board=evb_rk3328
board_name=evb_rk3328

Dusun offers a SDK which they claim to be working in their system, the
rootfs can be a debian or a buildroot one. I can not compile it (Host
needs to be darn old, I got stuck realizing python2 with ftdi libs is
required). Reagardeless I want to port their stuff to yocto linux anyway
and since the u-boot an kernel config resemble vanilla evb_rk3328 setup and
config I thought it should not be too hard. But it is. For me.

I used the JeffyCN yocto meta layer, compiled it and flashed the images.
And voila, u-boot seems to work fine!
When U-boot starts the kernel I get

"Synchronous Abort" handler, esr 0x02000000

The output looks this way:

=> boot
Could not find misc partition
ANDROID: reboot reason: "(none)"
Not AVB images, AVB skip
Booting IMAGE kernel at 0x00280000 with fdt at 0x08300000...


Fdt Ramdisk skip relocation
No misc partition
## Booting Android Image at 0x0027f800 ...
Kernel: 0x00280000 - 0x00af2957 (8651 KiB)
## Flattened Device Tree blob at 0x08300000
  Booting using the fdt blob at 0x08300000
  XIP Kernel Image from 0x00280000 to 0x00280000 ... OK
  kernel loaded at 0x00280000, end = 0x00af2957
  Using Device Tree in place at 0000000008300000, end 00000000083156fd
WARNING: could not set reg FDT_ERR_BADOFFSET.
## reserved-memory:
 drm-logo at 00000000: addr=7df00000 size=b8000
Adding bank: 0x00200000 - 0x08400000 (size: 0x08200000)
Adding bank: 0x0a200000 - 0x80000000 (size: 0x75e00000)
== DO RELOCATE == Kernel from 0x00280000 to 0x00200000
Total: 126428.23/126891.316 ms


Starting kernel ...

"Synchronous Abort" handler, esr 0x02000000


The decoded stackdump looks like this:

./scripts/stacktrace.sh stackdump

SYMBOL File: ./u-boot.sym

Call trace:
PC:	[< ffffffff8278f004 >]
LR:	[< 00201d90 >]  do_bootm_linux+0x5c/0x74      /home/konsti/Dusun/yocto-JeffyCN/build/tmp/work/dsgw_210-poky-linux/u-boot-rockchip/1_2017.09-r0/git/arch/arm/lib/bootm.c:498

Stack:
      [< ffffffff8278f004 >]         [< 0021757c >]  boot_selected_os+0x48/0x80
      [< 00216fbc >]  do_bootm_states+0x8d0/0x950
      [< 00226c44 >]  android_bootloader_boot_kernel+0x15c/0x250
      [< 00227918 >]  android_bootloader_boot_flow+0x2a0/0x2a4
      [< 00207970 >]  do_boot_android+0xd0/0xf8
      [< 0022c104 >]  cmd_process+0xdc/0x10c
      [< 00215284 >]  run_list_real+0x6e4/0x728
      [< 00215438 >]  parse_stream_outer+0x170/0x66c
      [< 00214b88 >]  parse_string_outer+0xcc/0xe4
      [< 0021513c >]  run_list_real+0x59c/0x728
      [< 00215438 >]  parse_stream_outer+0x170/0x66c
      [< 00214b4c >]  parse_string_outer+0x90/0xe4
      [< 0022b628 >]  run_command_list+0x50/0x90
      [< 00215ad8 >]  autoboot_command+0x40/0x114
      [< 00213984 >]  main_loop+0x58/0x68
      [< 00216150 >]  run_main_loop+0xc/0x10
      [< 0027c46c >]  initcall_run_list+0x58/0x94
      [< 00216364 >]  board_init_r+0x20/0x24
      [< 00201940 >]  relocation_return+0x4/0x0

PC Surrounding Instructions:
./make.sh: line 418: -D: command not found



I kindly ask, what could be the culprit?
What should I do next to further debug the issue?

What I especiall wonder is what does "WARNING: could not set reg
FDT_ERR_BADOFFSET." mean, is this harmful or leading to the root cause?

I have full boot logs for the working Dusun u-boot and my u-boot
available, is it from interest or helpful to post them here completely
to compare?

Also I found one - may be significant - difference:

My u-boot says:

Model: Rockchip RK3328 EVB
MPIDR: 0x80000000
PreSerial: 2, raw, 0xff130000
DRAM:  2 GiB
Sysmem: init
Relocation Offset: 7da71000
Relocation fdt: 7bc664a8 - 7bc67ce2
CR: M/C/I
Using default environment

The Dusun u-boot says:

Model: Rockchip RK3328 EVB
MPIDR: 0x80000000
PreSerial: 2, raw, 0xff130000
DRAM:  2 GiB
Sysmem: init
Relocation Offset: 7da71000
Relocation fdt: 7bc664a8 - 7bc67ce2
CR: M/C/I
Using default environment

Is the difference in "Relocation Offset" my problem?

Other Addresses appearing look similair in my u-boot like the Dusun
u-boot (kernel load addr, RAM banks added, device tree addresses...).

Kind Regards
Konstantin Kletschke



-- 
INSIDE M2M GmbH
Konstantin Kletschke
Berenbosteler Strasse 76 B
30823 Garbsen

Telefon: +49 (0) 5137 90950136
Mobil: +49 (0) 151 15256238
Fax: +49 (0) 5137 9095010

konstantin.kletschke at inside-m2m.de
http://www.inside-m2m.de 

Gesch"aftsf"uhrung: Michael Emmert, Derek Uhlig
HRB: 111204, AG Hannover



More information about the U-Boot mailing list