Extensible Firmware Interface Specification
434 12/12/00 Version 1.02
G.4.8 Reset
This command resets the network adapter and re-initializes the UNDI with the same parameters
provided in the Initialize command. The transmit and receive queues are emptied and any pending
interrupts are cleared. Depending on the state of the OpFlags, the receive filters and external
interrupt enables may also be reset.
Resetting the network device may take up to four seconds and in some extreme cases (usually poor
cables) up to twenty seconds.
G.4.8.1 Issuing the Command
To issue a Reset command, create a CDB and fill it in as shows in the table below:
CDB Field How to initialize the CDB structure for a Reset command
OpCode PXE_OPCODE_RESET
OpFlags Set as needed.
CPBsize PXE_CPBSIZE_NOT_USED
DBsize PXE_DBSIZE_NOT_USED
CPBaddr PXE_CPBSIZE_NOT_USED
DBaddr PXE_DBSIZE_NOT_USED
StatCode PXE_STATCODE_INITIALIZE
StatFlags PXE_STATFLAGS_INITIALIZE
IFnum A valid interface number from zero to !PXE.IFcnt.
Control Set as needed.
OpFlags
Normally the settings of the receive filters and external interrupt enables are unchanged by the
Reset command. These two OpFlags will alter the operation of the Reset command.
PXE_OPFLAGS_RESET_DISABLE_INTERRUPTS
PXE_OPFLAGS_RESET_DISABLE_FILTERS
G.4.8.2 Waiting for the Command to Execute
Monitor the upper two bits (14 & 15) in the CDB.StatFlags field. Until these bits change to
report PXE_STATFLAGS_COMMAND_COMPLETE or PXE_STATFLAGS_COMMAND_FAILED,
the command has not been executed by the UNDI.
StatFlags Reason
COMMAND_COMPLETE Command completed successfully. UNDI and network device have been
reset. Check StatFlags.
COMMAND_FAILED Command failed. StatCode field contains error code.
COMMAND_QUEUED Command has been queued.
INITIALIZE Command has been not executed or queued.