LS1088ARDB - Ethernet Physical Phy Not working

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

LS1088ARDB - Ethernet Physical Phy Not working

64 Views
mloder
Contributor I

I can't get networking to work when the LS1088ARDB is configured to use the onboard physical phys.  I have switched to using the physical phys to work with a PoE driver which attaches to the phys in the device tree. To enable the physical phys I have done this by updating the DPC file to include.

	board_info {
		ports {
			mac@7 {
				link_type = "MAC_LINK_TYPE_PHY";
			};
			mac@8 {
				link_type = "MAC_LINK_TYPE_PHY";
			};
			mac@9 {
				link_type = "MAC_LINK_TYPE_PHY";
			};
			mac@10 {
				link_type = "MAC_LINK_TYPE_PHY";
			};
		};

 When I run ethtool dpmac7 the links report as 

Link detected: no

When I run mii-tool mii-tool dpmac7 -v it reports the link as up and appears to be communicating with the phy.

dpmac7: negotiated 1000baseT-FD, link ok
  product info: vendor 00:01:c1, model 39 rev 0
  basic mode:   autonegotiation enabled
  basic status: autonegotiation complete, link ok
  capabilities: 1000baseT-FD 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD
  advertising:  1000baseT-FD 100baseTx-FD 10baseT-FD flow-control
  link partner: 1000baseT-FD 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD flow-control

When I configure an IP for the port I can't get communications to flow either. I am not sure where to look next.

Any help would be appreciated

Thanks

Mike Loder

0 Kudos
3 Replies

21 Views
yipingwang
NXP TechSupport
NXP TechSupport

Please note, dpmac.7 is QSGMII5.

I used the default dpc and dpl configuration provided in LSDK.

root@TinyLinux:~# ls-listni
dprc.1/dpni.0 (interface: eth0, end point: dpmac.5)
root@TinyLinux:~# ls-listmac
dprc.1/dpmac.10
dprc.1/dpmac.9
dprc.1/dpmac.8
dprc.1/dpmac.7
dprc.1/dpmac.6
dprc.1/dpmac.5 (end point: dpni.0)
dprc.1/dpmac.4
dprc.1/dpmac.3
dprc.1/dpmac.2
dprc.1/dpmac.1
root@TinyLinux:~# ls-addni dpmac.7
[ 68.125523] iommu: Adding device dpbp.0 to group 7
[ 68.131472] iommu: Adding device dpmcp.26 to group 7
[ 68.136596] iommu: Adding device dpcon.8 to group 7
[ 68.141614] iommu: Adding device dpcon.7 to group 7
[ 68.146588] iommu: Adding device dpcon.6 to group 7
[ 68.151559] iommu: Adding device dpcon.5 to group 7
[ 68.156528] iommu: Adding device dpcon.4 to group 7
[ 68.161497] iommu: Adding device dpcon.3 to group 7
[ 68.166464] iommu: Adding device dpcon.2 to group 7
[ 68.171433] iommu: Adding device dpcon.0 to group 7
[ 68.176409] iommu: Adding device dpni.1 to group 7
[ 68.181853] fsl_dpaa2_eth dpni.1: Linked as a consumer to dpmcp.2
[ 68.216790] fsl_dpaa2_eth dpni.1: Linked as a consumer to dpcon.8
[ 68.224950] fsl_dpaa2_eth dpni.1: Linked as a consumer to dpio.8
[ 68.231494] fsl_dpaa2_eth dpni.1: Linked as a consumer to dpcon.7
[ 68.239602] fsl_dpaa2_eth dpni.1: Linked as a consumer to dpio.7
[ 68.246112] fsl_dpaa2_eth dpni.1: Linked as a consumer to dpcon.6
[ 68.254276] fsl_dpaa2_eth dpni.1: Linked as a consumer to dpio.6
[ 68.260819] fsl_dpaa2_eth dpni.1: Linked as a consumer to dpcon.5
[ 68.268921] fsl_dpaa2_eth dpni.1: Linked as a consumer to dpio.5
[ 68.275432] fsl_dpaa2_eth dpni.1: Linked as a consumer to dpcon.4
[ 68.283593] fsl_dpaa2_eth dpni.1: Linked as a consumer to dpio.4
[ 68.290148] fsl_dpaa2_eth dpni.1: Linked as a consumer to dpcon.3
[ 68.298248] fsl_dpaa2_eth dpni.1: Linked as a consumer to dpio.3
[ 68.304759] fsl_dpaa2_eth dpni.1: Linked as a consumer to dpcon.2
[ 68.312922] fsl_dpaa2_eth dpni.1: Linked as a consumer to dpio.2
[ 68.319474] fsl_dpaa2_eth dpni.1: Linked as a consumer to dpcon.0
[ 68.327580] fsl_dpaa2_eth dpni.1: Linked as a consumer to dpio.1
[ 68.334108] fsl_dpaa2_eth dpni.1: Linked as a consumer to dpbp.0
[ 68.381894] fsl_dpaa2_eth dpni.1: Probed interface eth1
Created interface: eth1 (object:dpni.1, endpoint: dpmac.7)
root@TinyLinux:~# ls-listni
dprc.1/dpni.1 (interface: eth1, end point: dpmac.7)
dprc.1/dpni.0 (interface: eth0, end point: dpmac.5)
root@TinyLinux:~# ifconfig eth1 100.1.1.100
[ 86.662760] fsl_dpaa2_eth dpni.1 eth1: Link Event: state up
root@TinyLinux:~# ping 100.1.1.1
PING 100.1.1.1 (100.1.1.1): 56 data bytes
64 bytes from 100.1.1.1: seq=0 ttl=64 time=0.465 ms
64 bytes from 100.1.1.1: seq=1 ttl=64 time=0.201 ms
64 bytes from 100.1.1.1: seq=2 ttl=64 time=0.211 ms
64 bytes from 100.1.1.1: seq=3 ttl=64 time=0.192 ms
^C
--- 100.1.1.1 ping statistics ---
4 packets transmitted, 4 packets received, 0% packet loss
round-trip min/avg/max = 0.192/0.267/0.465 ms
root@TinyLinux:~#

0 Kudos

12 Views
mloder
Contributor I

Hi yippingwang,

Thanks for the response and for giving details. You indicated that you used the default DPC file though. The DPC file needs to be modified like below to enable Phy Mode, not Fixed mode which the default is. I need to do this to allow linux to register and install the phys so I can work directly with the phys. The problem is when I do this I can't get ethernet traffic to flow. Are there other settings I need to make in the DPC file to make this work? Also is there somewhere the DPC config is documented? i can't find many details on it.

	board_info {
		ports {
			mac@7 {
				link_type = "MAC_LINK_TYPE_PHY";
			};
			mac@8 {
				link_type = "MAC_LINK_TYPE_PHY";
			};
			mac@9 {
				link_type = "MAC_LINK_TYPE_PHY";
			};
			mac@10 {
				link_type = "MAC_LINK_TYPE_PHY";
			};
		};

 

Thanks

Mike

0 Kudos

5 Views
yipingwang
NXP TechSupport
NXP TechSupport

Please refer to the following mdio information, the default configuration is connecting to Vitesse VSC8514 PHY.

No need to modify DPC file, Linux Kernel will use Ethernet information provided in dts file arch/arm64/boot/dts/freescale/fsl-ls1088a-rdb.dts

=> mdio list
mdio@8B97000:
0 - Generic PHY <--> DPMAC2@xgmii
mdio@8B96000:
c - Vitesse VSC8514 <--> DPMAC3@qsgmii
d - Vitesse VSC8514 <--> DPMAC4@qsgmii
e - Vitesse VSC8514 <--> DPMAC5@qsgmii
f - Vitesse VSC8514 <--> DPMAC6@qsgmii
1c - Vitesse VSC8514 <--> DPMAC7@qsgmii
1d - Vitesse VSC8514 <--> DPMAC8@qsgmii
1e - Vitesse VSC8514 <--> DPMAC9@qsgmii
1f - Vitesse VSC8514 <--> DPMAC10@qsgmii
=>

0 Kudos