STRUCT INTEL_VSEC_PLATFORM_INFO(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… NAME πŸ’…

struct intel_vsec_platform_info β€” the platform-specific data vibe check, aka all the extra little deets your platform wants to hand over 🫢

Bestie, this is a page from the Kernel API Manual, and it's genuinely iconic. Let's get into it ✨


πŸŽ€ SYNOPSIS πŸŽ€

struct intel_vsec_platform_info {
    struct device *parent;
    struct intel_vsec_header **headers;
    const struct vsec_feature_dependency *deps;
    u32 (*acpi_disc)[PMT_DISC_DWORDS];
    enum intel_vsec_disc_source src;
    void *priv_data;
    unsigned long caps;
    unsigned long quirks;
    u64 base_addr;
    int num_deps;
 };

It's giving "one struct, ten members, zero chill" β€” every field is laid out below πŸ’–


🌸 Members 🌸

  • parent β€” the parent device in the auxbus chain. Like, the main character's parent, literally the whole family tree 🌈
  • headers β€” the list of headers that define which PMT client devices get created. Think of it as the guest list for the PMT party πŸŽ€
  • deps β€” an array of feature dependencies. Every feature has its lil prerequisites, no cap 😭
  • acpi_disc β€” the ACPI discovery tables, and listen β€” each entry is two QWORDs in little-endian format as defined by the PMT ACPI spec. Valid only when provider == INTEL_VSEC_DISC_ACPI. Not me warning you about that condition, but also, I'm warning you about that condition πŸ™ˆ
  • src β€” the source of the discovery table data. Where the data came from, iykyk πŸ’…
  • priv_data β€” private data, usable by parent devices, currently a callback. Private means private, bestie πŸ’œ
  • caps β€” a bitmask of the PMT capabilities for the given headers. Capability check: passed πŸ‘‘
  • quirks β€” a bitmask of VSEC device quirks. Your fave device might be a little quirky and that's fine πŸ¦‹
  • base_addr β€” lets you specify a base address rather than having it derived. You're allowed to just... say it. Main character energy ⭐
  • num_deps β€” the count of feature dependencies. Somebody has to keep track of the number πŸ”₯

🧚 SEE ALSO 🧚

  • Kernel file ./include/linux/intel_vsec.h πŸ’–
  • struct intel_vsec_header(9)
  • struct pmt_callbacks(9)
  • struct intel_vsec_device(9)
  • struct oobmsm_plat_info(9)

Go read them, they're all connected, it's a whole extended universe 🌸


🫢 cute lil sign-off: this one lives over at ./include/linux, dated October 2026, and yes β€” it's struct intel_vsec_platform_info(9) if you're looking it up by name. Slay, mwah πŸ’‹
πŸ“¦ where this page comes from