STRUCT SST_HEADER(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– struct sst_header(9) πŸ’–

okay so first things first, bestie β€” this page lives in the Kernel API Manual, and today's main character is struct sst_header, aka the SST main header. yes bestie, the main header. the headliner. the it-girl of headers πŸ’…


✨ SYNOPSIS ✨

here's the whole vibe, laid out and everything:

struct sst_header {
    u8 interface_version;
    u8 cap_mask;
    u8 cp_offset;
    u8 pp_offset;
    u32 reserved;
 };

that's it, that's the struct. no cap, it's giving "small but powerful" πŸ¦‹


πŸŽ€ Members πŸŽ€

okay let's go through every single one of them, no skipping, we're doing this properly:

  • interface_version β€” the version number for this interface. literally just "which version are we on" energy ✨
  • cap_mask β€” the bitmask of the supported sub features. here's the rule, and it's a strict one: 1=the sub feature is enabled, 0=disabled. and for the specific bits? Bit[8]= SST_CP enable (1), disable (0), and bit[9]= SST_PP enable (1), disable (0). other bits are reserved for future use, so don't go touching them, bestie πŸ™ˆ
  • cp_offset β€” the Qword (8 bytes) offset to the SST_CP register bank. yes, Qword, 8 bytes, write it down 🫢
  • pp_offset β€” the Qword (8 bytes) offset to the SST_PP register bank. same deal, same size, iconic symmetry πŸŽ€
  • reserved β€” reserved for future use. it's literally just sitting there being mysterious πŸ’€

🌸 Description 🌸

so what does this register do? it lets SW (software) discover the SST capability, plus the offsets to the SST-CP and SST-PP register banks. that's the whole job. it's the little header that hands you the map πŸ—ΊοΈβœ¨


πŸ”₯ SEE ALSO πŸ”₯

go look at these next, bestie, they're all connected:

  • Kernel file ./drivers/platform/x86/intel/speed_select_if/isst_tpmi_core.c
  • struct cp_header(9)
  • struct pp_header(9)
  • struct feature_offset(9)
  • struct levels_offset(9)
  • struct pp_control_offset(9)
  • struct pp_status_offset(9)
  • struct perf_level(9)
  • struct tpmi_per_power_domain_info(9)
  • struct tpmi_sst_struct(9)
  • struct tpmi_sst_common_struct(9)
  • map_cdies(9)
  • map_partition_power_domain_id(9)

like, the whole friend group, fr fr πŸ‘‘


heads up bestie: cap_mask bit positions matter exactly β€” misreading them is a bad time. respect the bitmask πŸ’€

and that's a wrap on this page! 🌈 it came from ./drivers/platform/x86/intel/s... and it's dated October 2026, so go forth and discover some SST capability, you absolute icon πŸ’–πŸ¦‹β­

πŸ“¦ where this page comes from