libnvme(2)

πŸ’– libnvme(2) β€” the API Manual, but make it cute πŸ’–

okay bestie, gather round, we're doing struct nvme_mi_vpd_ppmra today and honestly? it's giving PCIe Port MultiRecord Area realness. no cap. this is a page from libnvme, and it's literally all about one little struct. she's small but she's doing a LOT. ✨


🌸 NAME 🌸

struct nvme_mi_vpd_ppmra β€” the NVMe PCIe Port MultiRecord Area. that's it, that's her. your fave little record. πŸŽ€


πŸ¦‹ SYNOPSIS πŸ¦‹

here's the whole glow-up, verbatim, do not touch:

struct nvme_mi_vpd_ppmra {
    __u8 nppmravn;
    __u8 pn;
    __u8 ppi;
    __u8 ls;
    __u8 mlw;
    __u8 mctp;
    __u8 refccap;
    __u8 pi;
    __u8 rsvd13[3];
 };

look at those fields. all __u8. every single one. consistent queen πŸ‘‘


πŸ‘‘ Members πŸ‘‘

one bullet per field, no skips, we do not skip in this house:

  • nppmravn β€” NVMe PCIe Port MultiRecord Area Version Number. yes the name is a mouthful, yes she earned it, periodt.
  • pn β€” PCIe Port Number. which port, bestie? this one. πŸ’…
  • ppi β€” Port Information. the info about the port. iconic.
  • ls β€” PCIe Link Speed. how fast we're going. zoom zoom. πŸ”₯
  • mlw β€” PCIe Maximum Link Width. the widest the link can be, lowkey important.
  • mctp β€” MCTP Support. does it support MCTP? this byte knows. πŸ™ˆ
  • refccap β€” Ref Clk Capability. that's the reference clock capability, fr fr.
  • pi β€” Port Identifier. the port's ID. main character energy only.
  • rsvd13 β€” Reserved. it's an array, rsvd13[3], so like πŸ‘€ three whole reserved bytes. do not touch, she's resting. πŸ’€

🫢 reminder bestie: this is a struct, so the fields are all laid out exactly as written up in the SYNOPSIS. don't go renaming or reordering anything, the compiler will absolutely clock you. 😭

and that's the whole page, mwah πŸ’œ

this little cutie is struct nvme_mi_vpd_ppmra from the libnvme API Manual, and it was documented way back in July 2026. so old. so vintage. so slay. bye bestie, go build something cute with your VPD records πŸŒˆπŸŒΈπŸ’–

πŸ“¦ where this page comes from