19 for (
size_t i = 0; i < VOXIA_PHYS_MAX_WINDOW_COUNT; i++) {
30 for (
size_t i = 0; i < VOXIA_PHYS_MAX_WINDOW_COUNT; i++) {
55 serial_trace(
"[ERROR] mem_create_physwindow: No available physical "
61 for (
size_t i = 0; i < VOXIA_PHYS_MAX_WINDOW_COUNT; i++) {
69 serial_trace(
"[WARNING] mem_release_physwindow: Virtual address 0x%x "
70 "not found in physical "
page_t paging_get_highest_page_map(void)
volatile uintptr_t * page_t
mem_physwindow_status_t mem_release_physwindow(uintptr_t virt_addr)
void paging_physwindow_mmap(page_t page_dir, uint64_t virt, uint64_t phys, int flags)
mem_physwindow_status_t mem_create_physwindow(uintptr_t phys_addr, uintptr_t *virt_addr, mem_physwindow_flag_t flag)
static mem_physwindow_t physical_memory_windows[VOXIA_PHYS_MAX_WINDOW_COUNT]
mem_physwindow_t * mem_resolve_physwindow(uintptr_t virt_addr)
resolve a physical memory window by virtual address
int mem_physwindow_status_t
int mem_physwindow_flag_t
@ PHYS_WINDOW_STATUS_NOT_FOUND
#define serial_trace(...)
@ mem_vma_phys_window_start