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.

[参考译文] Linux/AM5728:IPC 示例问题

Guru**** 2951100 points

Other Parts Discussed in Thread: AM5728

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/672327/linux-am5728-ipc-examples-issues

器件型号:AM5728

工具/软件:Linux

大家好、我计划开发一个在 am5728 (BeagleBoard X15)上使用 A15、M4和 DSP 内核的应用、因此我想我开始熟悉 TI SDK IPC 示例应用。

我已在 Ubuntu 14.04构建主机上安装了 Linux 和 RTOS 处理器 SDK、并构建了 IPC 库(构建 ti-IPC-Linux 并构建 IPC_BIOS)和示例应用程序(创建 IPC_examples)。

我已将二进制文件复制到电路板(/home/root)、并将/lib/firmware 中的相应符号链接指向这些二进制文件。

在大多数情况下、应用程序正常工作。  我可以在主机和 DSP2、IPU1和 IPU2之间交换消息、但应用程序无法打开 MessageQ 至 DSP1:

root@am57xx-EVM:~./app_host DSP2
-->主要:
->Main_main:
--> App_create:
APP_CREATE:主机已就绪
<-- App_create:
--> App_exec:
APP_exec:发送消息1
APP_exec:发送消息2.
APP_exec:发送消息3
APP_exec:已收到消息、正在发送消息4
APP_exec:已收到消息、正在发送消息5
APP_exec:已收到消息、正在发送消息6
APP_exec:已收到消息、正在发送消息7
APP_exec:已收到消息、正在发送消息8
APP_exec:已收到消息、正在发送消息9
APP_exec:已收到消息、正在发送消息10
APP_exec:已收到消息、正在发送消息11
APP_exec:已收到消息、正在发送消息12
APP_exec:已收到消息、正在发送消息13
APP_exec:已收到消息、正在发送消息14
APP_exec:已收到消息、正在发送消息15
APP_exec:已收到消息
APP_exec:已收到消息
APP_exec:已收到消息
<-- App_exec:0
--> App_delete:
<-- App_delete:
<-- Main_main:
<--主要:
root@am57xx-EVM:~./app_host DSP1
-->主要:
->Main_main:
--> App_create:
APP_CREATE:打开 MessageQ 失败
<-- App_create:
<-- Main_main:
<--主要:

每当我运行./app_host DSP1时  

我在 dmesg 中收到三条消息:

[3196.909673] OMAP-rproc 40800000.dsp:无法发送邮箱消息、状态=-105
[3196.965791] OMAP-rproc 40800000.dsp:无法发送邮箱消息、状态=-105
[3197.024193] OMAP-rproc 40800000.dsp:无法发送邮箱消息、状态=-105

在启动期间、还会显示此 DSP1内核崩溃三次、处理两次、但不是第三次、因此我假设内核已崩溃、这就是消息失败的原因。  

root@am57xx-EVM:~# dmesg | grep crash

[7.290236] remoteproc remoteproc2:在40800000.dsp 中检测到崩溃:键入 watchdog
[7.386553] remoteproc remoteproc2:处理40800000.dsp 中的 crash #1
[7.495896] remoteproc remoteproc2:在40800000.dsp 中检测到崩溃:键入 watchdog
[7.50339] remoteproc remoteproc2:处理40800000.dsp 中的崩溃#2
[7.664527] remoteproc remoteproc2:在40800000.dsp 中检测到崩溃:键入 watchdog

我对 am5728的故障排除非常陌生、因此我非常感谢有关如何进一步进行故障排除的任何建议。  例如、我应该在 IPC 库或示例构建过程中查找一些问题吗?  我是否可以使用其他 DSP 映像来测试内核?

谢谢、

Dermot

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

    更新-我在确定参数应该是什么并且所有四个内核都按预期响应后、也使用了 ping_rpmsg 测试应用。

    root@am57xx-evm:~./ping_rpmsg 5 3.
    争论次数:3.
    正在连接到 vprocId 3上的地址0x33
    我们的地址:send_sock:socket family:43、proc id =-1、addr = 1024
    绑定到 vprodId 3上的地址0x33
    我们的地址:recv_sock:套接字系列:43、proc id =-1、addr = 51
    正在发送"Ping!" 在我的环路中。
    0:收到消息:Pong!、来自:51
    消息时间:155 μ s
    从处理器3上的地址0x33接收到消息
    消息内容:"Pong!"。
    1:收到消息:Pong!、来自:51
    消息时间:146 μ s
    从处理器3上的地址0x33接收到消息
    消息内容:"Pong!"。
    2:收到消息:Pong!、来自:51
    消息时间:139 usecs
    从处理器3上的地址0x33接收到消息
    消息内容:"Pong!"。
    3:收到消息:Pong!、出发地:51
    消息时间:137 μ s
    从处理器3上的地址0x33接收到消息
    消息内容:"Pong!"。
    4:收到消息:Pong!、出发地:51
    消息时间:139 usecs
    从处理器3上的地址0x33接收到消息
    消息内容:"Pong!"。
    平均时间:5次迭代时为143 μ s

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

    很高兴听到 Ping 操作对您有用。 我尝试了 ex02_MessageQ 示例、但看不到加载问题。 您是否仍然对 DSP1的 MessageQ 示例有疑问? DSP1和 DSP2在/lib/firmware?中是否都有正确的映像 当 DSP 发生故障时、sysfs 可能会为您提供更多信息。 它位于/sys/kernel/debug/remoteproc/remoteproc (x)文件夹中。


    root@am57xx-evm:/lib/firmware # ls -l dra7-dsp*-fw.xe66
    lrwxrwxrwx 1根 根 2018年3月7日 dra7-dsp1-fw.xe66 -> ex02_dsp1.xe66
    lrwxrwxrwx 1根 根 2018年3月7日 dra7-dsp2-fw.xe66 -> ex02_dsp2.xe66
    root@am57xx-evm:/lib/firmware ls -l ex02*
    rw-r--r-- 1根 根 4663976 2018年3月7日 ex02_dsp1.xe66
    rw-r--r-- 1根 根 4510088 2018年3月7日 ex02_dsp2.xe66
    root@am57xx-EVM:~# uname -a
    Linux am57xx-EVM 4.9.41-ge3a80a1c5c #2 SMP 优先于 Tue 9月26日19:14:57 EDT 2017 armv7l GNU/Linux
    root@am57xx-EVM:~#./ex02_app_host DSP2
    -->主要:
    ->Main_main:
    --> App_create:
    APP_CREATE:主机已就绪
    <-- App_create:
    --> App_exec:
    APP_exec:发送消息1
    APP_exec:发送消息2.
    APP_exec:发送消息3
    APP_exec:已收到消息、正在发送消息4
    APP_exec:已收到消息、正在发送消息5
    APP_exec:已收到消息、正在发送消息6
    APP_exec:已收到消息、正在发送消息7
    APP_exec:已收到消息、正在发送消息8
    APP_exec:已收到消息、正在发送消息9
    APP_exec:已收到消息、正在发送消息10
    APP_exec:已收到消息、正在发送消息11
    APP_exec:已收到消息、正在发送消息12
    APP_exec:已收到消息、正在发送消息13
    APP_exec:已收到消息、正在发送消息14
    APP_exec:已收到消息、正在发送消息15
    APP_exec:已收到消息
    APP_exec:已收到消息
    APP_exec:已收到消息
    <-- App_exec:0
    --> App_delete:
    <-- App_delete:
    <-- Main_main:
    <--主要:
    root@am57xx-EVM:~./ex02_app_host DSP1
    -->主要:
    ->Main_main:
    --> App_create:
    APP_CREATE:主机已就绪
    <-- App_create:
    --> App_exec:
    APP_exec:发送消息1
    APP_exec:发送消息2.
    APP_exec:发送消息3
    APP_exec:已收到消息、正在发送消息4
    APP_exec:已收到消息、正在发送消息5
    APP_exec:已收到消息、正在发送消息6
    APP_exec:已收到消息、正在发送消息7
    APP_exec:已收到消息、正在发送消息8
    APP_exec:已收到消息、正在发送消息9
    APP_exec:已收到消息、正在发送消息10
    APP_exec:已收到消息、正在发送消息11
    APP_exec:已收到消息、正在发送消息12
    APP_exec:已收到消息、正在发送消息13
    APP_exec:已收到消息、正在发送消息14
    APP_exec:已收到消息、正在发送消息15
    APP_exec:已收到消息
    APP_exec:已收到消息
    APP_exec:已收到消息
    <-- App_exec:0
    --> App_delete:
    <-- App_delete:
    <-- Main_main:
    <--主要:
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    感谢您的快速回复、Rex。

    /sys/kernel/debug/remoteproc/remoteproc2上的跟踪开始不正常(与 remoteproc3上的 DSP2相比)

    [ 0.000]看门狗已启用:TimerBase = 0x48086000频率= 0
    [ 0.000] 17个资源条目、位于0x95000000
    [ 0.000][t=0x0006a60c] xdc.runtime.Main:-> main:
    [ 0.000]使用主机在61上注册 rpmsg-proto:rpmsg-proto 服务
    [ 0.000][t=0x000c54c1] xdc.runtime.Main: NameMap_sendMessage:host 53、port=61

    但是、似乎会转储寄存器并在0x0处报告异常:
    (笑声)
    [ 0.000] B20=0x20050000 B21=0x0
    [ 0.000] B22=0x20050000 B23=0x0
    [ 0.000] B24=0x20050000 B25=0x0
    [ 0.000] B26=0x2000010 B27=0x0
    [ 0.000] B28=0x20050000 B29=0x0
    [ 0.000] B30=0x20050000 B31=0x0
    [ 0.000] NTSR=0x0
    [ 0.000] ITSR=0x20050000
    [ 0.000] IRP=0x20050000
    [ 0.000] SSR=0x0
    [ 0.000] AMR=0x20050000
    [ 0.000] RILC = 0x0
    [ 0.000] ILC = 0x20050000
    [ 0x0时为0.000]异常
    [ 0.000] EFR=0x0 NRP=0x0
    [ 0.000]正在终止执行...

    我注意到、DSP2跟踪没有显示"启用看门狗..." 第一行。 dmesg 中的消息显示为建议 DSP1内核崩溃类型为"watchdog":

    [7.659480] remoteproc remoteproc2:在40800000.dsp 中检测到崩溃:键入 watchdog

    也许我需要禁用 DSP1的看门狗计时器?

    我将要尝试一下。 这种内核构建错误似乎没有出现在任何地方:

    在@INC 中找不到 strict.pm (您可能需要安装严格模块)(@INC 包含://usr/lib/perl/site_perl/5.22.1 //usr/lib/perl/vendor_perl/5.22.1 //usr/lib/perl/5.22.1 /tmp/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy/sysroots/x86_64-arago-linux/usr/lib/perl/site_perl/5.22.1 /tmp/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy/sysroots/x86_64-arago-linux/usr/lib/perl/5.22.1 /tmp/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy/sysroots/x86_64-arago-linux/usr/lib/perl/5.22.1 /tmp/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy/sysroots/x86_64-arago-linux/usr/lib/perl/site_perl/5.22.1 /tmp/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy/sysroots/x86_64-arago-linux/usr/lib/perl/vendor_perl/5.22.1 /tmp/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy/sysroots/x86_64-arago-linux/usr/lib/perl/vendor_perl/5.22.1 /tmp/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy/sysroots/x86_64-arago-linux/usr/lib/perl/5.22.1。) 请访问/lib/build_OID_registry 第14行。
    开始失败--在./lib/build_OID_registry 行14处中止编译。
    lib/Makefile:220:目标'lib/OID_registry_data.c'的配方失败
    maked[2]:***[lib/OID_registry_data.c]错误2.
    maked[2]:***正在等待未完成的作业...

    因此、在对 DSP1内核问题进行更详细的故障排除之前、我需要先解决此问题。 我将在可以再次构建时立即报告。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    大家好、Dermot、

    您不需要执行任何操作即可运行示例、如果您使用的是预编译图像、则该示例不应下载失败。 DSP1和 DSP2的映像来自相应的文件夹、不是相同的映像、而是名称不同、对吗? 看门狗只是指 DSP 没有响应、因此看门狗被唤醒。

    如果您使用的是 ProcSDK 4.1和更高版本、则这些发行包的 Linux-Devkit 中的 perl 不可重定位。 权变措施是
    1) 1)不以$path 导出 Linux-Devkit 工具链的路径
    2) 2)在 make 命令中指定 cross_compile 的路径。 请执行"make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- zImage"、而不是"make ARCH=arm CROSS_COMPILE=./../linux-devkit/sysroot/x86_64-arago-linux/usr/bin/arm-linux-gnueabihf- zImage"。 甚至是到 arm-linux-gnueabihf-的完整路径、


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

    谢谢 Rex、

    我想看门狗报告崩溃比以某种方式导致崩溃更有意义!

    我在太晚的时候阅读了有关 perl 的有用信息、我已经重建了编译主机并重新安装了 SDK。 一切都正常、因此我将密切关注该问题、并在问题再次出现时应用您的权变措施。  顺便说一下、我正在运行 Processor SDK 4.2。

    这一次、我没有重建从站核心映像。 在 Linux SDK 中运行 setup.sh 后、我注意到预编译的映像填充在/targetNFS/usr/bin/ipc/examples/ex02_messageq/debug 中、因此我直接使用了这些映像。 我在 X15上将它们连接到/home/root、并验证/lib/firmware 链接指向相应的二进制文件。 我看到的问题与以前一样...

    DSP1内核在启动时崩溃:
    root@am57xx-EVM:~# dmesg | grep crash
    [8.294471] remoteproc remoteproc2:在40800000.dsp 中检测到崩溃:键入 watchdog
    [9.069575] remoteproc remoteproc2:处理40800000.dsp 中的 crash #1
    [9.916159] remoteproc remoteproc2:在40800000.dsp 中检测到崩溃:键入 watchdog

    DSP2内核正常工作:
    root@am57xx-EVM:~./app_host DSP2
    -->主要:
    ->Main_main:
    --> App_create:
    APP_CREATE:主机已就绪
    <-- App_create:
    --> App_exec:
    APP_exec:发送消息1
    APP_exec:发送消息2.
    APP_exec:发送消息3
    (笑声)

    这些是我在 X15上从 targetNFS 复制到/home/root 的预构建映像:
    -rw-r--r-- 1根根根4531160 2017年12月23日 server_dsp1.xe66
    -rw-r--r-- 1 root root 4376368 2017年12月23日 server_dsp2.xe66
    -rw-r--r-- 1根根根4318952 2017年12月23日 server_ipu1.xem4
    -rw-r--r-- 1根根根4318952 2017年12月23日 server_ipu2.xem4

    我最初想知道为什么我的 server_dsp1.xe66文件比 server_dsp2.xe66文件大、但它看起来是相同的、因此我可能不会太在意文件大小。

    非常感谢您提出的任何其他建议或建议!
    谢谢、
    Dermot

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

    大家好、Dermot、

    您可以尝试使用我的 DSP 和主机 映像吗? 我的映像基于 ProcSDK 4.1。 您使用的是哪个版本?

    雷克斯

    e2e.ti.com/.../ex02.zip

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    当然、我现在就试一下。 我正在使用 ProcSDK 4.2。 谢谢!
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    这很有趣-我刚刚使用了您的 DSP1 .xe66文件、它可以与我自己的其他从内核配合使用、适用于我的 APP_HOST。

    那么、我想知道 SDK 4.1和 SDK 4.2之间是否存在怪异的东西? 也许我会尝试使用 SDK 4.1运行、看看我是否可以重现此问题。 顺便提一下、您是否知道是否有方法可以从 Linux 加载从站内核而无需重新引导? 我一直认为完全重新启动是一种过度的现象。 我知道 KeyStone-2设备具有 MPM 命令行实用程序,但我认为我的 X15 rootfs 上没有这些实用程序。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Dermot、

    下周我将尝试构建4.2、看看我能得到什么。 有一个绑定/取消绑定 sysfs、用于关闭 DSP 的电源并使 Remoteproc 下载 DSP。

    root@am57xx-EVM:/sys/bus/platform/drivers/omap-rproc
    root@am57xx-EVM:/sys/bus/platform/drivers/omap-rproc echo 40800000.dsp >解除绑定
    [28685.462672] OMAP-hwmod:mu1_dsp1:_wait_target_disable 失败
    [28685.475669] omap_hwmod:mu0_dsp1:_wait_target_disable 失败
    [28685.481945] remoteproc remoteproc2:已停止远程处理器40800000.dsp
    [28685.488907] remoteproc remoteproc2:发布了40800000.dsp
    root@am57xx-EVM:/sys/bus/platform/drivers/omap-rproc echo 40800000.dsp > bind
    [28694.889970] OMAP-rproc 40800000.dsp:分配的保留存储器节点 dsp1_CMA@99000000
    [28694.897875] remoteproc remoteproc2:可提供40800000.dsp
    [28694.909774] remoteproc remoteproc2:为40800000.dsp 加电
    [28694.915481] remoteproc remoteproc2:引导 FW 映像 dra7-dsp1-fw.xe66、大小为4663976
    root@am57xx-EVM:/sys/bus/platform/drivers/omap-rproc #[28694.931592] omap_hwmod:mu0_dsp1:_wait_target_disable 失败
    [28694.937481] OMAP-iommu 40d01000.MMU:40d01000.MMU:版本3.0
    [28694.9434343] OMAP-iommu 40d020.MMU:40d020.MMU:版本3.0
    [28694.959528] virtio_rpmsg_bus virtio1:rpmsg 主机处于联机状态
    [28694.965079] remoteproc remoteproc2:registered virtio1 (类型7)
    [28694.971087] remoteproc remoteproc2:远程处理器40800000.dsp 现已启动
    [28694.978710] virtio_rpmsg_bus virtio1:创建通道 rpmsg-proto addr 0x3D
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    啊、酷-这是一种加载内核的好方法。

    我现在要安装4.1 SDK -完成一些测试后、我将在这里报告。

    感谢您的帮助、同时、祝您周末愉快!
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我正在下载4.2 Linux 和 RTOS SDK。 我在星期一举行了几次会议。 如果我没有机会在周一跑步、我一定会在接下来的几天内试一下、然后再回来。

    也谢谢。

    雷克斯
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    别着急-我确切地知道如何与会议进行交流。 我将在完成4.1测试后更新这里。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    好消息-我安装了4.1 SDK、所有预构建的从内核二进制文件在 MessageQ 示例中都可以正常工作。 看起来4.2 SDK 中的 DSP1二进制文件中存在一个错误。 有趣的是、看看您是否在最后重新创建它

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

    我在使用4.2版本时看到的错误与您的错误相同。 引导日志显示 dsp1崩溃、这就是看门狗启动的原因。 ex02示例代码从发布到发布没有任何变化。 我在内部工作、试图弄清楚为什么会发生这种情况。 一旦我们了解该问题、我会将其发布回去。

    [6.987349] remoteproc remoteproc2:远程处理器40800000.dsp 现已启动
    [6.988077] virtio_rpmsg_bus virtio1:rpmsg 主机处于联机状态
    [6.988090] remoteproc remoteproc3:registered virtio1 (类型7)
    [6.988094] remoteproc remoteproc3:远程处理器41000000.dsp 现已启动
    [6.988270] virtio_rpmsg_bus virtio1:创建通道 rpmsg-proto addr 0x3D

    [6.989169] remoteproc remoteproc2:在40800000.dsp 中检测到崩溃:键入 watchdog
    [6.989187] remoteproc remoteproc2:处理40800000.dsp 中的 crash #1

    [6.989191] remoteproc remoteproc2:恢复40800000.dsp
    [7.052930] OMAP_hwmod:mu1_dsp1:_wait_target_disable 失败
    [7.059573] OMAP_hwmod:mu0_dsp1:_wait_target_disable 失败
    [7.087764] remoteproc remoteproc2:已停止远程处理器40800000.dsp
    [7.094943] OMAP-SHIM 4b101000.sham:OMAP 版本4.3上的硬件加速器
    [7.104170] remoteproc remoteproc2:为40800000.dsp 加电
    [7.114877] remoteproc remoteproc2:引导 FW 映像 dra7-dsp1-fw.xe66、大小为4389168
    [7.132955] omap_hwmod:mu0_dsp1:_wait_target_disable 失败
    [7.138842] OMAP-iommu 40d01000.MMU:40d01000.MMU:版本3.0
    [7.144787] OMAP-iommu 40d02000.MMU:40d02000.MMU:版本3.0
    [7.157999] alloc_contig_range:[99600、99700) PFN 忙
    [7.170879] remoteproc remoteproc2:在40800000.dsp 中检测到崩溃:键入 watchdog
    [7.183480] OMAP-DES 480a5000.des: OMAP DES 硬件加速器版本:2.2
    [7.194432] OMAP-DES 480a5000.des:将运行具有实时优先级的请求泵
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    嗨、Rex -我想这是个好消息。  至少这是一个正确的错误、而不是一些构建环境配置问题!

    同时、我很高兴为我的项目的目的而使用4.1 SDK。

    我有一个最后一个问题是关于不可重定位的问题的变通办法。  从$path 中删除编译器位置后、是否有任何方法可以在单个位置实现该变通办法?  或者、我是否必须跟踪所有受影响的 Makefiles 中的每个引用?

    谢谢、

    Dermot

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

    Dermot、

    您可以在 make comand 中使用相对路径、例如

    "make ARCH=arm CROSS_COMPILE=../../linux-devkit/sysroots/x86_64-arago-linux/usr/bin/arm-linux-gnueabihf- zImage"、对于其他目标也是如此、例如 distclean、menuconfig、[platform].dtb、tisdk_[platform]_defconfig、 等等

    如果您下载了 linaro 工具链、而不是使用 ProcSDK 软件包中的工具链、则可以使用工具链的完全限定路径进行 cross_compile。 即 cross_compile=[完全限定路径]/arm-linux-gnueabihf-  

    我们发现已发布文件系统中预构建的 dsp1映像具有相同的症状。 因此、这不是我们的构建问题、也不是与内核版本相关的问题。 我们怀疑这是不同 IPC 版本中的一些更改。 我们将继续调查并在未来的版本中解决该问题。 我想关闭这个线程。 如果您有其他问题、请提交新问题。

    雷克斯

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    明白了-非常感谢您的帮助!
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    最后、最后一件事-如果我尝试使用以下任一方式构建 ti-ipc-工具...

    make ARCH=arm CROSS_COMPILE=~μ C/ti-processor-sdk-linux-am57xx-evm-04.01.00.06/linux-devkit/sysroots/x86_64-Arago-linux/usr/bin/arm-linux-gnueabihf- ti-IPC-linux

    或

    使 arch=arm cross_compile./../linux-devkit/sysroots/x86_64-arago-linux/usr/bin/arm-linux-gnueabihf- ti-ipc.linux

    ...我得到此错误:

    libtool:编译:arm-linux-gnueabihf-gcc "-DPACKAKAKAGE_NAME="TI IPC\"-DPACKAGE_TARNAME="ti-IPC\"-DPACKAGE_VERSION="3.0.0\"-DPACKAGE_STRING\"-DPACKANE=1-DH_1 DH_SYS_DRESH=-DPAC1_DH_1 -DPACKAAVE=-ST_DH_DH_1 -ST_DH_E=TI_DH_1 -DPAC_SYS_DRESH=1 -三月=armv7-a -marm -mfpu=neon -mfloat-abi=hard --sysroot=/home/dmurphy/ti-processor-sdk-linux-am57xx-evm-04.01.00.06/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi -I./../../hlos_common/include -D_gnu_source -Wall -I./../../linux/include -I./../../packages -March =armv7-a -marm -mfpu=neon -mfloat-abi=hard -sysroot=/home/dmurphy/ti-processor-sdk-linux-am57xx-evm-04.01.00.06/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi -lad -mc=-mpu.c.lad -mp_client.c -md -mp.c.lad -mp.c.lad -mp.c.lad -mp.c -mp.c.lad -mp.c -mp.cn -mp.c.lad -mp.cn
    ./../../libtool:第1111行:未找到 ARM-Linux-gnueabihf-gcc 命令

    我已从$path 中删除了编译器路径...
    dmurphy@tibuilder:~μ C/ti-processor-sdk-linux-am57xx-evm-04.01.00.06$ echo $path
    /usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games

    您认为我可以通过进一步调整 make 命令来解决吗? 或者、如果您希望我为此打开一个新的线程、请告诉我。

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

    最好在高级版本上安装一个与本主题无关的新线程。 我们也可以轻松地对问题进行分类。 同时、我将看一下它。 我还没有尝试自己构建 ti-ipc 工具。

    现在、您是否可以尝试从"/"而不是"~"到 gnueabihf-的完全限定路径? 您可能希望尝试回滚以查看使用路径中定义的交叉编译器获得的结果。

    最后一种方法是导出 arch=arm 和 cross_compile=gnueabihf-并定义路径。 然后、只需在命令中不使用 arch 和 cross_compile 即可。

    雷克斯