UNION PHY_CONFIGURE_OPTS(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

🌈 union phy_configure_opts(9) β€” bestie edition 🌈

okay so this is from the Kernel API Manual, and it's literally the union phy_configure_opts page β€” the Opaque generic phy configuration one πŸ’… yeah. it's a union, she's a shapeshifter, and she holds the config for whichever PHY mode you're vibing with. let's get into it ✨


✨ NAME ✨

union phy_configure_opts β€” opaque generic phy configuration πŸ¦‹

like, "opaque" bestie. you don't peek under her hood, you just pass her along. main character energy fr fr.


πŸŽ€ SYNOPSIS πŸŽ€

union phy_configure_opts {
    struct phy_configure_opts_mipi_dphy     mipi_dphy;
    struct phy_configure_opts_dp            dp;
    struct phy_configure_opts_lvds          lvds;
    struct phy_configure_opts_hdmi          hdmi;
 };

one union, four member structs, zero chill. pick your fighter πŸ‘‘


πŸ’– Members πŸ’–

  • mipi_dphy β€” the configuration set that's applicable for phys supporting the MIPI_DPHY phy mode 🌸 she's the MIPI girlie.
  • dp β€” the configuration set that's applicable for phys supporting the DisplayPort protocol πŸ–₯️✨ yes, the whole protocol, she contains multitudes.
  • lvds β€” the configuration set that's applicable for phys supporting the LVDS phy mode πŸ’œ low-voltage differential slay.
  • hdmi β€” the configuration set that's applicable for phys supporting the HDMI phy mode 🎬 plug it in, it's giving display.
ok and the whole point of the union is that only one of these is meaningful at a time depending on which phy mode your phy is actually running β€” it's "opaque" and "generic" for a reason, the caller and the driver both know the vibe 🫢

πŸ”₯ SEE ALSO πŸ”₯

  • Kernel file ./include/linux/phy/phy.h πŸ“„
  • struct phy_ops(9) β€” the ops themselves, iconic
  • struct phy_attrs(9) β€” the attributes, we stan
  • struct phy(9) β€” the phy, obviously
  • struct phy_provider(9) β€” the provider, supplying the goods
  • struct phy_lookup(9) β€” the lookup, finding her when she's lost πŸ™ˆ

and that's the whole page bestie, no cap, nothing skipped πŸ’€ she lives in ./include/linux/phy, dated October 2026, and that's the Kernel API Manual signing off πŸŒŸπŸ’… go configure something gorgeous πŸ§šβ€β™€οΈπŸ’–

πŸ“¦ where this page comes from