Home | History | Annotate | Download | only in gpxe
      1 #ifndef _GPXE_MEMMAP_H
      2 #define _GPXE_MEMMAP_H
      3 
      4 #include <stdint.h>
      5 
      6 /**
      7  * @file
      8  *
      9  * Memory mapping
     10  *
     11  */
     12 
     13 FILE_LICENCE ( GPL2_OR_LATER );
     14 
     15 /** A usable memory region */
     16 struct memory_region {
     17 	/** Physical start address */
     18 	uint64_t start;
     19 	/** Physical end address */
     20 	uint64_t end;
     21 };
     22 
     23 /** Maximum number of memory regions we expect to encounter */
     24 #define MAX_MEMORY_REGIONS 8
     25 
     26 /** A memory map */
     27 struct memory_map {
     28 	/** Memory regions */
     29 	struct memory_region regions[MAX_MEMORY_REGIONS];
     30 	/** Number of used regions */
     31 	unsigned int count;
     32 };
     33 
     34 extern void get_memmap ( struct memory_map *memmap );
     35 
     36 #endif /* _GPXE_MEMMAP_H */
     37