1 /* 2 * Copyright 2002-2005, Axel Dörfler, axeld@pinc-software.de. 3 * Distributed under the terms of the MIT License. 4 * 5 * Copyright 2001-2002, Travis Geiselbrecht. All rights reserved. 6 * Distributed under the terms of the NewOS License. 7 */ 8 #ifndef KERNEL_ARCH_VM_H 9 #define KERNEL_ARCH_VM_H 10 11 12 #include <vm.h> 13 #include <arch_vm.h> 14 15 16 #ifdef __cplusplus 17 extern "C" { 18 #endif 19 20 status_t arch_vm_init(struct kernel_args *args); 21 status_t arch_vm_init_post_area(struct kernel_args *args); 22 status_t arch_vm_init_end(struct kernel_args *args); 23 status_t arch_vm_init_post_modules(kernel_args *args); 24 void arch_vm_aspace_swap(vm_address_space *aspace); 25 bool arch_vm_supports_protection(uint32 protection); 26 27 status_t arch_vm_set_memory_type(vm_area *area, addr_t physicalBase, uint32 type); 28 void arch_vm_unset_memory_type(vm_area *area); 29 30 #ifdef __cplusplus 31 } 32 #endif 33 34 #endif /* KERNEL_ARCH_VM_H */ 35