STRUCT PP_HEADER(9)
π struct pp_header(9) β the SST-PP header, explained π
okay so bestie, welcome to the Kernel API Manual entry for struct pp_header(9). this is genuinely the cutest little bitfield blob and i'm obsessed π
It's the SST-PP (Perf profile) header β like, the little label on the front of the box that tells you what's inside. no cap β¨
π SYNOPSIS π
here's the whole vibe, verbatim, do NOT touch:
struct pp_header {
u64 feature_id :4;
u64 feature_rev :8;
u64 level_en_mask :8;
u64 allowed_level_mask :8;
u64 reserved0 :4;
u64 ratio_unit :2;
u64 block_size :8;
u64 dynamic_switch :1;
u64 memory_ratio_unit :2;
u64 reserved1 :19;
};
look at her. every field is a u64 with a lil colon number. she's packed, she's precise, she's main character energy π
β¨ Members β¨
feature_idβ 0=SST-CP, 1=SST-PP, 2=SST-BF, 3=SST-TF. it's giving "which feature am i" energy π¦feature_revβ the Interface Version number for this SST feature. version check, periodt πΈlevel_en_maskβ the SST-PP level enable/disable fuse mask π₯allowed_level_maskβ the Allowed level mask used for dynamic config level switching πreserved0β Reserved for future use. she's just holding space πratio_unitβ Frequency ratio unit.00: 100MHz. All others are reserved. ngl this is the important one π«Άblock_sizeβ Size of PP block in Qword unit (8 bytes). lowkey a chunky girlie πdynamic_switchβ If set (1), dynamic switching of SST PP is supported βmemory_ratio_unitβ Memory Controller frequency ratio unit.00: 100MHz, others reserved πreserved1β Reserved for future use. another reserved icon, we stan π
π¦ Description π¦
This structure is used store SST-PP header β and this is big β it's packed to the same format as defined in the specifications. so like, do not go rearranging her fields, bestie, the spec said what it said π
π SEE ALSO π
- Kernel file
./drivers/platform/x86/intel/speed_select_if/isst_tpmi_core.cstruct sst_header(9),struct cp_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)
go read the whole squad, they're all in the same friend group fr fr π§
okay that's the page!! this tea was served fresh from ./drivers/platform/x86/intel/s... π and it's dated October 2026 β yes, from the future, don't ask π slay, go read your bitfields, ily, bye!! πβ¨π
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms