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.
您好专家:
我们使用的 soc 是 TDA4VM,sdk0703,我们使用 cpsw2g 来制定我们的网络要求。 网络开发正常、可以正常 ping 通。 但是、在多次上电和断电测试后、ping 偶尔会失败。 在进行比较和故障排除后、我们发现/proc/interrupt 以太网存在问题。 通常会有一个值。 当出现问题时,发现值是0.转储寄存器后,我发现 Mac 失败。 检查附件。
ethtool -S 接口和 cpsw2g reg value data,这是之前捕获的信息。 让我们重点了解 ethtool 信息。 有很多寄存器信息。
我们在这里做了一些测试。 打开计算机后,我们关闭 ifconfig eth0,发现问题消失了。 但是、这种方法未被接受、需要正式找出并解决根本原因。
大家好、Gaston
感谢您的提问。
您好、专家
我是 TI 客户的界面、问题紧急、请尽快解决。 如果您需要任何信息、请告诉我。
此致
泽昆
这里有更新吗?
此致
泽昆
你好,泽昆
您使用的是 RTOS SDK 还是 Linux?
此致
迪瓦卡尔
在整个系统中、我们使用 mcu10、mcu20、mcu30和 Linux 端。 在 Linux 端开发了 SDK 0703 cpsw2g。
您好!
您是否为您的网络使用 IET MAC? 您突出显示的寄存器仅用于 IET。
此致、
坦迈
调试后、我发现未使用 IET MAC、因此 MAC 故障寄存器似乎没有问题。
您好!
让我们从头开始说起。 您能否说明以下几点:
此致、
坦迈
您好、Tanmay:
发生概率不确定。 在进行上电/断电测试时、有时会发生几百次、有时会发生数千次、但仍会发生超过10,000次。
我向 ifconfig 相应代码的 slave_open 回调函数添加了调试、发现该过程是相同的、而且没有发生错误。 但是、有一件事有点奇怪。 我发现无论 Ping 正常还是失败、都会发生这种情况。 探查两次、首次将显示 am65-cpsw-nuss 46000000.Ethernet:请求 TX DMA 通道-517失败。
cat/proc/interrupt 的屏幕截图。 以上是 ping 成功时的情况。 如果在下面出现问题、通过比较、您可以看到在出现问题时以太网没有中断。
删除 VLAN 配置后、发现问题仍然存在、因此与 VLAN 配置无关。
您好!
探头两次,第一次显示 am65-cpsw-nuss 46000000.Ethernet:无法请求 TX DMA 通道-517。
这很好。 第一个探针时某些 DMA 资源不可用、因此该探针将被推迟并在第二个探针中运行。 "517"是 EPROBE_DEFPIT 的错误代码。 如果在通过和失败两种情况下都观察到了这一点、则这是正常现象、无需担心。
并查看问题是否已解决。
此致、
坦迈
您好、Tanmay:
我查看了该补丁、发现需要添加到此补丁的代码默认包含在 sdk0703中。 默认情况下、通用结构中包含标志 RX_IRQ_DISABLED。
您好!
很抱歉、这不是7.3版的标签。 它可能是添加的,而释放了混淆。
因此、您似乎在 Rx 侧什么都没有收到。 您是否可以在通过和失败的情况下使用"ethtool -S eth0"获取 CPSW 统计数据。 我们可以看到在问题发生期间是否观察到任何其他压降。
此致、
坦迈
您好, Tanmay:
Ping 正常:
NIC 统计信息:
P0_RX_GOOD_FRAMES:647
P0_Rx_BROADCAST_FRAMES:108
P0_RX_MULTICAST_FRAMES:239
P0_RX_CRC_ERRORS:0
P0_RX_SUBITRACTION_FRAMES:0
P0_Rx_UNDERSEED_FRAMES:0
P0_ALE_DROP:0
P0_ALE_OVERRIDE_DROP:0
P0_Rx_八 位位组:430265
P0_TX_GOOD_FRAMES:201
P0_TX_BROADCAST_FRAMES:11
P0_TX_MULTICAST_FRAMES:24
P0_TX_八 位位组:22378
P0_TX_64B_FRAMES:118
P0_TX_65_TO_127B_FRAMES:390
P0_TX_128_TO_255B_帧:60
P0_TX_256_TO_511B_FRAMES:18
P0_TX_512_TO_1023B_FRAMES:3
P0_TX_1024B_帧:259
P0_NET_八 位位组:452643
P0_Rx_Bottom_fifo_Drop:0
P0_RX_PORT_MASK_DROP:0
P0_Rx_TOP_Fifo_Drop:0
P0_ALE_RATE_LIMIT_DROP:0
p0_ale_vid_intenge_drop:0
p0_ale_da_eq_sa_drop:0
P0_ALE_BLOCK_DROP:0
P0_ALE_SECURE_DROP:0
P0_ALE_auth_Drop:0
P0_ALE_UNKNOWN _UCAST:0
P0_ALE_UNKNOWN _UCAST_BYTES:0
P0_ALE_UNKNOWN _mcast:0
p0_ale_unknown_mcast_Bytes:0
P0_ALE_UNKNOWN bcast:0
p0_ale_unknown_bcast_Bytes:0
P0_ALE_POL_MATCH:0
P0_ALE_POL_MATCH_RED:0
P0_ALE_POL_MATCH_YELLY:0
p0_ale_mcast_sa_Drop:0
P0_ALE_DUAL_VLAN_DROP:0
p0_ale_len_err_Drop:0
P0_ALE_IP_NEXT_HDR_DROP:0
P0_ALE_IPV4_FRAG_DROP:0
P0_TX_mem_protect_err:0
P0_TX_PRI0:0
P0_TX_PRIE1:0
P0_TX_PRI2:0
P0_TX_PRA3:0
P0_TX_PRI4:0
P0_TX_PRIE5:0
P0_TX_PRI6:0
P0_TX_PRI7:0
P0_TX_pri0_bcnt:0
P0_TX_PRI1_bcnt:0
P0_TX_PRI2_bcnt:0
P0_TX_PRI3_bcnt:0
P0_TX_PRI4_bcnt:0
P0_TX_PRI5_Bcnt:0
P0_TX_PRI6_Bcnt:0
p0_tx_pri7_bcnt:0
P0_TX_PRE0_DROP:0
P0_TX_PRI1_DROP:0
P0_TX_PRI2_DROP:0
P0_TX_PRI3_DROP:0
P0_TX_PRI4_DROP:0
P0_TX_PRI5_DROP:0
P0_TX_PRI6_DROP:0
P0_TX_PRI7_DROP:0
P0_TX_pri0_drop_bcnt:0
P0_TX_PRI1_DROP_bcnt:0
P0_TX_PRI2_DROP_bcnt:0
P0_TX_PRI3_DROP_bcnt:0
P0_TX_PRI4_DROP_bcnt:0
P0_TX_PRI5_DROP_bcnt:0
P0_TX_PRI6_DROP_bcnt:0
P0_TX_PRI7_DROP_bcnt:0
RX_GOOD_FRAMES:224
RX_BROADCAST 帧:11
RX_MULTICAST_FRAMES:46
RX_PAUSE_FRAMES:0
RX_CRC_ERRORS:0
RX_ALIGN_CODE_ERRORS:0
RX_COVERSIATE_FRAMES:0
RX_Jabber_FRAMES:0
RX_UNDERSEED_FRAMES:0
RX_Frages":0
ALE_DROP:23
ALE_OVERRIDE_DROP:0
RX_八 位位组:26402
TX_GOOD_FRAMES:647
TX_BROADCAST 帧:108
TX_MULTICAST_FRAMES:239
TX_PAUSE_FRAMES:0
TX_DELAVED_FRAMES:0
TX_COILING_FRAMES:0
TX_SINGLE_COLL_FRAMES:0
TX_MULT_COLL_FRAMES:0
TX_EXTRACULT_EXCELESSES:0
TX_LATED_EXCLESSES:0
RX_IPG_ERROR:0
TX_CARRER_SENSE_ERRORS:0
TX_八 位位组:430265
TX_64B_FRAMES:119
TX_65_TO_127B_帧:392
TX_128_TO_255B_帧:80
TX_256_TO_511B_帧:18
TX_512_TO_1023B_帧:3
TX_1024B_帧:259
网络八位字节:456667
RX_Bottom_fifo_Drop:0
RX_PORT_MASK_DROP:23
RX_TOP_Fifo_Drop:0
ALLE_RATE_LIMIT_DROP:0
ale_vid_intenge_drop:0
ale_da_eq_sa_Drop:0
ALE_BLOCK_DROP:0
ALE_SECURE_DROP:0
ale_auth_Drop:0
ale_unknown_ucast:167
ale_unknown_ucast_Bytes:18096
ale_unknown_mcast:46
ale_unknown_mcast_Bytes:7152
ale_unknown_bcast:11
ale_unknown_bcast_Bytes:1154
ALE_POL_MATCH:0
ALE_POL_MATCH_RED:0
ale_pol_match_yellow:0
ale_mcast_sa_Drop:0
ALE_DUAL_VLAN_DROP:0
ale_len_err_drop:0
ALE_IP_NEXT_HDR_DROP:0
ALE_IPV4_FRAG_DROP:0
iet_rx_assembly_err:0
IET_Rx_ASSEMBLE_OK:0
IET_Rx_SMD_err:0
IET_RX_FRAG:0
IET_TX_HOLD:0
IET_TX_FRAG:0
tx_mem_protect_err:0
TX_PRI0:647
TX_PRIE1:0
TX_PRI2:0
tx_pri3:0
TX_PRI4:0
TX_PRI5:0
TX_PRI6:0
TX_PRI7:0
tx_pri0_bcnt:430265
tx_pri1_bcnt:0
tx_pri2_bcnt:0
tx_pri3_bcnt:0
tx_pri4_bcnt:0
tx_pri5_bcnt:0
tx_pri6_bcnt:0
tx_pri7_bcnt:0
TX_PRP0_DROP:0
TX_PRI1_DROP:0
TX_PRI2_DROP:0
TX_PRI3_DROP:0
TX_PRI4_DROP:0
TX_PRI5_DROP:0
TX_PRI6_DROP:0
TX_PRI7_DROP:0
tx_pri0_drop_bcnt:0
TX_PRI1_DROP_bcnt:0
tx_pri2_drop_bcnt:0
tx_pri3_drop_bcnt:0
TX_PRI4_DROP_bcnt:0
tx_pri5_drop_bcnt:0
TX_PRI6_DROP_bcnt:0
TX_PRI7_DROP_bcnt:0
Ping 失败:
NIC 统计信息:
P0_RX_GOOD_FRAMES:86705
P0_Rx_BROADCAST_FRAMES:50617
P0_RX_MULTICAST_FRAMES:36088
P0_RX_CRC_ERRORS:0
P0_RX_SUBITRACTION_FRAMES:0
P0_Rx_UNDERSEED_FRAMES:0
P0_ALE_DROP:0
P0_ALE_OVERRIDE_DROP:0
P0_Rx_八 位位组:7638884
P0_TX_GOOD_FRAMES:0
P0_TX_BROADCAST_FRAMES:0
P0_TX_MULTICAST_FRAMES:0
P0_TX_八 位位组:0
P0_TX_64B_FRAMES:50623
P0_TX_65_TO_127B_FRAMES:36037
P0_TX_128_TO_255B_FRAMES:33
P0_TX_256_TO_511B_FRAMES:12
P0_TX_512_TO_1023B_FRAMES:0
P0_TX_1024B_FRAMES:0
P0_NET_八 位位组:7638884
P0_Rx_Bottom_fifo_Drop:0
P0_RX_PORT_MASK_DROP:0
P0_Rx_TOP_Fifo_Drop:0
P0_ALE_RATE_LIMIT_DROP:0
p0_ale_vid_intenge_drop:48
p0_ale_da_eq_sa_drop:0
P0_ALE_BLOCK_DROP:0
P0_ALE_SECURE_DROP:0
P0_ALE_auth_Drop:0
P0_ALE_UNKNOWN _UCAST:0
P0_ALE_UNKNOWN _UCAST_BYTES:0
P0_ALE_UNKNOWN _mcast:0
p0_ale_unknown_mcast_Bytes:0
P0_ALE_UNKNOWN bcast:0
p0_ale_unknown_bcast_Bytes:0
P0_ALE_POL_MATCH:0
P0_ALE_POL_MATCH_RED:0
P0_ALE_POL_MATCH_YELLY:0
p0_ale_mcast_sa_Drop:0
P0_ALE_DUAL_VLAN_DROP:0
p0_ale_len_err_Drop:0
P0_ALE_IP_NEXT_HDR_DROP:0
P0_ALE_IPV4_FRAG_DROP:0
P0_TX_mem_protect_err:0
P0_TX_PRI0:0
P0_TX_PRIE1:0
P0_TX_PRI2:0
P0_TX_PRA3:0
P0_TX_PRI4:0
P0_TX_PRIE5:0
P0_TX_PRI6:0
P0_TX_PRI7:0
P0_TX_pri0_bcnt:0
P0_TX_PRI1_bcnt:0
P0_TX_PRI2_bcnt:0
P0_TX_PRI3_bcnt:0
P0_TX_PRI4_bcnt:0
P0_TX_PRI5_Bcnt:0
P0_TX_PRI6_Bcnt:0
p0_tx_pri7_bcnt:0
P0_TX_PRE0_DROP:0
P0_TX_PRI1_DROP:0
P0_TX_PRI2_DROP:0
P0_TX_PRI3_DROP:0
P0_TX_PRI4_DROP:0
P0_TX_PRI5_DROP:0
P0_TX_PRI6_DROP:0
P0_TX_PRI7_DROP:0
P0_TX_pri0_drop_bcnt:0
P0_TX_PRI1_DROP_bcnt:0
P0_TX_PRI2_DROP_bcnt:0
P0_TX_PRI3_DROP_bcnt:0
P0_TX_PRI4_DROP_bcnt:0
P0_TX_PRI5_DROP_bcnt:0
P0_TX_PRI6_DROP_bcnt:0
P0_TX_PRI7_DROP_bcnt:0
RX_GOOD_FRAMES:1883
RX_BROADCAD_FRAMES:76
RX_MULTICAST_FRAMES:1800
RX_PAUSE_FRAMES:0
RX_CRC_ERRORS:0
RX_ALIGN_CODE_ERRORS:0
RX_COVERSIATE_FRAMES:0
RX_Jabber_FRAMES:0
RX_UNDERSEED_FRAMES:0
RX_Frages":0
ALE_DROP:1883
ALE_OVERRIDE_DROP:0
RX_八 位位组:407043
TX_GOOD_FRAMES:86705
TX_BROADCAST 帧:50617
TX_MULTICAST_FRAMES:36088
TX_PAUSE_FRAMES:0
TX_DELAVED_FRAMES:0
TX_COILING_FRAMES:0
TX_SINGLE_COLL_FRAMES:0
TX_MULT_COLL_FRAMES:0
TX_EXTRACULT_EXCELESSES:0
TX_LATED_EXCLESSES:0
RX_IPG_ERROR:0
TX_CARRER_SENSE_ERRORS:0
TX_八 位位组:7639076
TX_64B_FRAMES:50683
TX_65_TO_127B_帧:36043
TX_128_TO_255B_帧:1847
TX_256_TO_511B_帧:15
TX_512_TO_1023B_帧:0
TX_1024B_FRAMES:0
网络八位位组:8046119
RX_Bottom_fifo_Drop:0
RX_PORT_MASK_DROP:1883
RX_TOP_Fifo_Drop:0
ALLE_RATE_LIMIT_DROP:0
ale_vid_intenge_drop:1883
ale_da_eq_sa_Drop:0
ALE_BLOCK_DROP:0
ALE_SECURE_DROP:0
ale_auth_Drop:0
ale_unknown_ucast:7
ale_unknown_ucast_Bytes:472
ale_unknown_mcast:1800
ale_unknown_mcast_Bytes:388531
ale_unknown_bcast:76
ale_unknown_bcast_Bytes:18040
ALE_POL_MATCH:0
ALE_POL_MATCH_RED:0
ale_pol_match_yellow:0
ale_mcast_sa_Drop:0
ALE_DUAL_VLAN_DROP:0
ale_len_err_drop:0
ALE_IP_NEXT_HDR_DROP:0
ALE_IPV4_FRAG_DROP:0
iet_rx_assembly_err:0
IET_Rx_ASSEMBLE_OK:0
IET_Rx_SMD_err:0
IET_RX_FRAG:0
IET_TX_HOLD:0
IET_TX_FRAG:0
tx_mem_protect_err:0
TX_PRI0:86705
TX_PRIE1:0
TX_PRI2:0
tx_pri3:0
TX_PRI4:0
TX_PRI5:0
TX_PRI6:0
TX_PRI7:0
tx_pri0_bcnt:7638884
tx_pri1_bcnt:0
tx_pri2_bcnt:0
tx_pri3_bcnt:0
tx_pri4_bcnt:0
tx_pri5_bcnt:0
tx_pri6_bcnt:0
tx_pri7_bcnt:0
TX_PRP0_DROP:0
TX_PRI1_DROP:0
TX_PRI2_DROP:0
TX_PRI3_DROP:0
TX_PRI4_DROP:0
TX_PRI5_DROP:0
TX_PRI6_DROP:0
TX_PRI7_DROP:0
tx_pri0_drop_bcnt:0
TX_PRI1_DROP_bcnt:0
tx_pri2_drop_bcnt:0
tx_pri3_drop_bcnt:0
TX_PRI4_DROP_bcnt:0
tx_pri5_drop_bcnt:0
TX_PRI6_DROP_bcnt:0
TX_PRI7_DROP_bcnt:0
您好!
删除 VLAN 配置后,我们发现问题仍然存在,因此与 VLAN 配置无关。
从故障情况下的日志中可以看出、由于没有可用于该 vid (ale_vid_intenge_drop)的端口、所有接收到的正常数据包(rx_good_FRAMES = 1883)都被 ALE 丢弃。 请 参阅 TRM "12.2.2.4.6.19.1.19 ALE VLAN Ingress Check Drop"中有关此统计数据的解释。 您可以从这里获取 TRM : https://www.ti.com/lit/zip/spruil1
您能否查看成功案例和失败案例中 ALE 表之间是否存在差异。 使用命令"switch-config -i eth0 -d "转储 ALE 表。
此致、
坦迈
您好, Tanmay:
问题仍在重现,请耐心等待。 P1的 Rx 对应于 p0的 TX、对吧?
您好!
P1的 Rx 对应于 p0的 TX、对吗?
正确、因此从外部世界到交换机的任何入口数据包都将采用以下路径:
Rx at P1 --> pass/filter through ale --> > p0处的 Tx 至主机内核
此致、
坦迈
您好, Tanmay:
ALE 表中确实存在差距。 您可以选中"正常"和"失败"。 我对它进行了比较、发现当 ping 成功时、我发现有这个条目。 当 ping 失败时、没有此类条目。
0:类型:vlan、vid = 0、undtag_force = 0x3、reg_mcast = 0x0、unreg_mcast = 0x0、 member_list = 0x3
OK 日志:
e2e.ti.com/.../ale_5F00_ok.txt
失败日志:
您好、Tanmay:
关于 Rx 问题、我调整了添加 ALE 表的时序、并将进行测试。 关于添加 VLAN 配置并在 dmesg 中显示错误消息的问题、请帮助我看一下。
am65-cpsw-nuss 46000000.Ethernet:将 VLAN 100添加到 VLAN 过滤器
[5.121994] am65-cpsw-nuss 46000000.Ethernet: get: Wrong ale fld id 2
[5.128743] am65-cpsw-nuss 46000000.Ethernet:获得:错误的 ale fld id 1
您好!
很抱歉耽误你的时间、
0:类型:vlan、vid = 0、undag_force = 0x3、reg_mcast = 0x0、unreg_mcast = 0x0、 member_list = 0x3
因此、在问题情况下会错过此条目。 这是驱动程序添加的默认条目。 缺少这一点很奇怪。
它由函数"cpsw_ale_add_vlan ()"(在 drivers/net/Ethernet/ti/cpsw_ale.c 中定义)添加。 您是否可以在此函数中添加打印内容、并查看何时调用 vid 0。 调用调用时、请使用"warn_on(1)"打印调用栈。
此致、
坦迈
您好:
测试后、发现问题发生时执行了 cpsw_ale_add_vlan、并且参数正常。 关于无法添加 ALE 表的问题、我调整了 ALE 表的时序、结果得到了改善。 关于 am65-cpsw-nuss 46000000.ethernet: get : error ale fld id 2. 这种错误可以通过粗略的注释解决、因为它不会影响函数的使用?
您好!
此类错误是否可以用粗注来解决,因为它不会影响函数的使用?
我将深入了解这一点。
关于添加 ALE 表失败,我调整了 ALE 表的时间,并改进了 ALE 表。
您进行了哪些更改? 问题是否未被发现或不再需要处理?
此致、
坦迈
您好:
您进行了哪些更改? 问题是否未被发现或不再需要处理?
测试后、将添加 ALE 表稍微放在后面会更稳定。 除此之外、还添加了一个锁。 测试后、未出现问题。
您好,T ü,TanMay
[5.121994] am65-cpsw-nuss 46000000.Ethernet: get: Wrong ale fld id 2
[5.128743] am65-cpsw-nuss 46000000.Ethernet:获得:错误的 ale fld id 1
如果当前应用程序不受影响,这种日志是否会导致任何潜在的错误?
此致
泽昆
尊敬的 Zekun:
很抱歉响应延迟。
这是由于未填充时初始调用 ALE 导致的。 因此它不会导致任何错误。
此致、
坦迈
谢谢、TanMay、结束本次课程。
此致
泽昆