xref: /rk3399_rockchip-uboot/arch/x86/include/asm/e820.h (revision a69fdc7787bfa2f27eed74c2ee58c28ce932d502)
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 
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 
26*59ec719dSBin Meng /* Implementation defined function to install an e820 map */
27*59ec719dSBin Meng unsigned install_e820_map(unsigned max_entries, struct e820entry *);
28*59ec719dSBin Meng 
29fea25720SGraeme Russ #endif /* _ASM_X86_E820_H */
30