11-27-2020 10:29 AM
Hi Communitiy,
I've a problem with openAMP and debugging with SDK on procR5.
I'am able to run the openAMP echo example. everything runs fine.
If I attached the system debugger with SDK, everthing seems ok.
But if I start the openAMP example with:
echo testOpenAMP_freeRTOS_r0.elf > /sys/class/remoteproc/remoteproc0/firmware
the system crashed with Kernel panic. Where is the mistake?
Without attached debugger everything works fine!
Thanks in advance
My System: ZCU102 Rev.3 Eva Board
Linux with X-server, matchbox DP manager:
Vivado/Petalinux 2019.1
First lines of starting Linux kernel
Starting kernel ...
[ 0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034]
[ 0.000000] Linux version 4.19.0-xilinx-v2019.1 (oe-user@oe-host) (gcc version 8.2.0 (GCC)) #1 SMP Tue Nov 17 14:56:48 UTC 2020
[ 0.000000] Machine model: ZynqMP ZCU102 Rev1.0
[ 0.000000] earlycon: cdns0 at MMIO 0x00000000ff000000 (options '115200n8')
[ 0.000000] bootconsole [cdns0] enabled
[ 0.000000] efi: Getting EFI parameters from FDT:
[ 0.000000] efi: UEFI not found.
[ 0.000000] Reserved memory: created DMA memory pool at 0x000000003ed40000, size 1 MiB
[ 0.000000] OF: reserved mem: initialized node rproc@3ed400000, compatible id shared-dma-pool
...
kernel panic occurred:
root@xilinx-zcu102-2019_1:~# echo start > /sys/class/remoteproc/remoteproc0/state
[ 238.400379] remoteproc remoteproc0: powering up r5@0
[ 238.416978] remoteproc remoteproc0: Booting fw image testOpenAMP_freeRTOS_r0.elf, size 1022604
[ 238.442368] SError Interrupt on CPU1, code 0xbf000002 -- SError
[ 238.442371] CPU: 1 PID: 2624 Comm: sh Tainted: G O 4.19.0-xilinx-v2019.1 #1
[ 238.442372] Hardware name: ZynqMP ZCU102 Rev1.0 (DT)
[ 238.442374] pstate: 20000005 (nzCv daif -PAN -UAO)
[ 238.442375] pc : __memcpy+0x118/0x180
[ 238.442376] lr : rproc_elf_load_segments+0x110/0x1c0 [remoteproc]
[ 238.442378] sp : ffffff800d1bbb60
[ 238.442379] x29: ffffff800d1bbb60 x28: ffffff800db60000
[ 238.442382] x27: 0000000000007d20 x26: ffffffc879c6f800
[ 238.442385] x25: ffffff8000bc8458 x24: ffffffc879f22500
[ 238.442388] x23: ffffff800da5d000 x22: 0000000000000000
[ 238.442390] x21: 0000000000000520 x20: 0000000000000001
[ 238.442393] x19: ffffff800da5d054 x18: 0000000000000001
[ 238.442396] x17: 0000000000000000 x16: 0000000000000000
[ 238.442398] x15: ffffffffffffffff x14: e3822012e0012000
[ 238.442401] x13: e3e0101fe10f0000 x12: e3a0c000e3a0b000
[ 238.442404] x11: e3a0a000e3a09000 x10: e3a08000e3a07000
[ 238.442407] x9 : e3a06000e3a05000 x8 : e10f0000e3a0e000
[ 238.442409] x7 : e59fd218e129f002 x6 : ffffff800db60050
[ 238.442412] x5 : 0000000000000000 x4 : 0000000000000000
[ 238.442415] x3 : ffffffc8778655c0 x2 : 0000000000000460
[ 238.442418] x1 : ffffff800da6d090 x0 : ffffff800db60000
[ 238.442421] Kernel panic - not syncing: Asynchronous SError Interrupt
[ 238.442423] CPU: 1 PID: 2624 Comm: sh Tainted: G O 4.19.0-xilinx-v2019.1 #1
[ 238.442425] Hardware name: ZynqMP ZCU102 Rev1.0 (DT)
[ 238.442426] Call trace:
[ 238.442427] dump_backtrace+0x0/0x178
[ 238.442428] show_stack+0x14/0x20
[ 238.442429] dump_stack+0x90/0xb4
[ 238.442430] panic+0x120/0x268
[ 238.442431] nmi_panic+0x6c/0x70
[ 238.442433] arm64_serror_panic+0x74/0x80
[ 238.442434] is_valid_bugaddr+0x0/0x8
[ 238.442435] el1_error+0x7c/0xdc
[ 238.442436] __memcpy+0x118/0x180
[ 238.442437] rproc_start+0x30/0x250 [remoteproc]
[ 238.442438] rproc_boot+0x3e8/0x618 [remoteproc]
[ 238.442440] state_store+0x4c/0xf8 [remoteproc]
[ 238.442441] dev_attr_store+0x18/0x28
[ 238.442442] sysfs_kf_write+0x40/0x58
[ 238.442444] kernfs_fop_write+0xcc/0x1e0
[ 238.442445] __vfs_write+0x30/0x158
[ 238.442446] vfs_write+0xa4/0x1a8
[ 238.442447] ksys_write+0x5c/0xc0
[ 238.442448] __arm64_sys_write+0x18/0x20
[ 238.442449] el0_svc_common+0x84/0xd8
[ 238.442451] el0_svc_handler+0x68/0x80
[ 238.442452] el0_svc+0x8/0xc
[ 238.442464] SMP: stopping secondary CPUs
[ 238.442466] Kernel Offset: disabled
[ 238.442467] CPU features: 0x0,20802004
[ 238.442468] Memory Limit: none
[ 238.674918] ---[ end Kernel panic - not syncing: Asynchronous SError Interrupt ]---
[ 238.674920] ------------[ cut here ]------------
[ 238.674921] kernel BUG at arch/arm64/kernel/traps.c:716!
[ 238.674923] Internal error: Oops - BUG: 0 [#1] SMP
[ 238.674924] Modules linked in: zynqmp_r5_remoteproc remoteproc virtio_ring virtio mali(O) uio_pdrv_genirq
[ 238.674932] CPU: 1 PID: 2624 Comm: sh Tainted: G O 4.19.0-xilinx-v2019.1 #1
[ 238.674933] Hardware name: ZynqMP ZCU102 Rev1.0 (DT)
[ 238.674934] pstate: 400001c5 (nZcv dAIF -PAN -UAO)
[ 238.674936] pc : do_serror+0x8c/0xa0
[ 238.674937] lr : do_serror+0x20/0xa0
[ 238.674938] sp : ffffff800d1bb630
[ 238.674939] x29: ffffff800d1bb630 x28: ffffffc87b0aadc0
[ 238.674942] x27: 0000000000007d20 x26: ffffffc879c6f800
[ 238.674944] x25: ffffff8000bc8458 x24: ffffffc879f22500
[ 238.674947] x23: 0000000040000085 x22: ffffff8008083330
[ 238.674950] x21: ffffff800d1bb660 x20: 00000000bf000002
[ 238.674953] x19: ffffffc87b0aadc0 x18: 0000000000000010
[ 238.674956] x17: 0000000000000001 x16: 0000000000000003
[ 238.674958] x15: ffffffffffffffff x14: ffffff80091b8648
[ 238.674961] x13: ffffff8089282f0f x12: ffffff8009282f17
[ 238.674964] x11: 202020204f202020 x10: ffffff800d1bb8e0
[ 238.674967] x9 : 00000000ffffffc8 x8 : 797320746f6e202d
[ 238.674969] x7 : 00000000f6d80d20 x6 : ffffffc87ff78a1a
[ 238.674972] x5 : 0000000000000000 x4 : 0000000080000000
[ 238.674975] x3 : 0000000000000000 x2 : 0000000080000000
[ 238.674978] x1 : 0000004876ddb000 x0 : 0000000000110000
[ 238.674981] Process sh (pid: 2624, stack limit = 0x00000000407c95fb)
[ 238.674982] Call trace:
[ 238.674983] do_serror+0x8c/0xa0
[ 238.674985] el1_error+0x7c/0xdc
[ 238.674986] el1_irq+0x70/0x140
[ 238.674987] panic+0x21c/0x268
[ 238.674988] nmi_panic+0x6c/0x70
[ 238.674989] arm64_serror_panic+0x74/0x80
[ 238.674990] is_valid_bugaddr+0x0/0x8
[ 238.674991] el1_error+0x7c/0xdc
[ 238.674992] __memcpy+0x118/0x180
[ 238.674994] rproc_start+0x30/0x250 [remoteproc]
[ 238.674995] rproc_boot+0x3e8/0x618 [remoteproc]
[ 238.674996] state_store+0x4c/0xf8 [remoteproc]
[ 238.674997] dev_attr_store+0x18/0x28
[ 238.674999] sysfs_kf_write+0x40/0x58
[ 238.675000] kernfs_fop_write+0xcc/0x1e0
[ 238.675001] __vfs_write+0x30/0x158
[ 238.675002] vfs_write+0xa4/0x1a8
[ 238.675003] ksys_write+0x5c/0xc0
[ 238.675004] __arm64_sys_write+0x18/0x20
[ 238.675006] el0_svc_common+0x84/0xd8
[ 238.675007] el0_svc_handler+0x68/0x80
[ 238.675008] el0_svc+0x8/0xc
[ 238.675009] Code: a94153f3 f94013f5 a8c37bfd d65f03c0 (d4210000)
[ 238.675011] ---[ end trace 41f0564d2f3976f6 ]---
[ 238.675012] Kernel panic - not syncing: Fatal exception in interrupt
[ 238.675017] Kernel Offset: disabled
[ 238.675019] CPU features: 0x0,20802004
[ 238.675020] Memory Limit: none
[ 238.929808] ---[ end Kernel panic - not syncing: Fatal exception in interrupt ]---