ls1021a custom board: issue with "Link Up" for the board with two ethernet ports

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

ls1021a custom board: issue with "Link Up" for the board with two ethernet ports

813 Views
evgeniyMatskevich
Contributor I

Hi,
We have a custom board with ls1021a processor. And we see strange behaviour with ethernet interfaces in u-boot.

We have two ethernet ports on our board: eth0 and eth1.

We can see manageable Ethernet PHYs:
=> mdio list
mdio@2d24000:
0 - RealTek RTL8211F <--> ethernet@2d50000
2 - RealTek RTL8211F <--> ethernet@2d10000
mdio@2d64000:

ethernet@2d10000 corresponds to "eth0" port and ethernet@2d50000 corresponds to "eth1" port.

_______________________________________________________________________________

When we insert cable only in the "eth1" port we can check link status for external PHY:
eth1
=> mdio read ethernet@2d50000 1
Reading from bus mdio@2d24000
PHY at address 0:
1 - 0x79ad

According to this documentation https://docs.nxp.com/bundle/GUID-1B480175-7E30-4237-A58E-3F0AD1C61250/page/GUID-EE98B00F-B379-4FE3-9... the 'Link Status' bit is bit #2 (from the left) of the last nibble. The nibble of interest is "d" (d = b'1101').
And therefore the 'Link Status' = 1, which means 'link up'.


eth0
=> mdio read ethernet@2d10000 1
Reading from bus mdio@2d24000
PHY at address 2:
1 - 0x7989

The nibble of interest is "9" (d = b'1001').
And therefore the 'Link Status' = 0, which means 'link down'.


_______________________________________________________________________________

But when we insert cable only in the "eth0":

eth1
=> mdio read ethernet@2d50000 1
Reading from bus mdio@2d24000
PHY at address 0:
1 - 0x79ad

'Link Status' = 1, which means 'link up'.

eth0
=> mdio read ethernet@2d10000 1
Reading from bus mdio@2d24000
PHY at address 2:
1 - 0x79ad

Link Status' = 1, which means 'link up'.

We  see 'Link Status' = 1 for "eth1" and "eth0", but only "eth0" connected with cable.

In this case when we connect the second cable to the "eth1" port it is not available for using.

_______________________________________________________________________


Therefore we can't normally work with "eth1" port when "eth0" is used too. 

Here is the RCW that we use:

00000000: 0608000c 00000000 00000000 00000000
00000010: 20000000 08447900 e0105a00 21046000
00000020: 00000000 00000000 00000000 0003f300
00000030: 20000000 2484b340 00000000 00000000

Could you advice a solution to resolve the issue?

0 Kudos
Reply
4 Replies

794 Views
JosephAtNXP
NXP TechSupport
NXP TechSupport

Hi,

Thank you for your interest in NXP Semiconductor products,

Could you share your device tree to check on it? Thank you in advance.

Regards

0 Kudos
Reply

789 Views
evgeniyMatskevich
Contributor I

Thanks for the answer.
Here is the dts file.

0 Kudos
Reply

756 Views
JosephAtNXP
NXP TechSupport
NXP TechSupport

Hi,

At first approach I saw that you were using the same PHY as the document, which differs from LS1021A TWR design.

But with the device tree I see that you are declaring an SGMII connection which isn't the RTL8211 IF, where is the error here?

What PHY are you using?

What IF are you using? I am in the meantime looking at RCW.

Thank you

0 Kudos
Reply

752 Views
evgeniyMatskevich
Contributor I

Hi, we use RTL8211FS PHY. It supports SGMII - https://www.realtek.com/en/products/connected-media-ics/item/rtl8211fs-i-vs-cg RTL8211FS.png

0 Kudos
Reply