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/AM3358:在引导时运行 PRU remoteproc

Guru**** 2587365 points


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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/634904/linux-am3358-running-pru-remoteproc-at-boot-time

器件型号:AM3358

工具/软件:Linux

所以... 我正在使用 newish remoteproc/rpmsg 框架开发 PRU 代码。  我真的很喜欢内核4.1.x 和4.4.x 中代码在启动过程中使 PRU 启动的方式。 通常在系统的大部分其他部分完全运行之前。  但是、在最近的4.9.x 内核中、PRU 的自动引导似乎已经消失、并且在一般情况下、pruss remoteproc 驱动程序加载需要很长时间、即使这样、它们也不会自动运行。  我不知道为什么这么做了。  或权变措施。  当然,remoteproc0可以足够快地启动 M3。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    TI 不支持 Debian。 此论坛仅支持 AM335x 处理器 SDK :www.ti.com/.../PROCESSOR-SDK-AM335X
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    有关 BeagleBone 上的 Debian 支持、请访问 www.beagleboard.org
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    是的... 问题不是我使用的 rootfs distro。 我可以切换到 TI SDK、问题是一样的。  问题出在内核驱动程序中。  (我正在使用 TI 内核)。  最近对 rproc_PRU 的更改使得自动引导功能变得更强大。。。 硬接线进入、因此 DT 不能覆盖。  回答我自己的问题... 正确的答案是为驱动程序添加补丁、在其器件树信息中放入一个自动引导节点。  

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

    内核开发人员希望不再在 PRU Remoteproc 驱动程序中添加自定义电路板兼容检查和用例相关固件名称。

    这方面的一个示例是我们在工业开发套件(IDK)和工业通信引擎(ICE)板上支持的 PRU 以太网用例。 4.1和4.4 Remoteproc 驱动程序正在检查特定的板兼容字符串以匹配这些板、然后针对这些用例将特定固件加载到 PRU 中。 从4.9内核开始、此责任已从 PRU Remoteproc 驱动程序中删除、并已移至 PRU 以太网客户端驱动程序中。 现在、客户端驱动程序(例如 drivers/net/ti/prueth.c)负责设置固件名称、然后启动处理器。

    以下是解释更改的提交消息: git.ti.com/.../

    您可以创建自己的非常简单的客户端驱动程序、该驱动程序仅设置固件名称、然后启动 PRU、而不是像您提到的那样修补 PRU Remoteproc 驱动程序。 因此、器件树中的自动引导节点可以探测这个简单的驱动程序、甚至可以根据需要传入固件名称供您使用。 上面提到的 prueth.c 客户端驱动程序将显示如何设置固件名称并从内核驱动程序引导 PRU。

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

    啊哈。 谢谢你。  (我一直在处理客户端驱动程序、并希望通过 PRU 固件资源表中的名称加载该驱动程序... 这对我来说有点奇怪。)