xref: /haiku/headers/private/kernel/boot/addr_range.h (revision 1acbe440b8dd798953bec31d18ee589aa3f71b73)
1 /*
2  * Copyright 2004-2007, Axel Dörfler, axeld@pinc-software.de. All rights reserved.
3  * Distributed under the terms of the MIT License.
4  */
5 #ifndef KERNEL_BOOT_ADDR_RANGE_H
6 #define KERNEL_BOOT_ADDR_RANGE_H
7 
8 
9 #include <SupportDefs.h>
10 
11 
12 typedef struct addr_range {
13 	addr_t start;
14 	addr_t size;
15 } addr_range;
16 
17 
18 #ifdef __cplusplus
19 extern "C" {
20 #endif
21 
22 status_t insert_address_range(addr_range *ranges, uint32 *_numRanges, uint32 maxRanges,
23 	addr_t start, uint32 size);
24 status_t remove_addr_range(addr_range *ranges, uint32 *_numRanges, uint32 maxRanges,
25 	addr_t start, uint32 size);
26 
27 status_t insert_physical_memory_range(addr_t start, uint32 size);
28 status_t insert_physical_allocated_range(addr_t start, uint32 size);
29 status_t insert_virtual_allocated_range(addr_t start, uint32 size);
30 
31 #ifdef __cplusplus
32 }
33 #endif
34 
35 #endif	/* KERNEL_BOOT_ADDR_RANGE_H */
36