Thread (42 messages) flat view 42 messages, 6 authors, 2018-02-07

Re: DPAA Ethernet traffice troubles with Linux kernel

From: mad skateman <hidden>
Date: 2018-01-15 20:21:14
Also in: netdev

Hi All,

I have been testing with the rc8 kernel as Christian sugested.

At this moment still the same issues..

Here some of my finding...

A dump of dmesg regarding the FSL_DPAA:

[    4.597949] libphy: Fixed MDIO Bus: probed
[    4.599095] libphy: Freescale PowerQUICC MII Bus: probed
[    4.609108] libphy: Freescale PowerQUICC MII Bus: probed
[    4.609995] libphy: Freescale PowerQUICC MII Bus: probed
[    4.610689] libphy: Freescale PowerQUICC MII Bus: probed
[    4.611623] libphy: Freescale PowerQUICC MII Bus: probed
[    4.612470] libphy: Freescale XGMAC MDIO Bus: probed
[    4.617710] fsl_dpaa_mac ffe4e6000.ethernet: FMan dTSEC version: 0x08240=
101
[    4.618335] fsl_dpaa_mac ffe4e6000.ethernet: FMan MAC address:
00:04:9f:01:02:03
[    4.618653] fsl_dpaa_mac ffe4e8000.ethernet: FMan dTSEC version: 0x08240=
101
[    4.619042] fsl_dpaa_mac ffe4e8000.ethernet: FMan MAC address:
00:04:9f:01:02:04
[    4.619294] fsl_dpaa_mac ffe4e0000.ethernet:
of_get_mac_address(/soc@ffe000000/fman@400000/ethernet@e0000) failed
[    4.619505] fsl_dpaa_mac: probe of ffe4e0000.ethernet failed with error =
-22
[    4.619673] fsl_dpaa_mac ffe4e2000.ethernet:
of_get_mac_address(/soc@ffe000000/fman@400000/ethernet@e2000) failed
[    4.619878] fsl_dpaa_mac: probe of ffe4e2000.ethernet failed with error =
-22
[    4.620048] fsl_dpaa_mac ffe4e4000.ethernet:
of_get_mac_address(/soc@ffe000000/fman@400000/ethernet@e4000) failed
[    4.620258] fsl_dpaa_mac: probe of ffe4e4000.ethernet failed with error =
-22
[    4.625078] fsl_dpaa_mac ffe4f0000.ethernet:
of_get_mac_address(/soc@ffe000000/fman@400000/ethernet@f0000) failed
[    4.630001] fsl_dpaa_mac: probe of ffe4f0000.ethernet failed with error =
-22
[    4.637015] fsl_dpaa_mac ffe4e6000.ethernet eth0: Probed interface eth0
[    4.643933] fsl_dpaa_mac ffe4e8000.ethernet eth1: Probed interface eth1

This all seems correct! The probed mac`s are the one`s as put in Uboot:
Ethaddr and Eth1addr

The Eth0 and Eth1 are also probed.

When eth0 is brought up... it is unable to get an ip adress from the
dhcp server.

eth0      Link encap:Ethernet  HWaddr 00:04:9f:01:02:03
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:510 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:102556 (102.5 KB)
          Memory:fe4e6000-fe4e6fff

When using mii-tool for a double check:

mii-tool -l eth0
eth0: negotiated 1000baseT-FD flow-control, link ok

and when using ethtool

ethtool eth0
Settings for eth0:
	Supported ports: [ MII ]
	Supported link modes:   10baseT/Half 10baseT/Full
	                        100baseT/Half 100baseT/Full
	                        1000baseT/Full
	Supported pause frame use: Symmetric Receive-only
	Supports auto-negotiation: Yes
	Advertised link modes:  10baseT/Half 10baseT/Full
	                        100baseT/Half 100baseT/Full
	                        1000baseT/Full
	Advertised pause frame use: Symmetric Receive-only
	Advertised auto-negotiation: Yes
	Link partner advertised link modes:  10baseT/Half 10baseT/Full
	                                     100baseT/Half 100baseT/Full
	                                     1000baseT/Half 1000baseT/Full
	Link partner advertised pause frame use: Symmetric Receive-only
	Link partner advertised auto-negotiation: Yes
	Speed: 1000Mb/s
	Duplex: Full
	Port: MII
	PHYAD: 3
	Transceiver: external
	Auto-negotiation: on
	Current message level: 0x00000037 (55)
			       drv probe link ifdown ifup
	Link detected: yes

RX packets always stay 0 ?

Will continiue to get more info...







On 1/15/18, Christian Zigotzky [off-list ref] wrote:
Sorry, I have forgotten the download link. Please test it with the DPAA
Ethernet.
quoted
Hi All,

I compiled the RC8 of kernel 4.15 with Joakim's patch for the AmigaOne
X5000 today. Many thanks to Joakim for the mdio patch.

Download: http://www.xenosoft.de/uImage-4.15-rc8_with_mdio_patch.tar.gz

Please test it on your X5000.

Thanks,
Christian


On 15 January 2018 at 5:59PM, Joakim Tjernlund wrote:
quoted
quoted
Hi,

Please use text logs instead of pictures next time, it's easier to
read.
The errors you see are related to missing MAC addresses for the unused
interfaces, you can ignore these are they are not relevant for the
issue
you encounter. Normally the unused interfaces should have status
disabled
in the device tree but there is not a big deal if they fail like that.
As I've advised Jamie on the other thread, please try to connect the
device
back 2 back to a known good machine and determine what is broken -
Rx/Tx?
Is there another software version that does work on these machines?
Hi, just saw this and thought of a small patch I just wrote for mdio
bus, o idea
if it is relevant but here goes:

=C2=A0From fe0b98d54a79779482700676331b4d10a0f3cada Mon Sep 17 00:00:00=
 2001
quoted
quoted
From: Joakim Tjernlund <redacted>
Date: Sun, 14 Jan 2018 21:27:20 +0100
Subject: [PATCH] of_mdiobus_register: Continue after error

of_mdiobus_register unregister itself if one phy fails to register
which is bad for system having all its PHYs on the same MDIO bus.
Just log the error and continue with the remaining PHYs instead.

Signed-off-by: Joakim Tjernlund <redacted>
---
=C2=A0 drivers/of/of_mdio.c | 6 ++++--
=C2=A0 1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/drivers/of/of_mdio.c b/drivers/of/of_mdio.c
index 98258583abb0..76ff28a41dad 100644
--- a/drivers/of/of_mdio.c
+++ b/drivers/of/of_mdio.c
@@ -229,7 +229,8 @@ int of_mdiobus_register(struct mii_bus *mdio,
struct device_node *np)
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 else
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0 rc =3D of_mdiobus_register_device(mdio, child, addr);
quoted
quoted
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 if (rc)
-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 got=
o unregister;
quoted
quoted
+=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 pr_=
warn(FW_WARN
quoted
quoted
+=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0 "%pOF: Failed to register MDIO device.\n", child);
quoted
quoted
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 }
=C2=A0 =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 if (!scanphys)
@@ -253,7 +254,8 @@ int of_mdiobus_register(struct mii_bus *mdio,
struct device_node *np)
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0 if (of_mdiobus_child_is_phy(child)) {
quoted
quoted
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 rc =3D of_mdiobus_register_phy(mdio, chil=
d, addr);
quoted
quoted
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 if (rc)
quoted
quoted
-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 goto unregister;
quoted
quoted
+=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 pr_warn(FW_WARN
quoted
quoted
+=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "%pOF=
: Failed to register MDIO PHY.\n", child);
quoted
quoted
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0 }
quoted
quoted
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 }
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 }
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help