xref: /haiku/headers/private/kernel/arch/vm_translation_map.h (revision 5d9e40fe9252c8f9c5e5e41594545bfa4419fcc7)
1 /*
2 ** Copyright 2001-2002, Travis Geiselbrecht. All rights reserved.
3 ** Distributed under the terms of the NewOS License.
4 */
5 #ifndef KERNEL_ARCH_VM_TRANSLATION_MAP_H
6 #define KERNEL_ARCH_VM_TRANSLATION_MAP_H
7 
8 
9 #include <vm_translation_map.h>
10 
11 
12 #ifdef __cplusplus
13 extern "C" {
14 #endif
15 
16 int vm_translation_map_create(vm_translation_map *new_map, bool kernel);
17 int vm_translation_map_module_init(struct kernel_args *ka);
18 int vm_translation_map_module_init2(struct kernel_args *ka);
19 void vm_translation_map_module_init_post_sem(struct kernel_args *ka);
20 // quick function to map a page in regardless of map context. Used in VM initialization,
21 // before most vm data structures exist
22 status_t vm_translation_map_quick_map(struct kernel_args *ka, addr_t va, addr_t pa,
23 	uint8 attributes, addr_t (*get_free_page)(struct kernel_args *));
24 
25 #ifdef __cplusplus
26 }
27 #endif
28 
29 #include <arch_vm_translation_map.h>
30 
31 #endif	/* KERNEL_ARCH_VM_TRANSLATION_MAP_H */
32 
33