genphy_c45_...ad_abilities(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

🌸 genphy_c45_pma_read_abilities(9) β€” Kernel API Manual 🌸

okay bestie, welcome to the Kernel API Manual πŸ’œ this one's a lil function called genphy_c45_pma_read_abilities(9) and honestly? she's a whole vibe check for your PHY. let's get into it ✨


✨ NAME ✨

genphy_c45_pma_read_abilities β€” read supported link modes from PMA πŸŽ€


πŸ¦‹ SYNOPSIS πŸ¦‹

int genphy_c45_pma_read_abilities (struct phy_device *phydev );

πŸ’… ARGUMENTS πŸ’…

  • phydev β€” your target phy_device struct, the main character of this whole operation πŸ‘‘

πŸ”₯ DESCRIPTION πŸ”₯

so here's the tea β˜• this function reads the supported link modes out of the PMA Status 2 register, aka 1.8 β€” iconic address, iykyk.

if bit 1.8.9 is set, then the list of supported modes gets built using the values sitting in the PMA Extended Abilities register, that's 1.11 β€” which is giving 1000BASET and 10G related modes fr fr.

and if bit 1.11.14 is also set? then the list gets further extended with the modes from the 2.5G/5G PMA Extended register, 1.21 πŸ“ˆ β€” which tells you whether 2.5GBASET and 5GBASET are supported. slay.


🌈 SEE ALSO 🌈

no cap, this function has a massive friend group. the kernel file lives at ./drivers/net/phy/phy-c45.c, and these are all her besties 🫢


and that's the whole page bestie πŸ’œ sign-off time: this lil icon comes to you from ./drivers/net/phy, dated October 2026, and it's literally the genphy_c45_...ad_abilities(9) page itself β€” periodt βœ¨πŸŽ€

πŸ“¦ where this page comes from