xe_pcode_request(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ NAME ✨

okay so this is the Kernel API Manual entry for xe_pcode_request(9) β€” it's literally the β€œsend PCODE request until acknowledgment” bestie πŸ’…

✨ SYNOPSIS ✨

int xe_pcode_request (struct xe_tile *tile , u32 mbox , u32 request ,
       u32 reply_mask , u32 reply , int timeout_base_ms );

✨ ARGUMENTS ✨

  • tile β€” tile 🧚
  • mbox β€” the PCODE mailbox ID that the request is targeted for πŸ“¬
  • request β€” request ID πŸŽ€
  • reply_mask β€” mask used to check for request acknowledgment πŸ•΅οΈβ€β™€οΈ
  • reply β€” value used to check for request acknowledgment βœ…
  • timeout_base_ms β€” timeout for polling with preemption enabled ⏳

✨ DESCRIPTION ✨

bestie, the vibe is simple: keep resending the request to mbox until PCODE acknowledges it, PCODE reports an error, or an overall timeout of timeout_base_ms+50 ms expires. no cap, that's the whole loop πŸ’€

The request is acknowledged once the PCODE reply dword equals reply after applying reply_mask. Polling is first attempted with preemption enabled for timeout_base_ms, and if this times out, it goes for another 50 ms with preemption disabled. the way that switch-up is so real πŸ™ˆ

Returns 0 on success, -ETIMEDOUT in case of a timeout, and <0 in case of some other error as reported by PCODE. periodt πŸ’–

✨ SEE ALSO ✨


🫢 cute little sign-off: this icon was serving ./drivers/gpu/drm/xe energy in the October 2026 edition. slay, and happy polling βœ¨πŸ‘‘

πŸ“¦ where this page comes from