]> git.ipfire.org Git - thirdparty/openwrt.git/commit
qualcommax: enable in-band signalling on the USXGMII ports 24420/head
authorJulius Bairaktaris <julius@bairaktaris.de>
Sun, 26 Jul 2026 09:45:30 +0000 (11:45 +0200)
committerRobert Marko <robimarko@gmail.com>
Thu, 6 Aug 2026 10:45:27 +0000 (12:45 +0200)
commitf4a7ae107e6ad41c37d0bfa152a35a6b2da79037
tree7eb9b78e79e155d7acbeb8cd423b7c3508a024dc
parentdd78f34eba83ef0795a69856894fa10eb8dee97e
qualcommax: enable in-band signalling on the USXGMII ports

USXGMII carries the line rate to the MAC in a Clause 37 code word, so the
link needs in-band signalling. Without "managed" the port is PHY managed,
phylink disables in-band on the PHY, and with the PCS now honouring
neg_mode neither end runs autonegotiation, so nothing crosses the system
interface.

Every USXGMII port in this target was missing the property: ten ports
across eight boards, all of them an Aquantia PHY on copper, none of them
an SFP cage. ipq8074-rt-ax89x already carried "in-band-status" on its
SGMII lan8, which is why a file-level search made it look covered.

Only the two ports on ipq8072-301w have been tested on hardware. The
remaining eight are the same PHY family behind the same PCS, are broken
today for the same reason, and cannot regress from a state where they
pass no traffic, but they have not been confirmed on a board.

That test ran on the 6.18 testing kernel, where phylink switches the PHY
side on through phy_config_inband(). On 6.12 the PHY has no such op and
0760-net-phy-aquantia-enable-USXGMII-MAC-autoneg.patch forces the same
bit unconditionally, so the end state matches, but no board has confirmed
it there.

Tested-by: Rudy Andram <rmandrad@gmail.com>
Assisted-by: Claude:claude-opus-5
Signed-off-by: Julius Bairaktaris <julius@bairaktaris.de>
Link: https://github.com/openwrt/openwrt/pull/24420
Signed-off-by: Robert Marko <robimarko@gmail.com>
target/linux/qualcommax/dts/ipq6018-mr7500.dts
target/linux/qualcommax/dts/ipq8072-301w.dts
target/linux/qualcommax/dts/ipq8072-haze.dts
target/linux/qualcommax/dts/ipq8072-mx8500.dts
target/linux/qualcommax/dts/ipq8074-nbg7815.dts
target/linux/qualcommax/dts/ipq8074-rax120v2.dts
target/linux/qualcommax/dts/ipq8074-rt-ax89x.dts
target/linux/qualcommax/dts/ipq8074-wxr-5950ax12.dts