i.MX6SX drops transmitted packets on ENET2 interface

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

i.MX6SX drops transmitted packets on ENET2 interface

Jump to solution
624 Views
tike64
Contributor II

Hi,

We have a tough problem. We are observing packet loss on i.MX6SX ENET2 interface. RX is perfect and ENET1 interface is perfect - no packet lost at all. ENET2 drops transmitted packets depending on individual part and temperature. We have samples marked CTGK1803 where we are NOT observing this issue at all. Samples marked CTPA2026 and CTPA2029 drop packets in varying degree, from 1% to over 50% in room temperature. The issue worsens at higher temperatures. Bad samples may start to work perfectly when cooled.

When a packet is dropped, i.e. ping report failure, TX_EN is silent. There is no errors reported in logs, ip-command or ethtool-command. ip and ethtool show that the packet should have been transmitted. So it seems like the ENET2 module just forgets to transmit the packet.

We have tested with 4.9 and 5.4 series kernels.

We are using KSZ9031 PHYs and 100Mbits/s. The MDIO interfaces of the two PHYs are connected together to ENET1.

Soldering problems are ruled out with röntgen.

We are mystified. Can anyone give any ideas what might be going on and what to try?

--

Timo

Labels (1)
0 Kudos
1 Solution
599 Views
igorpadykov
NXP Employee
NXP Employee

Hi Timo

 

>Bad samples may start to work perfectly when cooled.

 

one can adjust drive strength of ENET2 signals (iomux registers IOMUXC_SW_PAD_CTL_PAD_*)

DSE,SRE,SPEED settings. Also check with oscilloscope RMII timings described in

sect.4.12.6.2 RMII Mode Timing and clock stability 50 MHz ± 50 ppm

i.MX 6SoloX Applications Processors for Consumer Products - Data Sheet

 

Best regards
igor

View solution in original post

0 Kudos
2 Replies
600 Views
igorpadykov
NXP Employee
NXP Employee

Hi Timo

 

>Bad samples may start to work perfectly when cooled.

 

one can adjust drive strength of ENET2 signals (iomux registers IOMUXC_SW_PAD_CTL_PAD_*)

DSE,SRE,SPEED settings. Also check with oscilloscope RMII timings described in

sect.4.12.6.2 RMII Mode Timing and clock stability 50 MHz ± 50 ppm

i.MX 6SoloX Applications Processors for Consumer Products - Data Sheet

 

Best regards
igor

0 Kudos
576 Views
tike64
Contributor II

Hi,

Thanks for replying!

This turned out to be in part our internal communication failure. The assumption that TX_EN was missing when a packet was dropped wasn't true after all. Better investigation revealed simple timing violation as you anticipated.

The root cause was that the programming of the KSZ9031 skew registers was dropped somewhere in the kernel history and we didn't notice that. When we added them into the DTB, everything turned out fine.

--

Timo

0 Kudos