STRUCT WKUP_M3_MEM(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ 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_addr is void __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