STRUCT WKUP_M3_MEM(9)
β¨ struct wkup_m3_mem(9) β¨
okay bestie, so this is a page from the Kernel API Manual, section 9 β and it's about struct wkup_m3_mem, which is the WkupM3 internal memory structure π literally the little bookkeeping struct that keeps track of a chunk of memory the Wakeup M3 cares about. it's giving "tiny struct, big responsibilities" energy, ngl.
πΈ SYNOPSIS πΈ
here's the whole thing, character for character, no cap:
struct wkup_m3_mem {
void __iomem *cpu_addr;
phys_addr_t bus_addr;
u32 dev_addr;
size_t size;
};
four members, all business π
π Members π
cpu_addrβ the MPU virtual address of the memory region. yeah, this is the one your CPU-side code actually dereferences π«Άbus_addrβ the bus address used to access the memory region. lowkey the "how do I get there from the bus" address πβ¨dev_addrβ the device address from the Wakeup M3 view π like, the address as the Wakeup M3 itself sees it. main character perspective, fr fr.sizeβ size of the memory region. how much memory we're talking about, periodt π
π¦ SEE ALSO π¦
- Kernel file
./drivers/remoteproc/wkup_m3_rproc.c struct wkup_m3_rproc(9)
π friendly reminder:cpu_addrisvoid __iomem *, so handle it with the proper kernel I/O accessors β don't just go dereferencing it all willy-nilly, bestie π
so yeah, that's the whole page, it's short and iconic and I'm obsessed with how tidy it is β¨ go read struct wkup_m3_rproc(9) next if you want the rest of the lore, iykyk π§
source: ./drivers/remoteproc β dated October 2026 π
slay, that's a wrap! π
π¦ 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