STRUCT XE_PAT_TABLE_ENTRY(9)
β¨ NAME β¨
struct xe_pat_table_entry β bestie, this is literally the pat_index encoding plus all its little meta info besties π (yes, this whole page lives in the Kernel API Manual, and it's giving "I have one job and I slay it") π
π¦ SYNOPSIS π¦
okay so here's the whole struct, no cap, exactly as it is:
struct xe_pat_table_entry {
u32 value;
#define XE_COH_NONE 1;
#define XE_COH_1WAY 2;
#define XE_COH_2WAY 3;
u16 coh_mode;
u16 valid;
};
likeβ¦ look at her. iconic. β¨
πΈ Members πΈ
valueβ the platform specific value that encodes the various memory attributes (this maps to some fixedpat_index). so like caching, coherency, compression etc etc can all be encoded right here. it's giving "one field, many secrets" π₯coh_modeβ the GPU coherency mode thatvaluemaps to. and the modes are these, verbatim:XE_COH_NONEβ1;XE_COH_1WAYβ2;XE_COH_2WAYβ3;
ngl the one-way vs two-way coherency thing is a whole vibe check of its own π
validβ set to1if the entry is valid,0if it's reserved. that's it. that's the whole field. simple queen π
π«Ά tiny reminder bestie: value is platform specific, so don't go assuming the encoding is the same everywhere β the struct is the stable part, the bits are not. iykyk.
π₯ SEE ALSO π₯
- Kernel file
./drivers/gpu/drm/xe/xe_pat.h xe_pat_init_early(9)xe_pat_init(9)xe_pat_index_get_coh_mode(9)xe_pat_index_get_comp_en(9)xe_pat_index_get_l3_policy(9)
go read those next, they're lowkey the sequel era of this page πβ¨
aaaand that's the whole thing! π this page came from ./drivers/gpu/drm/xe, dated October 2026, and it's filed under Kernel API Manual β so like, five years from now when you're googling this again, you know exactly where to find her. periodt. ππβ
π¦ 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