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.

[参考译文] TMDSIDK437X:PRUSS1固件不能正常工作

Guru**** 2609895 points


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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/584212/tmdsidk437x-pruss1-firmware-doesn-t-work

器件型号:TMDSIDK437X

您好!

我正在尝试按照 http://processors.wiki.ti.com/index.php/RPMsg_Quick_Start_Guide 将所有4个 PRU 内核设置为与 RPMsg 配合使用。

在我重新启动设备后、我只能在/dev/中 看到 PRUSS0_PRU0和 PRUSS0_PRU1的 Virtio 端口(rpmsg_pru30和 rpmsg_pru31)

我发现取消绑定/绑定 PRUSS0_PRU0和 PRUSS1_PRU0之间存在不同的信息:

取消绑定/绑定 PRUSS0_PRU0:

root@AM437X-EVM:~# echo 54474000.pru0 >/sys/bus/platform/drivers/pru-rproc/unbind
[555.044277] PRU-rproc 54474000.pru0:PRU_rproc_remove:删除 rproc 54474000.pru0
[555.059540] ti-prusss 54440000.pruss: unconfigured system_events = 0x000000030000 host_intr = 0x00000005
[555.070804] remoteproc3:已停止远程处理器54474000.pru0
[555.088129] remoteproc3:发布54474000.pru0
root@AM437X-EVM:~# echo 54474000.pru0 >/sys/bus/platform/drivers/pru-rproc/bind
[561.319925] remoteproc3:54474000.pru0可用
[561.324931] remoteproc3:注意:remoteproc 仍在开发中并被视为实验。
[561.337684] remoteproc3:二进制格式尚未最终确定,并且尚未保证向后兼容性。
[561.356154] remoteproc3:为54474000.pru0加电
[561.363049] remoteproc3:引导 FW 映像 AM437X-pru0_0-FW、大小为80464
[561.378715] ti-prusss 54440000.pruss:配置的 system_events = 0x000000030000 intr 通道= 0x00000005 host_intr = 0x00000005
[561.400686] remoteproc3:远程处理器54474000.pru0现已启动
[561.415102] virtio_rpmsg_bus virtio0:创建通道 rpmsg-PRU addr 0x1E
[561.424392] rpmsg_PRU rpmsg4:新的 rpmsg_PRU 设备:/dev/rpmsg_pru30
[561.436399] virtio_rpmsg_bus virtio0:rpmsg 主机处于联机状态
[561.450262] remoteproc3:注册的 virtio0 (类型7)
[561.455421] PRU-rproc 54474000.pru0:PRU rproc 节点/ocp/pruss_wrapper@54426000/prusss@54440000/pru0@54474000探测成功

取消绑定/绑定 PRUSS1_PRU0:

root@AM437X-EVM:~# echo 54434000.pru0 >/sys/bus/platform/drivers/pru-rproc/unbind
[599.451109] PRU-rproc 54434000.pru0:PRU_rproc_remove:删除 rproc 54434000.pru0
[599.458886] remoteproc1:发布54434000.pru0
root@AM437X-EVM:~# echo 54434000.pru0 >/sys/bus/platform/drivers/pru-rproc/bind
[608.533687] remoteproc1:54434000.pru0现已推出
[608.538692] remoteproc1:注意:remoteproc 仍在开发中并被视为实验。
[608.550858] remoteproc1:二进制格式尚未最终确定、并且尚不能保证向后兼容性。
[608.563504] PRU-rproc 54434000.pru0:PRU rproc 节点/ocp/pruss_wrapper@54426000/prusss@54400000/pru0@54434000探测成功

看起来 PRUSS1_PRU0没有加载任何固件、但我无法找到我的错误器件。

请帮帮我。谢谢!

此致、

LEIF

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

    PRU 专家已收到通知。 他们将在这里作出回应。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Leif、

    由于您使用的是 IDK 板、您能否在这个 wiki 页面上尝试这些步骤、并告诉我这些步骤是否有用? processors.wiki.ti.com/.../PRU-ICSS_Ethernet

    默认情况下、IDK 板会尝试将以太网固件加载到一些(如果不是全部) PRU 内核中。 如果您想要运行自定义固件(RPMsg 是自定义固件的示例)、则需要从器件树中删除兼容字符串、如 wiki 页面中所述。

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

    您好 Jason、

    非常感谢。 我现在可以在/dev/dev 中看到全部4个 rpmsg_pru3x。

    此致、

    LEIF