Skip to content

Commit a157ea5

Browse files
Ansuelfrank-w
authored andcommitted
net: phy: as21xxx: force C45 OPs for AUTONEG
With further testing with 2.5G NIC, it was discovered that the PHY require the C45 OPs to configure and restart ANEG or speed higher than 1G doesn't function correctly. To force C45 OPs with generic PHY function, clear the C22 bit from devices_in_package bitmask. Fixes: 830877d ("net: phy: Add support for Aeonsemi AS21xxx PHYs") Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
1 parent 05d539c commit a157ea5

1 file changed

Lines changed: 7 additions & 0 deletions

File tree

drivers/net/phy/as21xxx.c

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -616,6 +616,13 @@ static int as21xxx_probe(struct phy_device *phydev)
616616
if (ret)
617617
return ret;
618618

619+
/* Even if PHY declare support for Clause 22 register,
620+
* Clause 45 register should be used for ANEG configuration
621+
* and restart. Clear the C22 bit for devices_in_package to
622+
* force C45 generic OPs in generic PHY ANGE OPs.
623+
*/
624+
phydev->c45_ids.devices_in_package &= ~BIT(0);
625+
619626
ret = aeon_ipc_sync_parity(phydev, priv);
620627
if (ret)
621628
return ret;

0 commit comments

Comments
 (0)