diff options
Diffstat (limited to 'mem/vmap.c')
| -rw-r--r-- | mem/vmap.c | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/mem/vmap.c b/mem/vmap.c new file mode 100644 index 0000000..618b19e --- /dev/null +++ b/mem/vmap.c @@ -0,0 +1,26 @@ +#include "vmap.h" +#include "errors.h" + +usize mem_vmap_translate(MemVmap *inner, usize virt) { + if (inner->translate) + return inner->translate(inner, virt); + + return 0; +} + +int mem_vmap_map(MemVmap *inner, usize phys, usize virt, usize len, int flags) { + if (inner->map) + return inner->map(inner, phys, virt, len, flags); + + return MEM_VMAP_UNSUPPORTED; +} + +void mem_vmap_unmap(MemVmap *inner, usize virt, usize len) { + if (inner->unmap) + inner->unmap(inner, virt, len); +} + +void mem_vmap_switch_to(MemVmap *inner) { + if (inner->switch_to) + inner->switch_to(inner); +}
\ No newline at end of file |
