From: Jakub Kicinski Date: Sat, 6 Sep 2025 02:03:41 +0000 (-0700) Subject: Merge branch '10g-qxgmii-for-aqr412c-felix-dsa-and-lynx-pcs-driver' X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=c6142e1913de563ab772f7b0e4ae78d6de9cc5b1;p=users%2Fhch%2Fmisc.git Merge branch '10g-qxgmii-for-aqr412c-felix-dsa-and-lynx-pcs-driver' Vladimir Oltean says: ==================== 10G-QXGMII for AQR412C, Felix DSA and Lynx PCS driver Introduce the first user of the "10g-qxgmii" phy-mode, since its introduction from commit 5dfabcdd76b1 ("dt-bindings: net: ethernet-controller: add 10g-qxgmii mode"). The arch/arm64/boot/dts/freescale/fsl-ls1028a-qds-13bb.dtso already exists upstream, but has phy-mode = "usxgmii", which comes from the fact that the AQR412(C) PHY does not distinguish between the two modes. Yet, the distinction is crucial for the upcoming SerDes driver for the LS1028A platform. The series is comprised of: - preliminary patches to the Lynx PCS and Felix DSA driver which accept the phy-mode and treat it like "usxgmii" - an ad-hoc whitelisting mechanism in the Aquantia PHY driver based on firmware version, which was agreed upon with Marvell, and which serves as "detection" - in-band auto-negotiation capability reporting and configuration. This makes sure this feature is enabled in the PHY, because the Lynx PCS only works with USXGMII/10G-QXGMII in-band autoneg enabled. Notably, it lacks a device tree update, which will come later, but should not be strictly necessary. The expectation is for the Aquantia PHY driver to pick up "10g-qxgmii" with existing device trees as well, which it does, except for the slightly confusing "configuring for inband/usxgmii link mode" initial message. This changes to "configuring for inband/10g-qxgmii link mode" once phylink gets a chance to pick up the phydev->interface in its pl->link_config.interface. $ ip link set swp3 up mscc_felix 0000:00:00.5 swp3: configuring for inband/usxgmii link mode mscc_felix 0000:00:00.5 swp3: phylink_mac_config: mode=inband/usxgmii/none adv=0000000,00000000,00008000,0002606c pause=04 mscc_felix 0000:00:00.5 swp3: phylink_phy_change: phy interface 10g-qxgmii link 0 mscc_felix 0000:00:00.5 swp3: phylink_phy_change: phy interface 10g-qxgmii link 1 mscc_felix 0000:00:00.5 swp3: phylink_mac_config: mode=inband/10g-qxgmii/none adv=0000000,00000000,00008000,0002606c pause=00 mscc_felix 0000:00:00.5 swp3: Link is Up - 2.5Gbps/Full - flow control off $ ip link set swp3 down mscc_felix 0000:00:00.5 swp3: phylink_phy_change: phy interface 10g-qxgmii link 0 mscc_felix 0000:00:00.5 swp3: Link is Down $ ip link set swp3 up mscc_felix 0000:00:00.5 swp3: configuring for inband/10g-qxgmii link mode mscc_felix 0000:00:00.5 swp3: phylink_mac_config: mode=inband/10g-qxgmii/none adv=0000000,00000000,00008000,0002606c pause=04 mscc_felix 0000:00:00.5 swp3: phylink_phy_change: phy interface 10g-qxgmii link 0 mscc_felix 0000:00:00.5 swp3: phylink_phy_change: phy interface 10g-qxgmii link 1 mscc_felix 0000:00:00.5 swp3: Link is Up - 2.5Gbps/Full - flow control off ==================== Link: https://patch.msgid.link/20250903130730.2836022-1-vladimir.oltean@nxp.com Signed-off-by: Jakub Kicinski --- c6142e1913de563ab772f7b0e4ae78d6de9cc5b1