mdio_read(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

🌸 mdio_read(9) β€” the Kernel API Manual, bestie edition ✨

Okay so real talk, this is a page from the Kernel API Manual, and today's main character is mdio_read β€” your girl reads MII PHY registers and she does it flawlessly. πŸ’…


✨ NAME ✨

mdio_read β€” read MII PHY register πŸŽ€


πŸ¦‹ SYNOPSIS πŸ¦‹

int mdio_read (struct net_device *net_dev , int phy_id , int location );

That's the whole vibe. Three args, one int coming back at you. Slay. ⭐


πŸ’– ARGUMENTS πŸ’–

  • net_dev β€” the net device you wanna read from, like, the actual thing πŸ’»
  • phy_id β€” the phy address you're reading, iykyk 🧚
  • location β€” the phy register id you're reading, the specific lil spot πŸ‘‘

🌈 DESCRIPTION 🌈

So the way this works: it reads MII registers through MDIO and MDC, using the MDIO management frame structure and protocol β€” which, no cap, is defined by ISO/IEC. πŸ“œβœ¨

For the full lore, go check the SiS7014 or ICS spec, bestie. That's where the details live. 🫢


πŸ’œ SEE ALSO πŸ’œ

The kernel file ./drivers/net/ethernet/sis/sis900.c is the friend group, and honestly the whole squad showed up:

That's the whole group chat, no one left on read. πŸ˜­πŸ’€


Fr fr though β€” everything above is literally just this one page's world. Don't go reading registers off-spec and then act surprised, okay? πŸ™ˆ

And that's a wrap, bestie! πŸŽ€ This iconic lil page comes to you from ./drivers/net/ethernet/sis, dated October 2026. Stan mdio_read. Periodt. πŸ‘‘πŸ’–

πŸ“¦ where this page comes from