diff options
Diffstat (limited to 'include/arch/x86_64/page.h')
-rw-r--r-- | include/arch/x86_64/page.h | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/include/arch/x86_64/page.h b/include/arch/x86_64/page.h index 7c6186a..910b898 100644 --- a/include/arch/x86_64/page.h +++ b/include/arch/x86_64/page.h @@ -36,13 +36,16 @@ typedef uint16_t pmli_t; #define PML_SHL(l) (((l) * 9) + 3) #define PML_I_FOR_LAYER(v, l) (((v) >> PML_SHL(l)) % 512) -uintptr_t vmem_ident_tophys(void *vptr); -void *vmem_phys_tovirt(uintptr_t pptr); -uintptr_t vmem_tophys_koff(uintptr_t v); +uintptr_t vptr_tophys(void *vptr); +uintptr_t vptr_tophys_koff(uintptr_t v); + +void *pptr_tovirt_ident(uintptr_t pptr); void *pmle_get_page(pmle_t entry); -uint8_t pmle_level(pmle_t entry); -int untyped_retype_page(objdir_entry_t *untyped_entry, void **dest_ptr); +void pml4_setup_init(void); +void pml4_setup(pmle_t *pml4); + +void pml4_get_path(uintptr_t vptr, uint8_t depth, uint16_t *path); #endif |