1fea25720SGraeme Russ #ifndef _ASM_X86_E820_H 2fea25720SGraeme Russ #define _ASM_X86_E820_H 3*24ff8e70SBin Meng 4fea25720SGraeme Russ #define E820MAX 128 /* number of entries in E820MAP */ 5fea25720SGraeme Russ 6fea25720SGraeme Russ #define E820_RAM 1 7fea25720SGraeme Russ #define E820_RESERVED 2 8fea25720SGraeme Russ #define E820_ACPI 3 9fea25720SGraeme Russ #define E820_NVS 4 10fea25720SGraeme Russ #define E820_UNUSABLE 5 11fea25720SGraeme Russ 12fea25720SGraeme Russ #ifndef __ASSEMBLY__ 13fea25720SGraeme Russ #include <linux/types.h> 14*24ff8e70SBin Meng 15fea25720SGraeme Russ struct e820entry { 16fea25720SGraeme Russ __u64 addr; /* start of memory segment */ 17fea25720SGraeme Russ __u64 size; /* size of memory segment */ 18fea25720SGraeme Russ __u32 type; /* type of memory segment */ 19fea25720SGraeme Russ } __attribute__((packed)); 20fea25720SGraeme Russ 21fea25720SGraeme Russ #define ISA_START_ADDRESS 0xa0000 22fea25720SGraeme Russ #define ISA_END_ADDRESS 0x100000 23fea25720SGraeme Russ 24fea25720SGraeme Russ #endif /* __ASSEMBLY__ */ 25fea25720SGraeme Russ 26fea25720SGraeme Russ #endif /* _ASM_X86_E820_H */ 27