create_hyp_io_mappings(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… create_hyp_io_mappings β€” from the Kernel API Manual, bestie ✨

okay so picture this: you're in the <rainbow>Kernel API Manual</rainbow> and you found this little icon. It's literally called create_hyp_io_mappings, and what it does is map IO into both kernel and HYP. That's it. That's the whole vibe. Two worlds, one mapping, main character energy 🫢


✨ SYNOPSIS ✨

int create_hyp_io_mappings (phys_addr_t phys_addr , size_t size , void
__iomem **kaddr , void __iomem **haddr );

she takes four things and returns an int, no cap πŸ’–


πŸŽ€ ARGUMENTS πŸŽ€

  • phys_addr β€” the physical start address that gets mapped. like, where the actual hardware lives, periodt πŸ“
  • size β€” size of the region being mapped. how much we're taking, bestie πŸ“
  • kaddr β€” Kernel VA for this mapping. one address, for the kernel side 🌸
  • haddr β€” HYP VA for this mapping. and the other one, for the HYP side πŸ¦‹
not me re-reading this like yes, both kaddr and haddr are pointers-to-pointers (void __iomem **) β€” that detail matters, don't @ me πŸ’€

πŸ‘‘ SEE ALSO πŸ‘‘

Kernel file ./arch/arm64/kvm/mmu.c β€” and also, the whole friend group, fr fr:


and that's the page, bestie πŸ’œ sourced from ./arch/arm64/kvm, dated October 2026 β€” iconic of her, honestly. go map some IO πŸ§šβ€β™€οΈβœ¨

πŸ“¦ where this page comes from