libnvme(9)
π libnvme(9) β struct nvme_mi_port_smb
okay so bestie, welcome to the API Manual page for libnvme, and today's main character is struct nvme_mi_port_smb β literally the SMBus Port Specific Data glow-up you didn't know you needed β¨
π NAME π
struct nvme_mi_port_smb β SMBus Port Specific Data. that's it, that's the vibe π¦
πΈ SYNOPSIS πΈ
here's the whole struct, copied exactly, no cap:
struct nvme_mi_port_smb {
__u8 vpd_addr;
__u8 mvpd_freq;
__u8 mme_addr;
__u8 mme_freq;
__u8 nvmebm;
__le32 pdas ;
__u8 sdformat;
__u8 rsvd18[14];
};
look at her. iconic. π
β¨ Members β¨
vpd_addrβ Current VPD SMBus/I2C Address π«Ά this is where the VPD is living rnmvpd_freqβ Maximum VPD Access SMBus/I2C Frequency. the maximum, bestie β don't go over it πmme_addrβ Current Management Endpoint SMBus/I2C Address π the management endpoint's current addymme_freqβ Maximum Management Endpoint SMBus/I2C Frequency. again, maximum. respect the limit πnvmebmβ NVMe Basic Management πpdasβ PDA Size, the size of the NVMe-MI Persistent Data Area (PDA) is 2^pdas bytes;0hindicates there is no NVMe-MI PDA π§ so like, it's an exponent situation β2^pdasbytes β and0hmeans nope, no NVMe-MI PDA here, not todaysdformatβ Supported Data Format for the NVMe-MI PDA, seeenum nvme_mi_port_sdformatπ go peek at the enum, iykykrsvd18β Reserved π nothing to see here, move along, it's reserved
real talk: rsvd18 is reserved, so don't be out here writing your own lore into it, okay? π«Ά
π sign-off π
that's the whole page, bestie β struct nvme_mi_port_smb, documented and slaying as ever. this absolute king is from the libnvme API Manual, dated October 2026, and it ate. periodt. βππ₯
π¦ where this page comes from
- arch rolling: nvme-cli 3.2-1 Β· GPL-2.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms