Messages in this thread |  | | From | Maxime Chevallier <> | | Subject | [PATCH net-next v4 00/15] Introduce an ethernet port representation | | Date | Thu, 13 Feb 2025 11:15:48 +0100 |
| |
Hello everyone,
This is V4 of the series introducing the phy_port infrastructure.
Previous version was incorrectly labeled V1, all previous versions can be found here :
V3: https://lore.kernel.org/netdev/20250207223634.600218-1-maxime.chevallier@bootlin.com/ RFC V2: https://lore.kernel.org/netdev/20250122174252.82730-1-maxime.chevallier@bootlin.com/ RFC V1: https://lore.kernel.org/netdev/20241220201506.2791940-1-maxime.chevallier@bootlin.com/
The goal of that work is to lay the ground for multi-port devices, either using multi-port PHY devices, or MII-side multiplexers.
for now, that series only focuses on the PHY device aspect, and includes no uAPI and no muxing support yet.
The key points from that series are :
- The introduction of a dedicated object to represent a port - The introduciton of a new binding to represent these ports in devicetree, to accurately describe multi-port devices - The support of ports for PHY devices, including PHY-drivert SFP busses through a generic phylib set of upstream ops - The MAINTAINERS file was updated to account for the new files - Some documentation :)
Changes in V4 :
- Introduced a kernel doc - Reworked the mediums definitions in patch 2 - QCA807x now uses the generic SFP support - Fixed some implementation bugs to build the support list based on the interfaces supported on a port
Maxime Chevallier (15): net: ethtool: Introduce ETHTOOL_LINK_MEDIUM_* values net: ethtool: Export the link_mode_params definitions net: phy: Introduce PHY ports representation net: phy: dp83822: Add support for phy_port representation net: phy: Create a phy_port for PHY-driven SFPs net: phy: Introduce generic SFP handling for PHY drivers net: phy: marvell-88x2222: Support SFP through phy_port interface net: phy: marvell: Support SFP through phy_port interface net: phy: marvell10g: Support SFP through phy_port net: phy: at803x: Support SFP through phy_port interface net: phy: qca807x: Support SFP through phy_port interface net: phy: Only rely on phy_port for PHY-driven SFP net: phy: dp83822: Add SFP support through the phy_port interface Documentation: networking: Document the phy_port infrastructure dt-bindings: net: Introduce the phy-port description
.../devicetree/bindings/net/ethernet-phy.yaml | 18 + .../bindings/net/ethernet-port.yaml | 47 +++ Documentation/networking/index.rst | 1 + Documentation/networking/phy-port.rst | 111 +++++++ MAINTAINERS | 3 + drivers/net/phy/Makefile | 2 +- drivers/net/phy/dp83822.c | 71 ++-- drivers/net/phy/marvell-88x2222.c | 96 +++--- drivers/net/phy/marvell.c | 100 +++--- drivers/net/phy/marvell10g.c | 37 +-- drivers/net/phy/phy_device.c | 312 +++++++++++++++++- drivers/net/phy/phy_port.c | 176 ++++++++++ drivers/net/phy/phylink.c | 32 ++ drivers/net/phy/qcom/at803x.c | 64 +--- drivers/net/phy/qcom/qca807x.c | 75 ++--- include/linux/ethtool.h | 73 ++++ include/linux/phy.h | 38 ++- include/linux/phy_port.h | 92 ++++++ include/linux/phylink.h | 2 + net/ethtool/common.c | 250 ++++++++------ net/ethtool/common.h | 7 - 21 files changed, 1218 insertions(+), 389 deletions(-) create mode 100644 Documentation/devicetree/bindings/net/ethernet-port.yaml create mode 100644 Documentation/networking/phy-port.rst create mode 100644 drivers/net/phy/phy_port.c create mode 100644 include/linux/phy_port.h
-- 2.48.1
|  |