diff options
| author | Michael Brown | 2007-01-14 00:38:33 +0100 |
|---|---|---|
| committer | Michael Brown | 2007-01-14 00:38:33 +0100 |
| commit | aaed3d50a84505b38f81e197e700212fa22cabc7 (patch) | |
| tree | a1c99d7d7ac40611358ead12417fcd2aa2a93cee /src/include/gpxe | |
| parent | Add some trace messages for important events (diff) | |
| download | ipxe-aaed3d50a84505b38f81e197e700212fa22cabc7.tar.gz ipxe-aaed3d50a84505b38f81e197e700212fa22cabc7.tar.xz ipxe-aaed3d50a84505b38f81e197e700212fa22cabc7.zip | |
Some operating systems get a nasty shock if a region of the E820 map seems
to start on a non-page boundary. Make life safer by rounding out our
edited regions.
Diffstat (limited to 'src/include/gpxe')
| -rw-r--r-- | src/include/gpxe/hidemem.h | 28 |
1 files changed, 3 insertions, 25 deletions
diff --git a/src/include/gpxe/hidemem.h b/src/include/gpxe/hidemem.h index 89109004c..547f88815 100644 --- a/src/include/gpxe/hidemem.h +++ b/src/include/gpxe/hidemem.h @@ -9,37 +9,15 @@ */ /** - * A hidden region of Etherboot - * - * This represents a region that will be edited out of the system's - * memory map. - * - * This structure is accessed by assembly code, so must not be - * changed. - */ -struct hidden_region { - /* Physical start address */ - physaddr_t start; - /* Physical end address */ - physaddr_t end; -}; - -/** * Unique IDs for hidden regions */ -enum { +enum hidemem_region_id { TEXT = 0, BASEMEM, EXTMEM, }; -extern struct hidden_region __data16_array ( hidden_regions, [] ); -#define hidden_regions __use_data16 ( hidden_regions ) - -static inline void hide_region ( unsigned int region, - physaddr_t start, physaddr_t end ) { - hidden_regions[region].start = start; - hidden_regions[region].end = end; -} +extern void hide_region ( unsigned int region_id, physaddr_t start, + physaddr_t end ); #endif /* _GPXE_HIDEMEM_H */ |
