E.4.2 get state, E.4.2.1 issuing the command – Intel Extensible Firmware Interface User Manual
Page 907
32/64-Bit UNDI Specification
Version 1.10
12/01/02
E-41
E.4.2 Get
State
This command is used to determine the operational state of the UNDI. An UNDI has three possible
operational states:
Stopped: A stopped UNDI is free for the taking. When all interface numbers (IFnum)
for a particular S/W UNDI are stopped, that S/W UNDI image can be relocated or
removed. A stopped UNDI will accept
commands.
Started: A started UNDI is in use. A started UNDI will accept Get State,
, and
Initialized: An initialized UNDI is in used. An initialized UNDI will accept all
commands except: Start, Stop, and Initialize.
Drivers, NBPs, and applications should not use UNDIs that are already started or initialized.
No other operational checks are made by this command. If this is a S/W UNDI, the
PXE_START_CPB.Delay()
and
PXE_START_CPB.Virt2Phys()
callbacks will
not be used.
E.4.2.1
Issuing the Command
To issue a Get State command, create a CDB and fill it in as shown in the table below:
CDB Field
How to initialize the CDB structure for a Get State command
OpCode
PXE_OPCODE_GET_STATE
OpFlags
PXE_OPFLAGS_NOT_USED
CPBsize
PXE_CPBSIZE_NOT_USED
DBsize
PXE_DBSIZE_NOT_USED
CPBaddr
PXE_CPBADDR_NOT_USED
DBaddr
PXE_DBADDR_NOT_USED
StatCode
PXE_STATCODE_INITIALIZE
StatFlags
PXE_STATFLAGS_INITIALIZE
IFnum
A valid interface number from zero to
!PXE.IFcnt
Control
Set as needed