STRUCT USB4_PORT(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ NAME ✨

okay so bestie, gather round β€” this is the manual page for struct usb4_port, which is literally the USB4 port device representation. no cap, it's giving main character energy in the thunderbolt subsystem. πŸ’…


🌈 SYNOPSIS 🌈

here's the exact struct definition, copied character for character because we do not mess with facts:

struct usb4_port {
    struct device dev;
    struct tb_port *port;
    bool can_offline;
    bool offline;
  #ifdef CONFIG_USB4_DEBUGFS_MARGINING;
    struct tb_margining *margining;
  #endif;
};

πŸ’… Members πŸ’…

okay so here's the tea on each member, bestie β€” don't skip any:

  • dev β€” the device for the port. it's the whole reason this struct exists, honestly. 🫢
  • port β€” pointer to the lane 0 adapter. lowkey important. πŸ¦‹
  • can_offline β€” does the port have the necessary platform support to move it into offline mode and back? it's a yes/no vibe check. ⭐
  • offline β€” the port is currently in offline mode. periodt. πŸ’€
  • margining β€” pointer to the margining structure if enabled.
note: this field only exists if CONFIG_USB4_DEBUGFS_MARGINING is defined, so it's conditional, bestie. don't come for me if it's not there. πŸ™ˆ

πŸ¦‹ SEE ALSO πŸ¦‹

so many references, omg. they're all in the kernel file ./drivers/thunderbolt/tb.h, and here's the full list β€” iykyk:


this whole thing lives in ./drivers/thunderbolt, version October 2026, and the manual page is literally called struct usb4_port(9). go off, bestie. πŸ’…βœ¨πŸŽ€

πŸ“¦ where this page comes from