Hi all, This patch series adds MAC-side SGMII support to stmmac driver and it is changed as follow:-
1/6: Refactor the current C73 implementation in pcs-xpcs to prepare for adding C37 AN later. 2/6: Add MAC-side SGMII C37 AN support to pcs-xpcs 3,4/6: make phylink_parse_mode() to work for non-DT platform so that we can use stmmac platform_data to set it. 5/6: Make stmmac_open() to only skip PHY init if C73 is used, otherwise C37 AN will need phydev to be connected to phylink. 6/6: Finally, add pcs-xpcs SGMII interface support to Intel mGbE controller. The patch series have been tested on EHL CRB PCH TSN (eth2) controller that has Marvell 88E1512 PHY attached over SGMII interface and the iterative tests of speed change (AN) + ping test have been successful. [63446.009295] intel-eth-pci 0000:00:1e.4 eth2: Link is Down [63449.986365] intel-eth-pci 0000:00:1e.4 eth2: Link is Up - 1Gbps/Full - flow control off [63449.987625] IPv6: ADDRCONF(NETDEV_CHANGE): eth2: link becomes ready [63451.248064] intel-eth-pci 0000:00:1e.4 eth2: Link is Down [63454.082366] intel-eth-pci 0000:00:1e.4 eth2: Link is Up - 100Mbps/Full - flow control off [63454.083650] IPv6: ADDRCONF(NETDEV_CHANGE): eth2: link becomes ready [63456.465179] intel-eth-pci 0000:00:1e.4 eth2: Link is Down [63459.202367] intel-eth-pci 0000:00:1e.4 eth2: Link is Up - 10Mbps/Full - flow control off [63459.203639] IPv6: ADDRCONF(NETDEV_CHANGE): eth2: link becomes ready [63460.882832] intel-eth-pci 0000:00:1e.4 eth2: Link is Down [63464.322366] intel-eth-pci 0000:00:1e.4 eth2: Link is Up - 1Gbps/Full - flow control off Thanks Boon Leong Ong Boon Leong (6): net: pcs: rearrange C73 functions to prepare for C37 support later net: pcs: add C37 SGMII AN support for intel mGbE controller net: phylink: make phylink_parse_mode() support non-DT platform net: stmmac: make in-band AN mode parsing is supported for non-DT net: stmmac: ensure phydev is attached to phylink for C37 AN stmmac: intel: add pcs-xpcs for Intel mGbE controller .../net/ethernet/stmicro/stmmac/dwmac-intel.c | 15 +- .../net/ethernet/stmicro/stmmac/stmmac_main.c | 4 +- drivers/net/pcs/pcs-xpcs.c | 257 ++++++++++++++++-- drivers/net/phy/phylink.c | 5 +- include/linux/pcs/pcs-xpcs.h | 5 + include/linux/phylink.h | 2 + include/linux/stmmac.h | 1 + 7 files changed, 258 insertions(+), 31 deletions(-) -- 2.25.1