Extensible Firmware Interface Specification
E-46 12/01/02 Version 1.10
//
// PXE_VOID Sync_Mem(UINT64 unq_id, UINT64 virtual,
// UINT32 size, UINT32 Direction, UINT64 mapped_addr);
//
// UNDI will pass the virtual and mapped addresses of a buffer
// This call will synchronize the contents of both the virtual
// and mapped buffers for the given Direction. This call does
// not do anything if both the virtual and mapped addresses
// point to the same physical memory.
//
// This field can be set to zero if there is no service
// available
//
UINT64 Sync_Mem;
// protocol driver can provide anything for this Unique_ID,
// UNDI remembers that as just a 64bit value assocaited to the
// interface specified by the ifnum and gives it back as a
// parameter to all the call-back routines when calling for
// that interface!
UINT64 Unique_ID;
} PXE_CPB_START;
#pragma pack()
#define TO_AND_FROM_DEVICE 0
#define FROM_DEVICE 1
#define TO_DEVICE 2
#define PXE_DELAY_MILLISECOND 1000
#define PXE_DELAY_SECOND 1000000
#define PXE_IO_READ 0
#define PXE_IO_WRITE 1
#define PXE_MEM_READ 2
#define PXE_MEM_WRITE 4