i.MX8MP ethernet eqos+ksz9131 can link but ping fail at 10M

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

i.MX8MP ethernet eqos+ksz9131 can link but ping fail at 10M

Jump to solution
2,771 Views
changbaoma
Contributor IV

Hello,NXP experts

Hardware: refer to i.MX8MP-EVK except PHYs
Software : imx_5.4.70_2.3.0

In our custom i.MX8MP board, we use two ksz9131 phys to connect to ethernet fec(eth0) and eqos(eth1) respectively in our schematic. MAC and PHY are connected with RGMII (rgmii-id in dts).

Ethernet interface fec(eth0) works well at 10/100/1000M both auto-negotiate mode and force mode.
Ethernet interface eqos(eth1) also works well at 100/1000M both auto-negotiate mode and force mode, but fail to ping at 10M whether it is auto-negotiate mode or force mode, link can indicate normally at 10M.

Here are my tries:

1. Force eqos(eth1) interface to 10M
root@IMX8MP:~# ethtool -s eth1 speed 10 duplex full autoneg on
[ 493.950628] imx-dwmac 30bf0000.ethernet eth1: Link is Down
[ 497.570535] imx-dwmac 30bf0000.ethernet eth1: Link is Up - 10Mbps/Full - flow control rx/tx

2. Ping PC through eqos(eth1) interface 
root@Router:~# ping -I 192.168.0.1 192.168.0.10
PING 192.168.0.10 (192.168.0.10) from 192.168.0.1 : 56(84) bytes of data.
From 192.168.0.1 icmp_seq=1 Destination Host Unreachable
From 192.168.0.1 icmp_seq=2 Destination Host Unreachable
From 192.168.0.1 icmp_seq=3 Destination Host Unreachable
From 192.168.0.1 icmp_seq=4 Destination Host Unreachable
Statistical data before and after this ping by 'ifconfig eth1', TX packets is increasing, RX packets remains unchanged.
And at PC end i can see ARP-Request broadcast from iMX8MP eqos(eth1) and ARP-Reply to i.MX8MP eqos(eth1) in Wireshark during ping.

3. Set eqos(eth1) interface to 10/100/1000M auto-negotiate mode and force PC end to 10M.

iMX8MP eqos(eth1) interface can link at 10M, but ping fail as step 2.

4. Modify operation mode of the PHY interface from rgmii-id to rgmii/rgmii-txid/rgmii-rxid doesn't make things better. Patch applied: https://git.toradex.com/cgit/linux-toradex.git/commit/drivers/net/phy/micrel.c?h=toradex_5.15-2.1.x-...

 

If there is anything else you want to know please let me know.

Any help are appreciated.

 

0 Kudos
Reply
1 Solution
2,737 Views
jimmychan
NXP TechSupport
NXP TechSupport

It is because the KSZ9131 removes all 7 bytes of the preamble. Please contact the PHY chip's company for how to enable 10Base-T preamble on PHY ksz9131. 

View solution in original post

3 Replies
2,738 Views
jimmychan
NXP TechSupport
NXP TechSupport

It is because the KSZ9131 removes all 7 bytes of the preamble. Please contact the PHY chip's company for how to enable 10Base-T preamble on PHY ksz9131. 

2,728 Views
changbaoma
Contributor IV

Thank you for you reply,@jimmychan 

We will check with PHY vendor.

Although eqos(eth1) +ksz9131 can not work at 10M, but ethernet interface fec(eth0) +ksz9131 works well at 10M speed.

Is it possible that the difference between eqos and fec caused this fail?

0 Kudos
Reply
2,725 Views
jimmychan
NXP TechSupport
NXP TechSupport

Yes. For the details, please read the i.MX 8M Plus Mask Set Errata for Mask 1P33A about the ERR050694.