Replaced memsizes.c with smaller memmap.c, taking advantage of __data16,
[people/xl0/gpxe.git] / src / arch / i386 / include / memsizes.h
1 #ifndef MEMSIZES_H
2 #define MEMSIZES_H
3
4 #warning "This header is no longer functional; use memmap.h instead"
5
6 /*
7  * These structures seem to be very i386 (and, in fact, PCBIOS)
8  * specific, so I've moved them out of etherboot.h.
9  *
10  */
11
12 struct e820entry {
13         uint64_t addr;
14         uint64_t size;
15         uint32_t type;
16 #define E820_RAM        1
17 #define E820_RESERVED   2
18 #define E820_ACPI       3 /* usable as RAM once ACPI tables have been read */
19 #define E820_NVS        4
20 } __attribute__ (( packed ));
21 #define E820ENTRY_SIZE 20
22 #define E820MAX 32
23
24 struct meminfo {
25         uint16_t basememsize;
26         uint16_t pad;
27         uint32_t memsize;
28         uint32_t map_count;
29         struct e820entry map[E820MAX];
30 } __attribute__ (( packed ));
31
32 extern struct meminfo meminfo;
33
34 extern void get_memsizes ( void );
35
36 #endif /* MEMSIZES_H */