STRUCT UNIPHIER_CACHE_DATA(9)
π struct uniphier_cache_data(9) π
okay so bestie, this is a page straight outta the Kernel API Manual and it's literally about struct uniphier_cache_data β the UniPhier outer cache specific data. yes she's niche, yes she's iconic, let's get into it π
β¨ NAME β¨
struct uniphier_cache_data β UniPhier outer cache specific data π¦
β¨ SYNOPSIS β¨
struct uniphier_cache_data {
void __iomem *ctrl_base;
void __iomem *rev_base;
void __iomem *op_base;
void __iomem *way_ctrl_base;
u32 way_mask;
u32 nsets;
u32 line_size;
u32 range_op_max_size;
struct list_head list;
};
like, look at her. ten fields. all lowercase, all business π
β¨ Members β¨
okay so here's the member-by-member breakdown, no cap:
ctrl_baseβ the virtual base address of the control registers. like, the control room of the whole vibe ποΈrev_baseβ the virtual base address of the revision registers. this is where she tells you what version of herself she is β¨op_baseβ the virtual base address of the operation registers. the actual do-stuff zone π₯way_ctrl_baseβ the virtual address of the way control registers for this SoC revision. so she's revision-specific, main character energy only πway_maskβ each bit specifies if the way is present. one bit per way, present or not, periodt π§nsetsβ number of associativity sets. the math of it all πline_sizeβ line size in bytes. little number, big job πrange_op_max_sizeβ the max size that can be handled by a single range operation. that's her limit, respect it πlistβ list node to include this level in the whole cache hierarchy. she's in the group chat of cache levels, not just a lone wolf π«Ά
ngl bestie, this struct is basically a little ID card for one cache level: where her registers live, what revision she is, which ways are present, how many sets she's got, how big her lines are, how much a single range op can chew, and her node in the big hierarchy list.
β¨ SEE ALSO β¨
go read the actual kernel file, it ate: ./arch/arm/mm/cache-uniphier.c, plus __uniphier_cache_sync(9) and __uniphier_cache_maint_common(9) π
and that's the whole page, bestie!! this one lives under ./arch/arm/mm and the version vibe is October 2026 β mwah, slay, see you in the next manpage ππβ
π¦ 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