E.4.2 get state, E.4.2.1 issuing the command – Intel Extensible Firmware Interface User Manual

Page 907

Advertising
background image

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

Get State

and

Start

commands.

Started: A started UNDI is in use. A started UNDI will accept Get State,

Stop

,

Get Init Info

, and

Initialize

commands.

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

Advertising