]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
net: phy: qcom: at803x: Use the correct bit to disable extended next page
authorMaxime Chevallier <maxime.chevallier@bootlin.com>
Fri, 10 Apr 2026 17:10:20 +0000 (19:10 +0200)
committerJakub Kicinski <kuba@kernel.org>
Mon, 13 Apr 2026 21:36:22 +0000 (14:36 -0700)
commite7a62edd34b1b4bc5f979988efc2f81c075733fd
tree973811f28cb8df2d7ec8e9415c399479e2d082b2
parent2dddb34dd0d07b01fa770eca89480a4da4f13153
net: phy: qcom: at803x: Use the correct bit to disable extended next page

As noted in the blamed commit, the AR8035 and other PHYs from this
family advertise the Extended Next Page support by default, which may be
understood by some partners as this PHY being multi-gig capable.

The fix is to disable XNP advertising, which is done by setting bit 12
of the Auto-Negotiation Advertisement Register (MII_ADVERTISE).

The blamed commit incorrectly uses MDIO_AN_CTRL1_XNP, which is bit 13 as per
802.3 : 45.2.7.1 AN control register (Register 7.0)

BIT 12 in MII_ADVERTISE is wrapped by ADVERTISE_RESV, used by some
drivers such as the aquantia one. 802.3 Clause 28 defines bit 12 as
Extended Next Page ability, at least in recent versions of the standard.

Let's add a define for it and use it in the at803x driver.

Fixes: 3c51fa5d2afe ("net: phy: ar803x: disable extended next page bit")
Signed-off-by: Maxime Chevallier <maxime.chevallier@bootlin.com>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Link: https://patch.msgid.link/20260410171021.1277138-1-maxime.chevallier@bootlin.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/phy/qcom/at803x.c
include/uapi/linux/mii.h