A network experiment was conducted using AM5718IDK.
At that time, a lot of UDP packet loss is detected.
As for the system configuration, three AM5718IDKs are connected in a daisy chain as shown in the figure.
I am using eth0 (GMAC) and eth2 (PRU0) and my application is sending each received packet to the opposite port.
At this time, Unicast (UDP) detects packet loss about once a minute.
The packet sends about 1000 bytes of data from both sides and each IDK at 5ms intervals.
In IDK, the output of ethtool with eth2 (PRU) is as follows. (ethtool -S eth2)
The value of macRxError matches the number of packet losses detected by the application.
Also, if you switch eth2 (PRU) to eth1 (GMAC, fixed at 100Mbps) and run the same application,
packet loss does not occur, so it is thought that PRU is the cause.
root@am57xx-evm:~# ethtool -S eth2
NIC statistics:
txBcast: 4
txMcast: 1395059
txUcast: 50
txOctets: 1152289782
rxBcast: 3
rxMcast: 32
rxUcast: 647611
rxOctets: 586697941
tx64byte: 53
tx65_127byte: 25
tx128_255byte: 14
tx256_511byte: 279013
tx512_1023byte: 1116008
tx1024byte: 0
rx64byte: 2
rx65_127byte: 66
rx128_255byte: 13
rx256_511byte: 5
rx512_1023byte: 647560
rx1024byte: 0
lateColl: 0
singleColl: 0
multiColl: 0
excessColl: 0
rxMisAlignmentFrames: 0
stormPrevCounterBC: 0
stormPrevCounterMC: 0
stormPrevCounterUC: 0
macRxError: 19
SFDError: 0
defTx: 0
macTxError: 0
rxOverSizedFrames: 0
rxUnderSizedFrames: 0
rxCRCFrames: 0
droppedPackets: 0
txHWQOverFlow: 0
txHWQUnderFlow: 0
emacMulticastDropped: 22
emacVlanDropped: 0
What does maxRxError in eth2 (PRU) represent?
Could you please tell me the cause and countermeasures?
The software uses ti-processor-sdk-linux-am57xx-evm-06.03.00.106.
Thank you.