xref: /openbmc/u-boot/arch/x86/include/asm/e820.h (revision 5512f5cc)
1fea25720SGraeme Russ #ifndef _ASM_X86_E820_H
2fea25720SGraeme Russ #define _ASM_X86_E820_H
324ff8e70SBin 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>
1424ff8e70SBin Meng 
15*45519924SBin Meng struct e820_entry {
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 
2659ec719dSBin Meng /* Implementation defined function to install an e820 map */
2787af71c2SBin Meng unsigned int install_e820_map(unsigned int max_entries,
28*45519924SBin Meng 			      struct e820_entry *);
2959ec719dSBin Meng 
30fea25720SGraeme Russ #endif /* _ASM_X86_E820_H */
31