diff options
Diffstat (limited to 'sys/inc/mu/mmu.h')
| -rw-r--r-- | sys/inc/mu/mmu.h | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/sys/inc/mu/mmu.h b/sys/inc/mu/mmu.h index ce52376..da2a286 100644 --- a/sys/inc/mu/mmu.h +++ b/sys/inc/mu/mmu.h @@ -30,10 +30,31 @@ #ifndef _MU_PMAP_H_ #define _MU_PMAP_H_ 1 +#include <sys/mman.h> #include <sys/types.h> #include <sys/cdefs.h> #include <md/vas.h> /* shared */ +typedef enum { + PAGESIZE_4K, +} pagesize_t; + +/* + * Create a virtual to physical mapping of a single + * page of memory with a specific page size and specific + * protection flags. + */ +__strong int mu_pmap_map( + struct mmu_vas *vas, uintptr_t pa, uintptr_t va, + uint16_t prot, pagesize_t ps +); + +/* + * Copy the current VAS leaving the user-side + * zeroed + */ +__strong int mu_pmap_forkvas(struct mmu_vas *result); + /* * Read the currently in-use virtual address space * structure |
