blob: e7d94ee651e6613caa8f8e28cbbbf03a2f764b3b [file] [log] [blame]
#ifndef __E820MAP_H
#define __E820MAP_H
#include "types.h" // u64
#define E820_RAM 1
#define E820_RESERVED 2
#define E820_ACPI 3
#define E820_NVS 4
#define E820_UNUSABLE 5
struct e820entry {
u64 start;
u64 size;
u32 type;
};
void add_e820(u64 start, u64 size, u32 type);
void e820_remove(u64 start, u64 size);
void memmap_prepboot(void);
// A typical OS page size
#define PAGE_SIZE 4096
// e820 map storage
extern struct e820entry e820_list[];
extern int e820_count;
#endif // e820map.h