STRUCT XE_RTP_ACTION(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… struct xe_rtp_action(9) πŸ’…

okay bestie, welcome to the Kernel API Manual ✨ grab a boba, we're doing kernel structs today and honestly? this one's kinda iconic.


πŸŽ€ NAME πŸŽ€

struct xe_rtp_action β€” the action to take for any matching rule. that's it, that's the vibe πŸ’–


✨ SYNOPSIS ✨

so here's the whole shape of her, no cap, copy-paste exact:

struct xe_rtp_action {
    struct xe_reg reg;
    u32 clr_bits;
    union {
      u32 set_bits;
      u32 (*set_func)(struct xe_gt *gt, struct xe_hw_engine *hwe);
    };
  #define XE_RTP_NOCHECK          .read_mask = 0;
    u32 read_mask;
  #define XE_RTP_ACTION_FLAG_ENGINE_BASE          BIT(0);
    u8 flags;
    u8 use_func:1;
 };

like look at her. the union. the bitfields. the #defines smuggled right in the middle of the struct definition. main character energy fr fr 🫢


🌸 Members 🌸

  • reg β€” the register. literally just the register she's working with πŸ’…
  • clr_bits β€” the bits to clear when updating the register. important note bestie: this is always a superset of the bits being modified β€” not a subset, a superset β€” so don't get cute with it πŸ™ˆ
  • {unnamed_union} β€” anonymous. she has no name. she simply is. πŸ¦‹
  • set_bits β€” the bits to set when updating the register ✨
  • set_func β€” a function that provides the bits to set when updating the register. for when you're too cool to hardcode them 😌
  • read_mask β€” the mask for bits to consider when reading the value back πŸ”₯
  • flags β€” flags to apply on rule evaluation or action πŸŽ€
  • use_func β€” internal flag indicating that set_func should be called instead of using set_bits. it's an internal flag, so like, iykyk, hands off 🫢

πŸ’œ Description πŸ’œ

so the whole point of this struct, bestie: it records what action should be taken in a register that has a matching rule πŸ‘‘

examples of those actions? setting bits and clearing bits. that's the whole menu. set/clear. slay. periodt πŸ’…


πŸ”₯ SEE ALSO πŸ”₯

  • Kernel file ./drivers/gpu/drm/xe/xe_rtp_types.h β€” go read it, it's giving lore ✨

okay and that's the whole page!! finishing touch: this little beauty lives under ./drivers/gpu/drm/xe and the docs are dated October 2026 β€” so like, future energy πŸ’« go forth and match some rules, bestie, you've got this πŸ§šβ€β™€οΈπŸ’–

πŸ“¦ where this page comes from