Kevin O'Connor | c167e54 | 2015-09-29 09:40:46 -0400 | [diff] [blame^] | 1 | #ifndef __E820MAP_H |
| 2 | #define __E820MAP_H |
| 3 | |
| 4 | #include "types.h" // u64 |
| 5 | |
| 6 | #define E820_RAM 1 |
| 7 | #define E820_RESERVED 2 |
| 8 | #define E820_ACPI 3 |
| 9 | #define E820_NVS 4 |
| 10 | #define E820_UNUSABLE 5 |
| 11 | |
| 12 | struct e820entry { |
| 13 | u64 start; |
| 14 | u64 size; |
| 15 | u32 type; |
| 16 | }; |
| 17 | |
| 18 | void e820_add(u64 start, u64 size, u32 type); |
| 19 | void e820_remove(u64 start, u64 size); |
| 20 | void e820_prepboot(void); |
| 21 | |
| 22 | // e820 map storage |
| 23 | extern struct e820entry e820_list[]; |
| 24 | extern int e820_count; |
| 25 | |
| 26 | #endif // e820map.h |