xref: /haiku/headers/private/kernel/boot/platform/openfirmware/platform_arch.h (revision 13581b3d2a71545960b98fefebc5225b5bf29072)
1 /*
2 ** Copyright 2003, Axel Dörfler, axeld@pinc-software.de. All rights reserved.
3 ** Distributed under the terms of the MIT License.
4 */
5 #ifndef KERNEL_BOOT_PLATFORM_OPENFIRMWARE_ARCH_H
6 #define KERNEL_BOOT_PLATFORM_OPENFIRMWARE_ARCH_H
7 
8 
9 #include <SupportDefs.h>
10 
11 struct kernel_args;
12 
13 #ifdef __cplusplus
14 extern "C" {
15 #endif
16 
17 /* memory management */
18 
19 extern status_t arch_set_callback(void);
20 extern void *arch_mmu_allocate(void *address, size_t size, uint8 protection,
21 	bool exactAddress);
22 extern status_t arch_mmu_free(void *address, size_t size);
23 extern status_t arch_mmu_init(void);
24 
25 /* CPU */
26 
27 extern status_t boot_arch_cpu_init(void);
28 
29 /* kernel start */
30 
31 status_t arch_start_kernel(struct kernel_args *kernelArgs, addr_t kernelEntry,
32 	addr_t kernelStackTop);
33 
34 #ifdef __cplusplus
35 }
36 #endif
37 
38 #endif	/* KERNEL_BOOT_PLATFORM_OPENFIRMWARE_ARCH_H */
39