write_maar_pair(9)
π write_maar_pair(9) β like, the MAAR-pair-writing girlies' moment
okay so bestie, welcome to the Kernel API Manual page for write_maar_pair β it's a kernel function, it's giving low-level MIPS energy, and we're gonna get you through it together π«Ά
β¨ NAME β¨
write_maar_pair β literally just: write to a pair of MAARs π
πΈ SYNOPSIS πΈ
void write_maar_pair (unsigned idx , phys_addr_t lower , phys_addr_t
upper , unsigned attrs );
ik, the line break in the middle of phys_addr_t upper is a whole vibe of its own, but that's the signature, no cap. Keep it exactly like that π
π ARGUMENTS π
idxβ the index of the pair, fr. Think of it as "use MAARsidx*2&(idx*2)+1" β that's the exact arithmetic, iykyk. Soidx` is the pair number, not the raw register number, and it fans out into two registers. Slay πlowerβ the lowest address that the MAAR pair will affect. Must be aligned to a2^16byte boundary. Not optional, not negotiable, not a suggestion β aligned or nothing, bestie πupperβ the highest address that the MAAR pair will affect. Must be aligned to one byte before a2^16byte boundary. Yes, one byte before β that's the rule, don't come for me, I didn't write it πattrsβ the accessibility attributes to program, eg.MIPS_MAAR_S. And listen: theMIPS_MAAR_VL/MIPS_MAAR_VHattributes will automatically be set for you. You don't have to lift a finger, the kernel handles it πβ¨
π¦ DESCRIPTION π¦
So what does it actually do? It programs the pair of MAAR registers specified by idx so they apply the attributes specified by attrs to the range of addresses from lower to higher. That's the whole job, and honestly? She ate. π
Basically: you hand her a pair index, a lower bound, an upper bound and some attrs, and she wires that range up with those attributes. Main character energy for real π₯
π§ SEE ALSO π§
- Kernel file
./arch/mips/include/asm/maar.h platform_maar_init(9)maar_init(9)struct maar_config(9)maar_config(9)
like, go read those too, they're the friend group π
π real talk though: those alignment requirements onlowerandupperare hard requirements β respect the boundaries, bestie, or nothing good happens.
okay that's the whole page, mwah π this one ships from ./arch/mips/include/asm and it's dated October 2026 β periodt, stan, 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