1 #ifndef _ASM_X86_E820_H 2 #define _ASM_X86_E820_H 3 4 #define E820MAX 128 /* number of entries in E820MAP */ 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 #define E820_COUNT 6 /* Number of types */ 12 13 #ifndef __ASSEMBLY__ 14 #include <linux/types.h> 15 16 struct e820_entry { 17 __u64 addr; /* start of memory segment */ 18 __u64 size; /* size of memory segment */ 19 __u32 type; /* type of memory segment */ 20 } __attribute__((packed)); 21 22 #define ISA_START_ADDRESS 0xa0000 23 #define ISA_END_ADDRESS 0x100000 24 25 /* Implementation defined function to install an e820 map */ 26 unsigned int install_e820_map(unsigned int max_entries, 27 struct e820_entry *); 28 #endif /* __ASSEMBLY__ */ 29 30 #endif /* _ASM_X86_E820_H */ 31