From aaed3d50a84505b38f81e197e700212fa22cabc7 Mon Sep 17 00:00:00 2001 From: Michael Brown Date: Sat, 13 Jan 2007 23:38:33 +0000 Subject: 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. --- src/include/gpxe/hidemem.h | 28 +++------------------------- 1 file changed, 3 insertions(+), 25 deletions(-) (limited to 'src/include') 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 @@ -8,38 +8,16 @@ * */ -/** - * 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 */ -- cgit v1.2.3-55-g7522