Issuing Undi Commands - Intel Extensible Firmware Interface Specification

Intel extensible firmware interface specification
Table of Contents

Advertisement

G.2.1.1

Issuing UNDI Commands

How commands are written and status is checked varies a little depending on the type of UNDI
(H/W or S/W) implementation being used. The command flowchart below is a high level diagram
on how commands are written to both H/W and S/W UNDI.
Step 1.
Fill in CDB(s). Commands may
be linked if supported by UNDI.
Step 2 (H/W UNDI)
Write physical address of first
CDB to CDBaddr register.
Step 3 (H/W UNDI)
Initiate command execution (write
to UNDI Command port).
Step 4 (H/W UNDI)
Wait for completion status. Can
be polled in separate thread or
interrupt driven, if supported by
UNDI.
Version 1.02
CDB
CDB
CDB
CDB
CDB
Step 5.
Issue more commands.
Figure G-3. Issuing UNDI Commands
12/12/00
32/64-bit UNDI Specification
Step 2 (S/W UNDI)
Push virtual address of first CDB
onto CPU stack.
Step 3 (S/W UNDI)
Initiate command execution (Call
S/W UNDI API entry point).
Step 4 (S/W UNDI)
Wait for completion status. Some
S/W UNDI implementations can
be polled or interrupt driven,
others will not return until
command execution completes.
383

Advertisement

Table of Contents
loading

Table of Contents