Intel Extensible Firmware Interface User Manual
Page 891

32/64-Bit UNDI Specification
Version 1.10
12/01/02
E-25
//*******************************************************
// UNDI NvData
//*******************************************************
// Select the type of nonvolatile data operation.
#define
PXE_OPFLAGS_NVDATA_OPMASK 0x0001
#define
PXE_OPFLAGS_NVDATA_READ
0x0000
#define
PXE_OPFLAGS_NVDATA_WRITE
0x0001
//*******************************************************
// UNDI Get Status
//*******************************************************
// Return current interrupt status. This will also clear any
// interrupts that are currently set. This can be used in a
// polling routine. The interrupt flags are still set and
// cleared even when the interrupts are disabled.
#define
PXE_OPFLAGS_GET_INTERRUPT_STATUS
0x0001
// Return list of transmitted buffers for recycling. Transmit
// buffers must not be changed or unallocated until they have
// recycled. After issuing a transmit command, wait for a
// transmit complete interrupt. When a transmit complete
// interrupt is received, read the transmitted buffers. Do not
// plan on getting one buffer per interrupt. Some NICs and UNDIs
// may transmit multiple buffers per interrupt.
#define
PXE_OPFLAGS_GET_TRANSMITTED_BUFFERS
0x0002
//*******************************************************
// UNDI Fill Header
//*******************************************************
#define PXE_OPFLAGS_FILL_HEADER_OPMASK
0x0001
#define
PXE_OPFLAGS_FILL_HEADER_FRAGMENTED
0x0001
#define
PXE_OPFLAGS_FILL_HEADER_WHOLE
0x0000
//*******************************************************
// UNDI Transmit
//*******************************************************
// S/W UNDI only. Return after the packet has been transmitted.
// A transmit complete interrupt will still be generated and the
// transmit buffer will have to be recycled.
#define
PXE_OPFLAGS_SWUNDI_TRANSMIT_OPMASK
0x0001
#define
PXE_OPFLAGS_TRANSMIT_BLOCK
0x0001
#define
PXE_OPFLAGS_TRANSMIT_DONT_BLOCK
0x0000