blob: 2b168802a2002cd83e7b777659a2a0a26632246f (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
#include "memory.h"
#include "boot.h"
uintptr_t
pm_tovirt(physptr_t phys)
{
if(phys < (1 * GiB))
return (uintptr_t)(phys + PHYSMAP_MEMORY_BASE);
kpanic("Missing impl for physical addresses > 1GiB (%#016X)\n",
phys);
}
physptr_t
vm_tophys(uintptr_t virt)
{
return vm_mapping_get(virt).phys;
}
physptr_t
vm_tophys_koff(uintptr_t virt)
{
return (virt - _kernel_virtual_base) + boot_kernel_physical_address;
}
|