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. 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 >