Provide {get,set}_fbms() in basemem.h.
[people/xl0/gpxe.git] / src / arch / i386 / include / basemem.h
1 #ifndef _BASEMEM_H
2 #define _BASEMEM_H
3
4 /** @file
5  *
6  * Base memory allocation
7  *
8  */
9
10 #include <stdint.h>
11 #include <realmode.h>
12 #include <bios.h>
13
14 /**
15  * Read the BIOS free base memory counter
16  *
17  * @ret fbms            Free base memory counter (in kB)
18  */
19 static inline unsigned int get_fbms ( void ) {
20         uint16_t fbms;
21
22         get_real ( fbms, BDA_SEG, BDA_FBMS );
23         return fbms;
24 }
25
26 extern void set_fbms ( unsigned int new_fbms );
27
28 /* Actually in hidemem.c, but putting it here avoids polluting the
29  * architecture-independent include/hidemem.h.
30  */
31 extern void hide_basemem ( void );
32
33 #endif /* _BASEMEM_H */