This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] TMDS64EVM:remoteproc 启动/停止问题

Guru**** 2487425 points
Other Parts Discussed in Thread: TMDS64EVM

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1441509/tmds64evm-remoteproc-start-stop-issue

器件型号:TMDS64EVM

工具与软件:

您好!

我将在 TMDS64EVM 上测试 ipc_rpmsg_echo_linux 示例。

当我反复启动和停止 R5内核时、系统挂起或 Linux 经常出现恐慌。

日志1:

root@am64xx-evm:~  head /sys/class/remoteproc/remoteproc [0-2]/name
=>/sys/class/remoteproc/remoteproc0/name <=
78000000.r5f

=>/sys/class/remoteproc/remoteproc1/name <=
5000000.m4fss

=>/sys/class/remoteproc/remoteproc2/name <=
78200000.r5f
root@am64xx-evm:~# echo stop >/sys/class/remoteproc/remoteproc2/state
[ 111.430216] remoteproc remoteproc2:已停止远程处理器78200000.r5f
root@am64xx-evm:~# echo stop >/sys/class/remoteproc/remoteproc0/state
[120.459613] remoteproc remoteproc0:已停止远程处理器78000000.r5f
root@am64xx-evm:~# echo start > /sys/class/remoteproc/remoteproc0/state
[ 142.746147] remoteproc remoteproc0:为78000000.r5f 供电
[ 142.759546] remoteproc remoteproc0:启动固件映像 am64-main-r5f0_0-fw、大小112228

 <---- 系统挂起在此处。

在情况2中、我知道在 r5f 内核停止并且 ti_k3_r5_remoteproc 驱动程序正常返回 EPERM 时启动 r5f core1是不正确的。  

日志2:

root@am64xx-evm:~ head /sys/class/remoteproc/remoteproc [0-2]/name
=>/sys/class/remoteproc/remoteproc0/name <=
5000000.m4fss

=>/sys/class/remoteproc/remoteproc1/name <=
78000000.r5f

=>/sys/class/remoteproc/remoteproc2/name <=
78200000.r5f
root@am64xx-evm:~# echo stop >/sys/class/remoteproc/remoteproc2/state
[249.336219] remoteproc remoteproc2:已停止远程处理器78200000.r5f
root@am64xx-evm:~# echo stop >/sys/class/remoteproc/remoteproc0/state
[261.480420] remoteproc remoteproc0:已停止远程处理器5000000.m4fss.
root@am64xx-evm:~# echo stop >/sys/class/remoteproc/remoteproc1/state
[ 280.040279] remoteproc remoteproc1:已停止远程处理器78000000.r5f
root@am64xx-evm:~# echo start >/sys/class/remoteproc/remoteproc1/state
[ 340.982495] remoteproc remoteproc1:上电78000000.r5f
[ 340.995358] remoteproc remoteproc1:启动固件映像 am64-main-r5f0_0-fw、大小112228
[ 341.008820] rproc-virtio rproc-virtio.0.auto:分配了保留内存节点 r5f-dma-memory@a0000000
[ 341.020036] virtio_rpmsg_BUS virtio0: rpmsg 主机在线
[ 341.025862] virtio_rpmsg_bus virtio0:正在创建通道 ti.ipc4.ping-pong addr 0xd
[ 341.029699] rproc-virtio rproc-virtio.0.auto: registered virtio0 (type 7)
[ 341.033808] virtio_rpmsg_BUS virtio0:正在创建通道 rpmsg_chrdev addr 0xe
[ 341.042866] remoteproc remoteproc1:远程处理器78000000.r5f 现在已启动
root@am64xx-evm:~# echo stop >/sys/class/remoteproc/remoteproc1/state
[354.799845] remoteproc remoteproc1:已停止远程处理器78000000.r5f
root@am64xx-evm:~# echo start >/sys/class/remoteproc/remoteproc2/state
[369.566433] remoteproc remoteproc2:为782000.r5f 上电
[369.574062] remoteproc remoteproc2:启动固件映像 am64-main-r5f0_1-fw、大小112228
[ 370.035532] CPU0上的 SError 中断、代码0x00000000bf000000 -- SError
[370.0355553] CPU:0 PID:1000 Comm:sh not dample 6.6.32-g6de6e418c80e-dirty #4.
[ 370.035563]硬件名称:Texas Instruments AM642 EVM (DT)
[ 370.035568] pstate:20000005 (nzCv daif -pan -uao -tco -dit -ssbs BTYPE=-)
[370.0355577] PC :_memcpy+0x140/0x240
[370.035604] lr : rproc_elf_load_segments+0x198/0x218
[370.035623] sp : ffffff8000827cbb50.
[370.035626] x29: ffffff8000827cbb80 x28: 0000000000001598 x27: 00000000000000000000
[ 370.035642] x26:0000000000000040 x25:0000000000000000 x24:ffff0000106c9a20
[370.035652] x23:0000000000000020 x22:0000000000000006 x21:00000000000000000001
[370.035662] x20:0000000000001598 x19:ffff800082cf00a4 x18:ffffffffffffffffffffff
[370.035673] X17:0000000000000000 x16:0000000000000000 x15:ff8000827cba00
[ 370.035683] x14:0000000000000000 x13:bf00bf00bf00bf00 x12:bf00bf00bf004770
[370.035693] x11:b003600899014088 x10:200199009000001f x9:f000980290014004.
[370.035703] x8 : f200440870f0f400 x7 : 980268011012f2ca x6 : 6094f6469002b083.
[370.035714] x5 : ffffff800082429598 x4 : ffffff800082cd65d8 x3 : ffffff800082428100
[ 370.035724] x2 : 0000000000001408 x1 : ffffff800082cd5180 x0 : ffff800082428000
[ 370.035738] Kernel panic - not syncing: asynchronous Serror interrupt
[370.035742] CPU:0 PID:1000 Comm:sh not dament 6.6.6.32-g6de6e418c80e-dirty #4.
[ 370.035750]硬件名称:德州仪器(TI) AM642 EVM (DT)
[ 370.035754]呼叫追踪:
[ 370.035758] dump_backtrace+0x90/0xe8
[ 370.035775] show_stack+0x18/0x24
[ 370.035784] dump_stack_lvl+0x48/0x60
[ 370.035791] dump_stack+0x18/0x24
[ 370.035798] panic+0x32c/0x388
[ 370.035809] NMI_panic+0x8c/0x90
[ 370.035819] arm64_serror_panic+0x6c/0x78
[ 370.035830] do_serror+0x3c/0x70
[ 370.035841] el1h_64_error_handler+0x30/0x48
[370.035851] el1h_64_error+0x64/0x68
[ 370.035858]__memcpy+0x140/0x240
[ 370.035868] rproc_start+0x30/0x1b8
[ 370.035879] rproc_boot+0x198/0x57c
[ 370.035889] STATE_STORE+0x40/0x104
[ 370.035900] DEV_ATTR_STORE+0x18/0x2C
[370.035909] sysfs_KF_WRITE+0x44/0x54
[ 370.035919] kernfs_fop_WRITE_ITER+0x120/0x1cc
[ 370.035926] vfs_write+0x1c0/0x300
[ 370.035936] ksys_WRITE+0x74/0x10c
[ 370.035943]__ARM64_sys_WRITE+0x1c/0x28
[ 370.035951] Invoke_syscall+0x48/0x114
[370.035961] el0_Svc_common.constprop.0+0xc0/0xe0
[370.035971] DO_el0_Svc+0x1c/0x28
[370.035979] el0_Svc+0x2C/0x84
[ 370.035987] el0t_64_sync_handler+0x120/0x12c
[ 370.035995] el0t_64_SYNC+0x190/0x194
[370.036005] SMP:正在停止辅助 CPU
[ 370.036040]内核偏移:已禁用
[ 370.036043] CPU 特性:0x000000008,00020000,1000420b</s>008,000 20,000,100
[ 370.036049]内存限制:无
[370.276872]--[结束内核紧急-未同步:异步错误中断]-

软件配置:

适用于 AM64x 10_00_07_04的 Processor SDK Linux

AM64x MCU+ SDK 10.00.00

此致、

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    遗憾的是、这是 AM64x SDK 10.0上的一个已知错误、该错误破坏了 R5F 内核的正常关闭。 R5F 内核正常关闭是在之前的 SDK 9.2.1中正常运行的、该错误将在即将推出的 SDK 10.1中修复。 现在、如果要将新固件加载到 R5F 中、请重启处理器内核。

    我仍在更新 AM64x Academy v10.0、以添加有关此错误的警告。 但除此之外、您可以在此处找到更多信息:
    https://dev.ti.com/tirex/explore/node?node=A__AdAyuKWUWVV5j4wBc7C6XA__AM64-ACADEMY__WI1KRXP__LATEST

    此致、

    Nick

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Nick。

    感谢您的澄清。

    我正在等待 SDK 10.1

    此致、