Other Parts Discussed in Thread: DP83867IS, , DP83867ERGZ-S-EVM
Dear support team,
On our board we have connected Ethernet PHY DP83867 configured for SGMII mode. We observed a link instabiltiy depending on link partner.
First case:
ping is working for 1000 Mbps and 100 Mbps, but not for 10 Mbps
Second case:
ping is working for 10 Mbps, but not for 1000 Mbps and 100 Mbps
The mdio interface is working fine and can be used the check the PHY register.
First of all the good case, where ping is possible with 1000 Mbps.
Link Partner:
ethtool enp4s0
Settings for enp4s0:
Supported ports: [ TP ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Half 1000baseT/Full
Supported pause frame use: No
Supports auto-negotiation: Yes
Supported FEC modes: Not reported
Advertised link modes: 1000baseT/Full
Advertised pause frame use: No
Advertised auto-negotiation: Yes
Advertised FEC modes: Not reported
Link partner advertised link modes: 10baseT/Full
100baseT/Full
1000baseT/Full
Link partner advertised pause frame use: Symmetric Receive-only
Link partner advertised auto-negotiation: Yes
Link partner advertised FEC modes: Not reported
Speed: 1000Mb/s
Duplex: Full
Auto-negotiation: on
Port: Twisted Pair
PHYAD: 1
Transceiver: internal
MDI-X: on
Supports Wake-on: g
Wake-on: g
Current message level: 0x000000ff (255)
drv probe link timer ifdown ifup rx_err tx_err
Link detected: yes
PHY Register output:
0x0 0x1140
0x1 0x796d
0x2 0x2000
0x3 0xa231
0x4 0xd41
0x5 0xc001
0x6 0x6d
0x7 0x2001
0x8 0x6801
0x9 0x200
0xa 0x3800
0xb 0x0
0xc 0x0
0xd 0x4007
0xe 0x0
0xf 0x3000
0x10 0x5848
0x11 0xac02
0x12 0xec10
0x13 0x0
0x14 0x2bc7
0x15 0x0
0x16 0x0
0x17 0x40
0x18 0x6150
0x19 0x4444
0x1a 0x2
0x1b 0x0
0x1c 0x0
0x1d 0x0
0x1e 0x282
0x1f 0x0
Now, I change the speed of the link partner:
ethtool -s enp4s0 speed 10 duplex full
ethtool enp4s0
Settings for enp4s0:
Supported ports: [ TP ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Half 1000baseT/Full
Supported pause frame use: No
Supports auto-negotiation: Yes
Supported FEC modes: Not reported
Advertised link modes: 10baseT/Full
Advertised pause frame use: No
Advertised auto-negotiation: Yes
Advertised FEC modes: Not reported
Link partner advertised link modes: 10baseT/Full
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: 10Mb/s
Duplex: Full
Auto-negotiation: on
Port: Twisted Pair
PHYAD: 1
Transceiver: internal
MDI-X: on
Supports Wake-on: g
Wake-on: g
Current message level: 0x000000ff (255)
drv probe link timer ifdown ifup rx_err tx_err
Link detected: yes
Ping is not possible!
Register output:
0x0 0x1140
0x1 0x796d
0x2 0x2000
0x3 0xa231
0x4 0xd41
0x5 0x4041
0x6 0x65
0x7 0x2001
0x8 0x0
0x9 0x200
0xa 0x0
0xb 0x0
0xc 0x0
0xd 0x4007
0xe 0x0
0xf 0x3000
0x10 0x5848
0x11 0x2c02
0x12 0xec10
0x13 0x0
0x14 0x2bc7
0x15 0x0
0x16 0x0
0x17 0x40
0x18 0x6150
0x19 0x4444
0x1a 0x2
0x1b 0x0
0x1c 0x0
0x1d 0x0
0x1e 0x282
0x1f 0x0
=> Local Receiver not ok
=> Remote Receiver not ok
I hope you can advice how to analyse further.
Br,
Jens