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/TMDSIDK437X:无法使用 PRU 以太网端口

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/663053/linux-tmdsidk437x-unable-to-use-pru-ethernet-ports

器件型号:TMDSIDK437X

工具/软件:Linux

我已从此  页面安装 ti-processor-sdk-linux-am437x-evm-04.02.00.09-Linux-x86-Install.bin: http://software-dl.ti.com/processor-sdk-linux/esd/AM437X/latest/index_FDS.html。  

任何时候。 我还尝试在/etc/network/interfaces 文件中设置静态 IP。 之后,他们确实获得了在运行 ifup eth1和 ifupeth2时配置的 IP,但他们不可访问(不可访问)。 我无法使用 PRU

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    检查是否按照以下说明配置了所有内容: processors.wiki.ti.com/.../Linux_Core_PRUSS_Ethernet_User's_Guide
    另请参阅 processors.wiki.ti.com/.../PRU-ICSS_Ethernet
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    大家好、感谢您的回复。 我检查了您的链接并仔细阅读了这些链接、并遵循了适用的说明。

    我使用了预构建的映像来测试电路板、但无法使用 PRU 以太网端口。 当将电缆连接到 PRU-ETH1时、会显示一条消息"Link is up eth1"等。但在运行 ifup eth1后、它会重复"sending discover..." 无穷大。 千兆位端口(eth0)按照相同的步骤工作正常。 (我在我的主机 Ubuntu 计算机中设置了 DHCP 服务器)

    在电路板上运行 ifconfig 时、我可以看到 eth1有多个丢弃的数据包。 这是否与此相关? 该怎么办? 是否有任何方法可以判断电路板是否损坏?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!

    您能否指明您正在使用的电路板? 是 TI EVM 还是定制板? 下面是一个用于在 CPSW 端口上执行基本调试的检查清单。 虽然此问题在 PRU eth 端口上、但清单中的某些内容仍然适用。 目前、我们主要对什么是 ethtool 感兴趣 返回。 能否附加 ethtool 的结果和引导日志? 请勿将结果剪切并粘贴到帖子中、因为这会使帖子之间的滚动时间很长。 此外、请作为单独的文件附加、而不是作为压缩存档的一部分。

    processors.wiki.ti.com/.../5x_CPSW

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

    大家好、感谢您花时间为我提供帮助。

    我有这个板: http://www.ti.com/tool/TMDSIDK437X 

    下面是随附的请求日志文件。 在引导日志中、我注意到一件有趣的事情、在引导日志中、我注意到电路板正在加载一个看起来适用于另一个(Beagle)电路板的 wkup_m3固件。 不确定这是否与 PRU 以太网端口似乎不工作有关。

     我已将 eth0和 eth2连接到交换机、而交换机又连接到运行 DHCP 服务器的 Ubuntu 计算机的接口。  在日志文件中、我已通过手动设置 IP 测试了 eth2端口。 这允许我 ping 其 IP (192.168.1.50)。 然后,我尝试从 eth2中拔下电缆,其 IP 仍可正常工作(!) 但是、当我最终从 eth0上拔下电缆时、它将不再起作用。 到 eth2的流量似乎是通过 eht0路由的。

    [6.195979] remoteproc remoteproc0:为 wkup_m3加电
    [6.230164] remoteproc remoteproc0:引导 FW 映像 AM335x-pm-firmware.elf、大小224268
    [6.231018] Remoteproc Remoteproc0:远程处理器 wkup_m3现已启动

    e2e.ti.com/.../full_5F00_boot_5F00_log.txt

    e2e.ti.com/.../ethtool_5F00_eth0.txt

    e2e.ti.com/.../ethtool_5F00_eth0.txt

    e2e.ti.com/.../ethtool_5F00_eth2.txt

    e2e.ti.com/.../ethtool_5F00_S_5F00_eth2.txt

    e2e.ti.com/.../eth2_5F00_ifconfig.txt

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

    在同一子网上设置2个端口将导致您看到的问题、每个端口必须具有唯一的子网。

    您能否断开千兆以太网连接?启动电路板时、连接的 PRU 端口是否会获得 IP 地址?

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

    Schuyler、您好、

    我已尝试按照您的建议断开非 PRU 千兆位以太网端口、但没有任何结果、我似乎无法使任何 PRU 以太网端口正常工作。

    我尝试过的:

    • 在/etc/network/interfaces 中为 eth1和2设置 DHCP、重新启动电路板、然后运行 ifup eth1 (并尝试 ifup eth2)。 该板(通过控制台)显示:"正在发送发现..." 很多次。 Wireshark 中没有任何内容。 未设置 IP。
    • 为 eth1和 eth2设置静态 IP 并在其上运行 ifup。 没有结果,ifconfig 告诉我他们有一个 IP,但无法 ping 或以其他方式连接到他们。
    • ip a 192.168.1.50/24 dev eth2,无结果

    值得一提的可能是、千兆位端口(在断开连接之前)工作正常

    我不是很好。

    此致、

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

    感谢您发布测试结果。 我还在这里验证了您在 AM437x IDK 电路板上的结果。 这与刚刚在 AM335x PRU 以太网中发现的问题类似。 我在内部提出了这个问题、以寻求解决方案。 我还进行了测试、以确保之前的4.01 SDK 不会出现此问题。 但我无法在 eth1上获得 IP 地址。

    如果您希望在调试此4.02问题时尝试使用4.01 SDK、您可以使用以下链接访问以前的 SDK:

    software-dl.ti.com/.../index_FDS.html

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

    Schuyler、您好、

    感谢您发布解决方案。 该板使用旧版本的 SDK、现在按预期工作。

    此致