summaryrefslogtreecommitdiff
path: root/mm/src/libultra/os/virtualtophysical.c
blob: 864f54eb863952d07edcee85e09a340a7ae892b2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
#include "ultra64.h"
#include "libc/stdint.h"

uintptr_t osVirtualToPhysical(void* addr) {
    if (IS_KSEG0(addr)) {
        return K0_TO_PHYS(addr);
    } else if (IS_KSEG1(addr)) {
        return K1_TO_PHYS(addr);
    } else {
        return __osProbeTLB(addr);
    }
}