PF2GUC_UPDATE_VGT_POLICY(9)
π PF2GUC_UPDATE_VGT_POLICY β¨
okay so bestie, welcome to the Kernel API Manual entry for PF2GUC_UPDATE_VGT_POLICY β this is the PF-side glow-up message, and it's literally the way the PF sets the GuC VGT Policy KLVs_ π
no cap, the one thing you cannot forget: this message must be sent as a CTB HXG Message. that's not optional, that's the whole vibe check π«Ά
πΈ the request message (what you send)
here's the dword-0 layout, bestie β read those bit ranges carefully π
- Bits 31 β
ORIGIN=GUC_HXG_ORIGIN_HOST_ - Bits 30:28 β
TYPE=GUC_HXG_TYPE_REQUEST_ - Bits 27:16 β
MBZ(must be zero, so likeβ¦ don't touch it π) - Bits 15:0 β
ACTION=GUC_ACTION_PF2GUC_UPDATE_VGT_POLICY=0x5502
π¦ the payload dwords (the main character energy)
1 31:0 **CFG_ADDR_LO** - dword aligned GGTT offset that
represents the start of `GuC VGT Policy KLVs`_ list.
2 31:0 **CFG_ADDR_HI** - upper 32 bits of above offset.
3 31:0 **CFG_SIZE** - size (in dwords) of the config buffer
let me say it plainer for you π
- Dword
1, bits 31:0 βCFG_ADDR_LO: the dword aligned GGTT offset that represents the start of theGuC VGT Policy KLVs_ list - Dword
2, bits 31:0 βCFG_ADDR_HI: the upper 32 bits of that same offset above β - Dword
3, bits 31:0 βCFG_SIZE: the size, in dwords, of the config buffer π
it's giving "low dword, high dword, how big" and honestly? iconic. periodt.
π the response message (what comes back at you)
- Bits 31 β
ORIGIN=GUC_HXG_ORIGIN_GUC_ - Bits 30:28 β
TYPE=GUC_HXG_TYPE_RESPONSE_SUCCESS_ - Bits 27:0 β
COUNTβ the number of KLVs successfully applied π₯
so yeah, COUNT is your little receipt β that's how many KLVs actually made it through π
β¨ SEE ALSO β¨
the kernel file lives right here, bestie: ./drivers/gpu/drm/xe/abi/guc_actions_sriov_abi.h π
and the whole friend group, no one left out π:
GUC2PF_RELAY_FROM_VF(9)PF2GUC_RELAY_TO_VF(9)GUC2VF_RELAY_FROM_PF(9)VF2GUC_RELAY_TO_PF(9)GUC2PF_ADVERSE_EVENT(9)GUC2PF_VF_STATE_NOTIFY(9)VF2GUC_MATCH_VERSION(9)PF2GUC_UPDATE_VF_CFG(9)PF2GUC_VF_CONTROL(9)VF2GUC_VF_RESET(9)VF2GUC_RESFIX_DONE(9)VF2GUC_QUERY_SINGLE_KLV(9)PF2GUC_SAVE_RESTORE_VF(9)VF2GUC_RESFIX_START(9)
ngl bestie, MBZ means must be zero. it's not a suggestion, it's the law. set it and the firmware will be like "girl what" π
π that's the whole page! this one ships from ./drivers/gpu/drm/xe/abi, dated October 2026, and it's filed under PF2GUC_UPDATE_VGT_POLICY(9) β go forth and set those VGT policy KLVs, you absolute icon ππβ¨
π¦ 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