VF2PF_QUERY_RUNTIME(9)
π VF2PF_QUERY_RUNTIME π
Okay so this is the Kernel API Manual entry for VF2PF_QUERY_RUNTIME(9), and bestie, it's giving relay-message realness. This Relay Message_ is used by the VF to query values of runtime registers. No cap.
On some platforms, VF drivers may not have access to some fuse registers (referred here as 'runtime registers'), so VF drivers need to ask the PF driver to obtain their values. Literally the VF is like βhey bestie, what's the value?β and the PF is the one holding the info.
However, the list of such registers, and their values, is fully owned and maintained by the PF driver. The VF driver may only initiate the query sequence and indicate in the START field the starting index of the next requested register from this predefined list. So VF is not out here picking registers, okay? The PF owns that list, periodt.
In the response, the PF driver will return a tuple of the 32-bit register offset and the 32-bit value of that register (respectively REG_OFFSET and REG_VALUE).
The VF driver can use the LIMIT field to limit the number of returned register tuples. If LIMIT is unset, then PF decides about the number of returned register tuples.
This message definition is supported from ABI version 1.0.
π Request message π
Word 0:
- Bits
31βORIGIN = GUC_HXG_ORIGIN_HOST_ - Bits
30:28βTYPE = GUC_HXG_TYPE_REQUEST_ - Bits
27:16βDATA0 = **LIMIT** - limit number of returned entries (use zero to not enforce any limits on the response) - Bits
15:0βACTION = GUC_RELAY_ACTION_VF2PF_QUERY_RUNTIME = 0x0101
Word 1:
- Bits
31:0βDATA1 = **START** - index of the first requested entry
πΈ Response message πΈ
Word 0:
- Bits
31βORIGIN = GUC_HXG_ORIGIN_HOST_ - Bits
30:28βTYPE = GUC_HXG_TYPE_RESPONSE_SUCCESS_ - Bits
27:0βDATA0 = **COUNT** - number of entries included in response
Response entries:
- Word
1, bits31:0βDATA1 = **REMAINING** - number of remaining entries - Word
2, bits31:0βDATA2 = **REG_OFFSET** - offset of register[START] - Word
3, bits31:0βDATA3 = **REG_VALUE** - value of register[START] - Word
n-1, bits31:0βREG_OFFSET - offset of register[START + x] - Word
n, bits31:0βREG_VALUE - value of register[START + x]
π¦ SEE ALSO π¦
- Kernel file
./drivers/gpu/drm/xe/abi/guc_relay_actions_abi.h GuC Relay VF/PF ABI Version(9)GuC Relay Actions(9)VF2PF_HANDSHAKE(9)GuC Relay Debug Actions(9)VFXPF_TESTLOOP(9)
That's the whole page, bestie π β source ./drivers/gpu/drm/xe/abi, dated October 2026, all for the VF2PF_QUERY_RUNTIME(9) page in the Kernel API Manual. Slay. β¨π
π¦ 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