STRUCT XPSGTR_PHY(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… struct xpsgtr_phy(9) β€” like, the whole kernel API manual moment

okay so bestie, welcome to struct xpsgtr_phy(9) ✨ this is the man page for the lane struct, straight out of the Kernel API Manual, and honestly? it ate. let's get into it 🫢


✨ NAME ✨

struct xpsgtr_phy β€” representation of a lane πŸ’«

that's it. that's the whole vibe. one struct, one lane, main character energy πŸ‘‘


🌸 SYNOPSIS 🌸

struct xpsgtr_phy {
    struct phy *phy;
    u8 instance;
    u8 lane;
    u8 protocol;
    bool skip_phy_init;
    struct xpsgtr_dev *dev;
    unsigned int refclk;
 };

no cap, that's the entire struct β€” copy it exactly, don't be out here renaming fields, i'm watching πŸ‘€ (affectionately)


πŸŽ€ Members πŸŽ€

time for the member-by-member vibe check, let's go πŸ”₯

  • phy β€” a pointer to the kernel PHY device. literally just a lil pointer bestie, nothing more, nothing less πŸ’–
  • instance β€” the instance of the protocol type. think: the lane within a protocol, or the USB/Ethernet controller. it's giving "which one of you is it" 🌈
  • lane β€” the lane number. yes. that's the whole thing. iconic brevity πŸ’…
  • protocol β€” the protocol that this lane operates in. slay, know your lane's context πŸ¦‹
  • skip_phy_init β€” if this is true, skip phy_init. simple as. πŸ™ˆ
  • dev β€” a pointer to the xpsgtr_dev instance. say hi to the parent 🫢
  • refclk β€” the reference clock index. number go brrr ⏰
okay but fr fr, keep those field names exactly as written β€” they're <pink>literal</pink>, not a suggestion πŸ’€

πŸ‘‘ SEE ALSO πŸ‘‘

the whole friend group 🧚 β€” they all live in the kernel file ./drivers/phy/xilinx/phy-zynqmp.c:

go read them, iykyk πŸ’œ


and that's the page!! mwah πŸ˜­πŸ’– this lil beauty lives in ./drivers/phy/xilinx and it's dated October 2026 β€” so go forth, read your lane struct, and remember: every single member above is doing its job so you don't have to β­πŸ“

πŸ“¦ where this page comes from