STRUCT TPMI_INFO_HEADER(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ NAME ✨

okay so this is struct tpmi_info_header β€” it's literally the CPU package ID to PCI device mapping information, and it lives in the Kernel API Manual (which is, like, the manual name bestie, in case you were wondering 🫢).


πŸŽ€ SYNOPSIS πŸŽ€

struct tpmi_info_header {
    u64 fn:3;
    u64 dev:5;
    u64 bus:8;
    u64 pkg:8;
    u64 segment:8;
    u64 partition:2;
    u64 cdie_mask:16;
    u64 reserved:13;
    u64 lock:1;
 };

🫢 Members 🫢

  • fn β€” the PCI function number. that's it, that's the whole vibe ✨
  • dev β€” the PCI device number πŸ”₯
  • bus β€” the PCI bus number 🚌
  • pkg β€” the CPU Package id. like the package's whole identity, main character energy πŸ‘‘
  • segment β€” the PCI segment id 🌸
  • partition β€” the Package Partition id πŸŽ€
  • cdie_mask β€” a bitmap of the compute dies in the current partition 🧚 (yes babe, a bitmap, it's giving binary art)
  • reserved β€” reserved for future use πŸ™ˆ aka not yours to touch, it's saving that seat
  • lock β€” when set to 1 the register is locked and becomes read-only until next reset. Not for use by the OS driver. πŸ’€ so bestie, do not go there.
fr fr, that lock field is a hard no for the OS driver. "not for use by the OS driver" is not a suggestion, it's a boundary πŸ’…

πŸ’… Description πŸ’…

so this struct is the structure to read hardware provided mapping information. that's the whole point of it, the way that it just exists to read the mapping info the hardware hands you. iconic, honestly πŸ¦‹


🌈 SEE ALSO 🌈

  • Kernel file ./drivers/platform/x86/intel/vsec_tpmi.c β€” go read the source, iykyk πŸ“–
  • struct intel_tpmi_pfs_entry(9)
  • struct intel_tpmi_pm_feature(9)
  • struct intel_tpmi_info(9)
  • struct tpmi_feature_state(9)

all of these are the little friend group this struct runs with, no cap 🫢


okay so that's the whole page! mwah πŸ’– this came from the Kernel API Manual, source path ./drivers/platform/x86/intel, dated October 2026, and it's struct tpmi_info_header(9) β€” slay, go read the docs bestie πŸ’…βœ¨πŸŽ€

πŸ“¦ where this page comes from