Extensible Firmware Interface Specification
390 12/12/00 Version 1.02
G.3.2 Miscellaneous Macros
G.3.2.1 Miscellaneous
#define PXE_CPBSIZE_NOT_USED 0 // zero
#define PXE_DBSIZE_NOT_USED 0 // zero
#define PXE_CPBADDR_NOT_USED (PXE_UINT64)0 // zero
#define PXE_DBADDR_NOT_USED (PXE_UINT64)0 // zero
G.3.3 Portability Types
The examples given below are just that, examples. The actual typedef instructions used in a new
implementation may vary depending on the compiler and processor architecture.
The storage sizes defined in this section are critical for PXE module inter-operation. All of the
portability typedefs define little endian (Intel format) storage. The least significant byte is stored in
the lowest memory address and the most significant byte is stored in the highest memory address.
UINT64
UINT32
UINT16
UINT8
MSBLSB
0x00 0x070x060x050x040x030x020x01
Figure G-5. Storage Types
G.3.3.1 PXE_CONST
The const type does not allocate storage. This type is a modifier that is used to help the compiler
optimize parameters that do not change across function calls.
#define PXE_CONST const
G.3.3.2 PXE_VOLATILE
The volatile type does not allocate storage. This type is a modifier that is used to help the compiler
deal with variables that can be changed by external procedures or hardware events.
#define PXE_VOLATILE volatile