STRUCT MV88E6XXX_DEVLINK_STU_ENTRY(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ NAME ✨

struct mv88e6xxx_devlink_stu_entry β€” literally the Devlink STU entry, bestie πŸ’… this is from the Kernel API Manual and it's a whole vibe


πŸŽ€ SYNOPSIS πŸŽ€

struct mv88e6xxx_devlink_stu_entry {
    u16 sid;
    u16 vid;
    u16 data[3];
    u16 resvd;
 };

okay so that's the whole struct, no cap β€” five fields, that's her πŸ‘‘


πŸ’– Members πŸ’–

  • sid β€” Global1/3: the SID, plus the unknown filters and learning. she's the main character of this struct fr fr πŸ”₯
  • vid β€” Global1/6: the Valid bit. one bit, but she's holding the whole thing together 🫢
  • data β€” Global1/7-9: the membership data and priority override. three ([3]!) u16's of pure membership info πŸ’œ
  • resvd β€” Reserved. In case we forgot something πŸ™ˆ honestly relatable, keeping a little cushion just in case

🌸 Description 🌸

okay so the STU entry format is NOT consistent between chipset generations β€” it literally varies, bestie 😭

Peridot and Amethyst pack the STU data into Global1/7-8. Older silicon spreads the information across all three VTU data registers β€” inheriting the layout of even older hardware that had no STU at all. the way that lineage goes back generations... iconic honestly πŸ‘‘

and because this is a low-level debug interface, the move is: copy all data verbatim and defer parsing to the consumer. no cleverness, no parsing here, just straight copying β€” she's a courier not a translator πŸ’…βœ¨


πŸ¦‹ SEE ALSO πŸ¦‹

  • Kernel file ./drivers/net/dsa/mv88e6xxx/devlink.c β€” go read it, iykyk πŸ“–
  • struct mv88e6xxx_devlink_vtu_entry(9) β€” her sibling!! same energy, different registers πŸ’–

okay that's the whole page, you ate that πŸ“ and just so you know where it lives and when it dropped: it's from ./drivers/net/dsa/mv88e6xxx, dated October 2026 β€” periodt πŸ’…πŸŽ€

πŸ“¦ where this page comes from