3 #define E820MAP 0x2d0 /* our map */
4 #define E820MAX 128 /* number of entries in E820MAP */
5 #define E820NR 0x1e8 /* # entries in E820MAP */
8 #define E820_RESERVED 2
14 __u64 addr; /* start of memory segment */
15 __u64 size; /* size of memory segment */
16 __u32 type; /* type of memory segment */
17 } __attribute__((packed));
21 struct e820entry map[E820MAX];
24 extern struct e820map e820;
26 extern int e820_any_mapped(u64 start, u64 end, unsigned type);
27 extern int e820_all_mapped(u64 start, u64 end, unsigned type);
28 extern void add_memory_region(u64 start, u64 size, int type);
29 extern void e820_print_map(char *who);
30 extern int sanitize_e820_map(struct e820entry *biosmap, char *pnr_map);
31 extern int copy_e820_map(struct e820entry *biosmap, int nr_map);
32 extern u64 update_memory_range(u64 start, u64 size, unsigned old_type,
34 extern void update_e820(void);
35 extern void e820_setup_gap(void);
37 #endif /* __ASSEMBLY__ */
39 #define ISA_START_ADDRESS 0xa0000
40 #define ISA_END_ADDRESS 0x100000
42 #define BIOS_BEGIN 0x000a0000
43 #define BIOS_END 0x00100000
51 #endif /* __KERNEL__ */
53 #endif /* __ASM_E820_H */