On Mon, Jul 22, 2019 at 01:28:51PM +0000, Jose Abreu wrote: > From: Ondřej Jirman > Date: Jul/22/2019, 13:42:40 (UTC+00:00) > > > Hello Jose, > > > > On Tue, Jun 11, 2019 at 05:18:44PM +0200, Jose Abreu wrote: > > > [ Hope this diff looks better (generated with --minimal) ] > > > > > > This converts stmmac to use phylink. Besides the code redution this will > > > allow to gain more flexibility. > > > > I'm testing 5.3-rc1 and on Orange Pi 3 (uses stmmac-sun8i.c glue) compared to > > 5.2 it fails to detect 1000Mbps link and the driver negotiates just a 10Mbps speed. > > > > After going through stmmac patches since 5.2, I think it may be realted to this > > series, but I'm not completely sure. You'll probably have a better understanding > > of the changes. Do you have an idea what might be wrong? Please, see some logs > > below. > > Probably due to: > 5b0d7d7da64b ("net: stmmac: Add the missing speeds that XGMAC supports") > > Can you try attached patch ? Tried, and it works! dwmac-sun8i 5020000.ethernet eth0: PHY [stmmac-0:01] driver [RTL8211E Gigabit Ethernet] dwmac-sun8i 5020000.ethernet eth0: phy: setting supported 00,00000000,000062ff advertising 00,00000000,000062ff dwmac-sun8i 5020000.ethernet eth0: No Safety Features support found dwmac-sun8i 5020000.ethernet eth0: No MAC Management Counters available dwmac-sun8i 5020000.ethernet eth0: PTP not supported by HW dwmac-sun8i 5020000.ethernet eth0: configuring for phy/rgmii link mode dwmac-sun8i 5020000.ethernet eth0: phylink_mac_config: mode=phy/rgmii/Unknown/Unknown adv=00,00000000,000062ff pause=10 link=0 an=1 dwmac-sun8i 5020000.ethernet eth0: phy link down rgmii/Unknown/Unknown dwmac-sun8i 5020000.ethernet eth0: phy link up rgmii/1Gbps/Full dwmac-sun8i 5020000.ethernet eth0: phylink_mac_config: mode=phy/rgmii/1Gbps/Full adv=00,00000000,00000000 pause=0f link=1 an=0 dwmac-sun8i 5020000.ethernet eth0: Link is Up - 1Gbps/Full - flow control rx/tx IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready Tested-by: Ondrej Jirman thank you, Ondrej > > > > > thank you and regards, > > Ondrej > > > > On 5.3-rc1 I see: > > > > [ 6.116512] dwmac-sun8i 5020000.ethernet eth0: PHY [stmmac-0:01] driver [RTL8211E Gigabit Ethernet] > > [ 6.116522] dwmac-sun8i 5020000.ethernet eth0: phy: setting supported 00,00000000,000062cf advertising 00,00000000,000062cf > > [ 6.118714] dwmac-sun8i 5020000.ethernet eth0: No Safety Features support found > > [ 6.118725] dwmac-sun8i 5020000.ethernet eth0: No MAC Management Counters available > > [ 6.118730] dwmac-sun8i 5020000.ethernet eth0: PTP not supported by HW > > [ 6.118738] dwmac-sun8i 5020000.ethernet eth0: configuring for phy/rgmii link mode > > [ 6.118747] dwmac-sun8i 5020000.ethernet eth0: phylink_mac_config: mode=phy/rgmii/Unknown/Unknown adv=00,00000000,000062cf pause=10 link=0 an=1 > > [ 6.126099] dwmac-sun8i 5020000.ethernet eth0: phy link down rgmii/Unknown/Unknown > > [ 6.276325] random: crng init done > > [ 6.276338] random: 7 urandom warning(s) missed due to ratelimiting > > [ 7.543987] zram0: detected capacity change from 0 to 402653184 > > [ 7.667702] Adding 393212k swap on /dev/zram0. Priority:10 extents:1 across:393212k SS > > > > ... delay due to other causes ... > > > > [ 28.640234] dwmac-sun8i 5020000.ethernet eth0: phy link up rgmii/10Mbps/Full > > [ 28.640295] dwmac-sun8i 5020000.ethernet eth0: phylink_mac_config: mode=phy/rgmii/10Mbps/Full adv=00,00000000,00000000 pause=0f link=1 an=0 > > [ 28.640324] dwmac-sun8i 5020000.ethernet eth0: Link is Up - 10Mbps/Full - flow control rx/tx > > > > Settings for eth0: > > Supported ports: [ TP MII ] > > Supported link modes: 10baseT/Half 10baseT/Full > > 100baseT/Half 100baseT/Full > > Supported pause frame use: Symmetric Receive-only > > Supports auto-negotiation: Yes > > Supported FEC modes: Not reported > > Advertised link modes: 10baseT/Half 10baseT/Full > > 100baseT/Half 100baseT/Full > > Advertised pause frame use: Symmetric Receive-only > > Advertised auto-negotiation: Yes > > Advertised FEC modes: Not reported > > Link partner advertised link modes: 10baseT/Half 10baseT/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 > > Port: MII > > PHYAD: 1 > > Transceiver: internal > > Auto-negotiation: on > > Supports Wake-on: d > > Wake-on: d > > Current message level: 0x0000003f (63) > > drv probe link timer ifdown ifup > > Link detected: yes > > > > On 5.2 it looks like this: > > > > [ 1.153596] dwmac-sun8i 5020000.ethernet: PTP uses main clock > > [ 1.416221] dwmac-sun8i 5020000.ethernet: PTP uses main clock > > [ 1.522735] dwmac-sun8i 5020000.ethernet: Current syscon value is not the default 58000 (expect 50000) > > [ 1.522750] dwmac-sun8i 5020000.ethernet: No HW DMA feature register supported > > [ 1.522753] dwmac-sun8i 5020000.ethernet: RX Checksum Offload Engine supported > > [ 1.522755] dwmac-sun8i 5020000.ethernet: COE Type 2 > > [ 1.522758] dwmac-sun8i 5020000.ethernet: TX Checksum insertion supported > > [ 1.522761] dwmac-sun8i 5020000.ethernet: Normal descriptors > > [ 1.522763] dwmac-sun8i 5020000.ethernet: Chain mode enabled > > [ 5.352833] dwmac-sun8i 5020000.ethernet eth0: No Safety Features support found > > [ 5.352842] dwmac-sun8i 5020000.ethernet eth0: No MAC Management Counters available > > [ 5.352846] dwmac-sun8i 5020000.ethernet eth0: PTP not supported by HW > > [ 10.463072] dwmac-sun8i 5020000.ethernet eth0: Link is Up - 1Gbps/Full - flow control off > > > > Settings for eth0: > > Supported ports: [ TP MII ] > > Supported link modes: 10baseT/Half 10baseT/Full > > 100baseT/Half 100baseT/Full > > 1000baseT/Half 1000baseT/Full > > Supported pause frame use: Symmetric Receive-only > > Supports auto-negotiation: Yes > > Supported FEC modes: Not reported > > Advertised link modes: 10baseT/Half 10baseT/Full > > 100baseT/Half 100baseT/Full > > 1000baseT/Half 1000baseT/Full > > Advertised pause frame use: No > > Advertised auto-negotiation: Yes > > Advertised FEC modes: Not reported > > Link partner advertised link modes: 10baseT/Half 10baseT/Full > > 100baseT/Half 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 > > Port: MII > > PHYAD: 1 > > Transceiver: internal > > Auto-negotiation: on > > Supports Wake-on: d > > Wake-on: d > > Current message level: 0x0000003f (63) > > drv probe link timer ifdown ifup > > Link detected: yes > > > > > > > Cc: Joao Pinto > > > Cc: David S. Miller > > > Cc: Giuseppe Cavallaro > > > Cc: Alexandre Torgue > > > Cc: Russell King > > > Cc: Andrew Lunn > > > Cc: Florian Fainelli > > > Cc: Heiner Kallweit > > > > > > Jose Abreu (3): > > > net: stmmac: Prepare to convert to phylink > > > net: stmmac: Start adding phylink support > > > net: stmmac: Convert to phylink and remove phylib logic > > > > > > drivers/net/ethernet/stmicro/stmmac/Kconfig | 3 +- > > > drivers/net/ethernet/stmicro/stmmac/stmmac.h | 7 +- > > > .../ethernet/stmicro/stmmac/stmmac_ethtool.c | 81 +--- > > > .../net/ethernet/stmicro/stmmac/stmmac_main.c | 391 ++++++++---------- > > > .../ethernet/stmicro/stmmac/stmmac_platform.c | 21 +- > > > 5 files changed, 190 insertions(+), 313 deletions(-) > > > > > > -- > > > 2.21.0 > > > > > > --- > Thanks, > Jose Miguel Abreu