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.

[参考译文] AM3358:以太网连接问题-冗余协议 PRP 非卸载

Guru**** 2473270 points
Other Parts Discussed in Thread: AM3358

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1464852/am3358-problems-with-ethernet-connectivity---redundancy-protocol-prp-non-offload

器件型号:AM3358

工具与软件:

大家好!  

我不熟悉微处理器、Linux 和网络、因此我的项目需要您的帮助。

我将此器件与 AM3358处理器搭配使用、我想将其用作 DANP 器件。 它有两个以太网端口、在我之前(大约2020年)、有人已经安装了用于 HSR/PRP 冗余的内核。

我尝试通过以下脚本设置 prp 配置:


mac=`ifconfig eth1 | grep HWaddr | awk '{print 5美元}'`
IP=`ifconfig eth1 2>awk|awk /dev/null '/inet addr:/{print 2美元}'|sed 's/addr://'`
echo "Configuring new PRP network interface with address $IP MAC $MAC"

ifconfig eth0 0.0.0.0 down
ifconfig eth1 0.0.0.0  down
ip link set dev eth0 address $mac
ip link set dev eth1 address $mac
ifconfig eth0 up
ifconfig eth1 up
ip link add name prp0 type prp slave1 eth0 slave2 eth1
ip addr add $IP/24 dev prp0
ifconfig prp0 up

运行正常一段时间、我将设备 eth0连接到 PC、可以对设备执行 ping 操作、连接 eth1也是如此。

但是、连接随机停止工作、我无法再从 PC 访问我的设备。

我观察到、通过使用 tcpdump、设备会接收 ICMP 请求并发送回复。 但是、回复未到达我的 PC。
一段时间后、通信就像什么也没发生一样恢复、但问题间歇性地再次出现。 我已经检查了硬件完整性并更换了以太网电缆。
不管这些变化如何、问题仍然存在。

是否有人遇到过类似问题或对如何解决问题有建议?
为了了解该问题的根本原因、我应在哪里进一步查看或调试?
这是否是由某些网络或内核配置导致的?
感谢您的指导!

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

    设置两个具有相同 MAC 和 IP 地址的接口没有意义。 使用 PRP、您不希望更改下面的 MAC 地址、您可以创建一个虚拟接口(通常称为 prp0)、该接口使用下面的 eth0和 eth1。 请按照中的步骤操作 、例如、https://software-dl.ti.com/processor-sdk-linux-rt/esd/AM64X/latest/exports/docs/linux/Foundational_Components Kernel_Drivers Network/HSR_PRP_Network.html#HSR-prp-non-offload Non_Offload 。

     Pekka

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

    感谢您的答复。

    但是我检查了你给我的示例,我发现它在管理 MAC 地址方面做同样的事情:

    IP 链接集设备$IFA 地址$Mac
    IP 链接集设备设备$ifb 地址$Mac 

    是不是与我在代码中执行的操作相同? 您能帮助我理解吗?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    很抱歉、您是对的、MAC 应该是相同的、关键要求是两个 LAN 是真正独立的(我的错误来源、因此请选择其中一个接口的 MAC 并将其用于这两个接口)。 PRP 基础是两个不同的 LAN、 https://wiki.wireshark.org/PRP 。  

    您是否尝试过这些步骤? 另外、什么是网络拓扑、LAN 的外观如何? 我会做 Wireshark 捕获两个 LAN 中的流量、看是否与您的预期相符。

    我遇到的另一个不匹配问题是您的命令中的此行:

    Unknown 说:
    ip link add name prp0 type prp slave1 eth0 slave2 eth1

    这样可以吗? 我不认为有 typr prp? ip 命令手册页 https://man7.org/linux/man-pages/man8/ip-link.8.html 具有(参见 PRP 部分):

           High-availability Seamless Redundancy (HSR) Support
                  For a link of type HSR the following additional arguments
                  are supported:
    
                  ip link add link DEVICE name NAME type hsr slave1
                  SLAVE1-IF slave2 SLAVE2-IF [ supervision ADDR-BYTE ] [
                  version { 0 | 1 } [ proto { 0 | 1 } ]
    
                          type hsr - specifies the link type to use, here
                          HSR.
    
                          slave1 SLAVE1-IF - Specifies the physical device
                          used for the first of the two ring ports.
    
                          slave2 SLAVE2-IF - Specifies the physical device
                          used for the second of the two ring ports.
    
                          supervision ADDR-BYTE - The last byte of the
                          multicast address used for HSR supervision frames.
                          Default option is "0", possible values 0-255.
    
                          version { 0 | 1 } - Selects the protocol version
                          of the interface. Default option is "0", which
                          corresponds to the 2010 version of the HSR
                          standard. Option "1" activates the 2012 version.
    
                          proto { 0 | 1 } - Selects the protocol at the
                          interface. Default option is "0", which
                          corresponds to the HSR standard. Option "1"
                          activates the Parallel Redundancy Protocol (PRP).

    这意味着以下内容将用于设置 prp (magic 为 proto 1、类型为 HSR、即使它是 prp):

    ip link add name prp0 type hsr slave1 eth0 slave2 eth1 supervision 45 proto 1. 

     Pekka

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

    好的、所以 我尝试了许多不同的设置、并且在所有设置中都有相同的问题:

    在设置1和设置2中、我有一个 RedBox 可用、因此 II 使用它使我的 PC 冗余、并能够与我的设备通信。 我已经通过红框记录了我的 PC、设备以及管理交换机上的流量

    Wat I 在录音上观察到的问题描述在我的初始 queston( ICMP 回复没有到达我的电脑)。 我可以附加这些录像。  e2e.ti.com/.../rec_5F00_28_5F00_oct_5F00_2024.zip

    现在、红框不再可用、因此我需要执行相同的测试来了解问题。 我使用了一个软件(elipse)使我的 PC prp 冗余. 您还可以在设置5中看到、我将两个设备连接在一起、并将我的 PC 与串行控制台配合使用。 仍然会出现相同的问题。

    关于激活 prp 接口的命令、我遵循以下示例 https://software-dl.ti.com/processor-sdk-linux/esd/docs/06_03_00_106/linux/Industrial_Protocols_HSR_PRP.html 、因为我的设备与您链接的设备没有相同的 ip-link 版本。 的确、如果我写:

    ip link add name $if type HSR slave1 $IFA slave2 $ifb supervision 45 proto 1. 

    我的器件无法解析原型参数。 如果我使用 Help 函数、则会得到以下结果:

    UN70HS07M01000305 admin@HMI-011C:~$ ip link add name prp0 type prp help

    用法:ip link add name type prp slave1 slave1-if slave2 SLAVE2-if
    [监控 ADDR 字节][ SV_vid SV-PCP VID ][ SV_PCP SV-PCP ]
    [ SV_CFI SV-CFI]

    文件夹
    新 prp 设备的名称(例如 prp0)
    SLAVE1-IF、SLAVE2-IF
    两个从器件绑定到 PRP 器件
    地址字节
    0-255;用于 PRP 监控的多播地址的最后一个字节
    帧(默认值= 0)
    SV- VID
    0-4094;要在 SV 帧的 VLAN 标记中使用的 VLAN ID (默认值0)
    SV-PCP
    0-7;要在 SV 帧的 VLAN 标记中使用的 PCP 值(默认值0)
    SV-CFI
    0-1;在 SV 帧的 VLAN 标记中使用的 CFI 值(默认值0)
    如果指定了 SV_vid、SV_PCP 或 SV_CFI 之一、请使用 VLAN 标签。 默认值
    用于未指定的数据

    UN70HS07M01000305 admin@HMI-011C:~$ ip link add name hsr0 type HSR help
    用法:ip link add name type HSR slave1 slave1-if slave2 SLAVE2-if
    [监管 ADDR-字节][版本][ SV_vid SV- VID ]
    [ SV_PCP SV-PCP ][ SV_CFI SV-CFI ]

    文件夹
    新 HSR 器件的名称(例如 hsr0)
    SLAVE1-IF、SLAVE2-IF
    两个从器件绑定到 HSR 器件
    地址字节
    0-255;用于 HSR 监控的多播地址的最后一个字节
    帧(默认值= 0)
    修补程序版本
    0、1;要使用的协议版本。 (缺省值= 0)
    SV- VID
    0-4094;要在 SV 帧的 VLAN 标记中使用的 VLAN ID (默认值0)
    SV-PCP
    0-7;要在 SV 帧的 VLAN 标记中使用的 PCP 值(默认值0)
    SV-CFI
    0-1;在 SV 帧的 VLAN 标记中使用的 CFI 值(默认值0)
    如果指定了 SV_vid、SV_PCP 或 SV_CFI 之一、请使用 VLAN 标签。 默认值
    用于未指定的数据

    这对我来说是一个非常复杂的问题、有什么想法、为什么会发生这种情况?

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

    此处的许多活动部件、包括装有 PRP SW ElipseTM 的 Windows PC。 我将重点介绍一种包含设置。 但一次只能启动一部分

    您在使用什么硬件? 一些 EVM 或社区板或您自己的设计? 首先、在 Windows PC 中混用之前、确保 PRP 仅在嵌入式环境(2块或最好是4块 AM335x 板)中工作。

    [报价 userid="639329" url="~/support/processors-group/processors/f/processors-forum/1464852/am3358-problems-with-ethernet-connectivity---redundancy-protocol-prp-non-offload/5624555 #5624555"]

    关于激活 prp 接口的命令、我遵循以下示例 https://software-dl.ti.com/processor-sdk-linux/esd/docs/06_03_00_106/linux/Industrial_Protocols_HSR_PRP.html 、因为我的设备与您链接的设备没有相同的 ip-link 版本。 的确、如果我写:

    ip link add name $if type HSR slave1 $IFA slave2 $ifb supervision 45 proto 1. 

    [报价]

    6.3是一款非常旧的 SDK (2020年4月)。 iproute2软件包(其中包含命令 ip)也必须是旧版本。 因此,更新到更现代的东西,如9.3可在 https://www.ti.com/tool/PROCESSOR-SDK-AM335X .

    第二个注释是关于您使用的接口。 AM335x 具有4个可能的以太网端口、其中2个来自 CPSW3G (标准以太网、1G RGMII)、2个来自 ICSS (100M MII)。 您提供的链接 software-dl.ti.com/.../Industrial_Protocols_HSR_PRP.html 为 ICSS 提供特殊的 PRP 重复丢弃固件和非上游补丁、从而使其在 Linux 中正常工作。 您要尝试使用什么物理接口? 来自 ICSS 的 MIIS 或来自 CPSW 的 RGMII?

    ip 命令,从我可以告诉没有类型 prp ,它是类型 HSR .. PROTO 1、用于创建 PRP 而无需重复的拖放卸载。 旧的6.3 SDK 包含了一些从未被更新的修补程序、可能 PRP 类型就是其中之一。

     Pekka

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

    抱歉,这是因为我从去年九月开始工作,所以我做了很多不同的测试。 我将尝试按照您的建议逐步清除所有内容并重新启动。  

    关于硬件、我不使用 EVM、但它是定制设计、并且我只有2个  AM335x 板。 每个节点都有2个以太网端口、我认为它们 来自 ICSS (100M MII)、但如果我错了、请纠正一下:

    UN70HS07M01000305 admin@HMI-011c:~$ ethtool eth0
    Settings for eth0:
            Supported ports: [ TP AUI BNC MII FIBRE ]
            Supported link modes:   10baseT/Half 10baseT/Full
                                    100baseT/Half 100baseT/Full
            Supported pause frame use: Symmetric Receive-only
            Supports auto-negotiation: Yes
            Supported FEC modes: Not reported
            Advertised link modes:  10baseT/Half 10baseT/Full
                                    100baseT/Half 100baseT/Full
            Advertised pause frame use: No
            Advertised auto-negotiation: Yes
            Advertised FEC modes: Not reported
            Speed: 10Mb/s
            Duplex: Half
            Port: MII
            PHYAD: 1
            Transceiver: internal
            Auto-negotiation: on
    Cannot get wake-on-lan settings: Operation not permitted
            Current message level: 0x00000000 (0)
    
            Link detected: no
    UN70HS07M01000305 admin@HMI-011c:~$ ethtool eth1
    Settings for eth1:
            Supported ports: [ TP AUI BNC MII FIBRE ]
            Supported link modes:   10baseT/Half 10baseT/Full
                                    100baseT/Half 100baseT/Full
            Supported pause frame use: Symmetric Receive-only
            Supports auto-negotiation: Yes
            Supported FEC modes: Not reported
            Advertised link modes:  10baseT/Half 10baseT/Full
                                    100baseT/Half 100baseT/Full
            Advertised pause frame use: No
            Advertised auto-negotiation: Yes
            Advertised FEC modes: Not reported
            Link partner advertised link modes:  10baseT/Half 10baseT/Full
                                                 100baseT/Half 100baseT/Full
            Link partner advertised pause frame use: Symmetric Receive-only
            Link partner advertised auto-negotiation: Yes
            Link partner advertised FEC modes: Not reported
            Speed: 100Mb/s
            Duplex: Full
            Port: MII
            PHYAD: 5
            Transceiver: internal
            Auto-negotiation: on

    关于此内容:

    6.3是一款非常旧的 SDK (2020年4月)。 iproute2软件包(其中包含命令 ip)也必须是旧版本。 因此,更新到更现代的东西,如9.3可在 https://www.ti.com/tool/PROCESSOR-SDK-AM335X .[/报价]

    我不知道如何更新 SDK 和 ip2route 封装、把我当作 Linux 环境中的新手。 您会建议一个简单的教程吗?

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

    好的、看起来您正在使用基于 ICSS 的以太网、因为它是旧的6.3 SDK、它具有 TI 特有的 iproute2 (已在上游拒绝)。 因此、对于此平台和 SDK、唯一的方法是执行 https://software-dl.ti.com/processor-sdk-linux/esd/docs/06_03_00_106/linux/ LinuxHSR_PRP.html 中的步骤搜索"无卸载"、忽略较新的 Industrial_Protocols_(9.3)和任何上游标准 Linux 指令。 使用较新的 SDK 时、使用上游 IP 命令的步骤将不会产生卸载。 可用于 PRP 卸载的上游解决方案的 AM335x SDK 已计划就绪、目前尚未推出。

    我不知道如何更新 SDK 和 ip2route 封装、请考虑我是 Linux 环境中的新手。 您可以建议一个简单的教程吗?

    您是使用 PRP 调试部署的系统中的问题、还是初次研究 PRP 的使用情况? 如果有现有系统、您应该联系负责管理产品构建/制造的人员。  

     Pekka

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

    好的、我明白了。

    我再次尝试按照 此处的"无卸载"结构配置 PRP 冗余 、并使用如下设置:

    两个设备互相 ping 和正如我想象的问题仍然发生:他们不再看到对方 ICMP 回复。

    所以我真的不知道 这是由于内核错误(但 prp 统计数据是可以的,数据包不是格式错误),还是问题是在以太网端口配置。

    (硬件可以、因为如果我将其用于其他目的、它就可以正常工作)。

    您是在使用 PRP 调试已部署系统中的问题、还是首次调查 PRP 的使用情况? 如果有现有系统、您应该联系负责管理产品构建/制造的人员。  [报价]

    是的、我正在使用 PRP 调试已部署的系统。 不幸的是、我无法联系出产品的制造商、所以我尝试自己来做。

    如果有任何其他建议进入你的头脑中,我应该调查的地方更多让我知道。

    -------------------------------------------------------- 稍后添加了--------------------------------------------------------

    在器件之间的一次 ping 会话期间、我在串行终端上获得了该输出:

    UN70HS07M01000305 admin@HMI-011c:/proc/prp0$ ping 192.168.127.119
    PING 192.168.127.119 (192.168.127.119) 56(84) by[  984.068708] ------------[ cut here ]------------
    tes of data.
    [  984.077427] WARNING: CPU: 0 PID: 3115 at net/hsr-prp/hsr_prp_framereg.c:303 hsr_addr_subst_dest+0x10c/0x134
    [  984.089454] hsr_addr_subst_dest: Unknown node
    [  984.094322] Modules linked in: bluetooth ecdh_generic cfg80211 omap_aes_driver crypto_engine omap_crypto omap_sham omap_rng rng_                                                                                                          core quota_v2 quota_tree
    [  984.109012] CPU: 0 PID: 3115 Comm: ping Tainted: G        W       4.14.94-rt50-ge055122 #1
    [  984.117880] Hardware name: Generic AM33XX (Flattened Device Tree)
    [  984.124469] Backtrace:
    [  984.127061] [<c0110244>] (dump_backtrace) from [<c01104f0>] (show_stack+0x18/0x1c)
    [  984.135299]  r6:00000000 r5:c0837dbc r4:db6ffa48 r3:00400100
    [  984.141388] [<c01104d8>] (show_stack) from [<c060ec60>] (dump_stack+0x20/0x28)
    [  984.148963] [<c060ec40>] (dump_stack) from [<c012bd14>] (__warn+0xd8/0x104)
    [  984.156474] [<c012bc3c>] (__warn) from [<c012bd80>] (warn_slowpath_fmt+0x40/0x48)
    [  984.164495]  r9:db17a4e0 r8:0000f788 r7:00002f89 r6:ddd8e464 r5:db187fc0 r4:ddeda240
    [  984.172770] [<c012bd44>] (warn_slowpath_fmt) from [<c060612c>] (hsr_addr_subst_dest+0x10c/0x134)
    [  984.182098]  r3:c076f2bb r2:c0837e06
    [  984.185857] [<c0606020>] (hsr_addr_subst_dest) from [<c060a0f0>] (hsr_prp_forward_skb+0xfb4/0x11a0)
    [  984.195547]  r5:db187fc0 r4:ddeda240
    [  984.199302] [<c060913c>] (hsr_prp_forward_skb) from [<c0606910>] (hsr_prp_dev_xmit+0x38/0x70)
    [  984.208442]  r10:ddedc9c0 r9:db17a000 r8:c0a063d4 r7:c0a05fcc r6:ddeda300 r5:db17a000
    [  984.216830]  r4:db187680
    [  984.219497] [<c06068d8>] (hsr_prp_dev_xmit) from [<c055bbd8>] (dev_hard_start_xmit+0x94/0x108)
    [  984.228709]  r6:00000000 r5:00000000 r4:ddeda300 r3:c06068d8
    [  984.234836] [<c055bb44>] (dev_hard_start_xmit) from [<c055c1e0>] (__dev_queue_xmit+0x4ec/0x5dc)
    [  984.244096]  r10:db1f8100 r9:db17a158 r8:00000002 r7:ddedc9c0 r6:db17a000 r5:ddeda300
    [  984.252456]  r4:00000000
    [  984.255119] [<c055bcf4>] (__dev_queue_xmit) from [<c055c2e4>] (dev_queue_xmit+0x14/0x18)
    [  984.263799]  r10:c0a335d8 r9:db17a158 r8:00000002 r7:db05ba78 r6:db17a000 r5:ddeda300
    [  984.272186]  r4:db05ba00
    [  984.274853] [<c055c2d0>] (dev_queue_xmit) from [<c056a160>] (neigh_resolve_output+0x16c/0x184)
    [  984.284087] [<c0569ff4>] (neigh_resolve_output) from [<c058e8b0>] (ip_finish_output2+0x308/0x37c)
    [  984.293568]  r8:db17a15c r7:00000010 r6:db17a000 r5:db05ba00 r4:ddeda300
    [  984.301339] [<c058e5a8>] (ip_finish_output2) from [<c058ff58>] (ip_finish_output+0x1f8/0x208)
    [  984.310322]  r10:00000000 r9:777fa8c0 r8:c0a335d8 r7:d8bda000 r6:000005d6 r5:00000001
    [  984.318785]  r4:ddeda300
    [  984.321890] [<c058fd60>] (ip_finish_output) from [<c05908f0>] (ip_output+0x90/0x104)
    [  984.330039]  r10:00000000 r9:777fa8c0 r8:db17a000 r7:d8bda000 r6:c0a335d8 r5:00000001
    [  984.338521]  r4:ddeda300
    [  984.341401] [<c0590860>] (ip_output) from [<c05900f0>] (ip_local_out+0x48/0x4c)
    [  984.349063]  r8:00000000 r7:00000000 r6:c0a335d8 r5:d8bda000 r4:ddeda300
    [  984.356385] [<c05900a8>] (ip_local_out) from [<c0591180>] (ip_send_skb+0x1c/0x5c)
    [  984.364369]  r6:00000040 r5:c0a335d8 r4:d8bda000 r3:00000000
    [  984.370310] [<c0591164>] (ip_send_skb) from [<c05911e8>] (ip_push_pending_frames+0x28/0x38)
    [  984.379268]  r5:db6fff48 r4:d8bda000
    [  984.383197] [<c05911c0>] (ip_push_pending_frames) from [<c05b5648>] (raw_sendmsg+0x5bc/0x830)
    [  984.392302] [<c05b508c>] (raw_sendmsg) from [<c05c22a4>] (inet_sendmsg+0x3c/0x68)
    [  984.400170]  r10:00000000 r9:db6ffe28 r8:00000000 r7:dd158c40 r6:00000040 r5:db6fff48
    [  984.408616]  r4:d8bda000
    [  984.411501] [<c05c2268>] (inet_sendmsg) from [<c0540dcc>] (sock_sendmsg+0x1c/0x2c)
    [  984.419437]  r6:00000000 r5:00000000 r4:db6fff48 r3:c05c2268
    [  984.425637] [<c0540db0>] (sock_sendmsg) from [<c054176c>] (___sys_sendmsg+0x188/0x218)
    [  984.434115] [<c05415e4>] (___sys_sendmsg) from [<c05424a0>] (__sys_sendmsg+0x48/0x6c)
    [  984.442460]  r10:00000128 r9:db6fe000 r8:c010c4c8 r7:00000128 r6:0001025c r5:00000000
    [  984.450830]  r4:dd158c40
    [  984.453508] [<c0542458>] (__sys_sendmsg) from [<c05424d4>] (SyS_sendmsg+0x10/0x14)
    [  984.461704]  r6:00011404 r5:00000040 r4:000113f4
    [  984.466562] [<c05424c4>] (SyS_sendmsg) from [<c010c280>] (ret_fast_syscall+0x0/0x5c)
    [  984.474900] ---[ end trace 0000000000000003 ]---

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

    1.使用网络分路器(如 https://www.profitap.com/profishark-1g/ )收集工作设置的数据包捕获以及停止工作时的数据包捕获。 从网络流量的角度对此进行总结。 尝试将 Linux 中的任何日志与这些事件相关联。

    遗憾的是、我无法联系产品的制造商

    2.软件构建和部署基础架构。 如果您能够隔离此问题、并且需要更新引导映像或文件系统中的某些内容。 你将如何修复。 因此、 需要解决对软件构建系统的访问权限。

    3. AM335x Linux SDK 6.3不是我们支持的内容。 TI 的第一个建议是迁移到最新的 SDK、看看问题是否仍然存在。

    4. AM335x Linux SDK 6.3有一组 TI 特定的 PRP 补丁、我们在后续的 SDK 中不会提供这些补丁。 因此、您需要转到更新版本。

    只要您可以隔离问题(请参阅#1)、就可能不是直接的 SW。 我认为这是起点。

    关于软件更新  、我建议联系 https://www.couthit.com/、他们已经为 AM335x 和 ICSS 以太网 Linux 功能(如 PRP)完成了反向移植功能和版本更新。

     Pekka